usenix conference policies
False Sharing and its Effect on Shared Memory Performance
William J. Bolosky and Michael L. Scott, University of Rochester
False sharing occurs when processors in a shared-memory parallel system make references to different data objects within the same coherence block (cache line or page), thereby inducing "unnecessary" coherence operations. False sharing is widely believed to be a serious problem for parallel program performance, but a precise definition and quantification of the problem has proven to be elusive. We explain why. In the process, we present a variety of possible definitions for false sharing, and discuss the merits and drawbacks of each. Our discussion is based on experience gained during a four-year study of multiprocessor memory architecture and its effect on the behavior of applications in a sixteen-program suite. Using trace-based simulation, we present experimental evidence to support the claim that false sharing is a serious problem. Unfortunately, we find that the various computationally tractable approaches to quantifying the problem are either heuristic in nature, or fail to agree with intuition.
author = {William J. Bolosky and Michael L. Scott},
title = {False Sharing and its Effect on Shared Memory Performance},
booktitle = {USENIX Experiences with Distributed and Multiprocessor Systems (SEDMS IV)},
year = {1993},
address = {San Diego, CA},
url = {https://www.usenix.org/conference/sedms-iv/false-sharing-and-its-effect-shared-memory-performance},
publisher = {USENIX Association},
month = sep
}
connect with us