Title :
False sharing and spatial locality in multiprocessor caches
Author :
Torrellas, Josep ; Lam, Monica S. ; Hennessy, John L.
Author_Institution :
Centre for Supercomputing Res. & Dev. and Comput. Sci., Illinois Univ., Champaign, IL, USA
fDate :
6/1/1994 12:00:00 AM
Abstract :
The performance of the data cache in shared-memory multiprocessors has been shown to be different from that in uniprocessors. In particular, cache miss rates in multiprocessors do not show the sharp drop typical of uniprocessors when the size of the cache block increases. The resulting high cache miss rate is a cause of concern, since it can significantly limit the performance of multiprocessors. Some researchers have speculated that this effect is due to false sharing, the coherence transactions that result when different processors update different words of the same cache block in an interleaved fashion. While the analysis of six applications in the paper confirms that false sharing has a significant impact on the miss rate, the measurements also show that poor spatial locality among accesses to shared data has an even larger impact. To mitigate false sharing and to enhance spatial locality, we optimize the layout of shared data in cache blocks in a programmer-transparent manner. We show that this approach can reduce the number of misses on shared data by about 10% on average
Keywords :
buffer storage; performance evaluation; program compilers; shared memory systems; cache block; cache miss rates; coherence transactions; data cache; false sharing; interleaved fashion; multiprocessor caches; programmer-transparent method; shared data; shared-memory multiprocessors; spatial locality; Cache memory; Cache storage; Computer science education; Delay; Hardware; Interleaved codes; Large-scale systems; Optimizing compilers; Pensions; Programming profession;
Journal_Title :
Computers, IEEE Transactions on