Factors Affecting False Sharing on Page-Granularity Cache-Coherent Shared-Memory Multiprocessors
Vivek Khera · 1994
E#ciently supporting a shared memory paradigm in a large-scale multiprocessor generally involves some form of data caching. One of the drawbacks of caching shared data is the cost of keeping the multiple copies coherent. One source of unnecessary coherency overhead is caused by a problem known as false sharing . Unfortunately, the lack of a precise, universally accepted, definition of false sharing hinders research to detect and eliminate the problem. We articulate our intuitive notion of false sharing and address the problems encountered in previous attempts at defining false sharing. We motivate the importance of a concrete measure by demonstrating that false sharing related coherence overhead comprises a significant portion of the coherence costs in real applications, especially when page-granularity coherence is required. An architecture-independent measure of the false sharing exhibited in a reference trace for cache lines of a specified size is proposed and evaluated experimental...