loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Proceedings of the 1999 ACM/IEEE conference on Supercomputing
Locality Optimizations for Multi-Level Caches
Portland, Oregon, USA
November 13-November 18
ISBN: 1-58113-091-0
Gabriel Rivera, University of Maryland
Chau-Wen Tseng, University of Maryland
Compiler transformations can significantly improve data locality of scientific programs. In this paper, we examine the impact of multi-level caches on data locality optimizations. We find nearly all the benefits can be achieved by simply targeting the L1 (primary) cache. Most locality transformations are unaffected because they improve reuse for all levels of the cache; however, some optimizations can be enhanced. Inter-variable padding can take advantage of modular arithmetic to eliminate conflict misses and preserve group reuse on multiple cache levels. Loop fusion can balance increasing group reuse for the L2 (secondary) cache at the expense of losing group reuse at the smaller L1 cache. Tiling for the L1 cache also exploits locality available in the L2 cache. Experiments show enhanced algorithms are able to reduce cache misses, but performance improvements are rarely significant. Our results indicate existing compiler optimizations are usually sufficient to achieve good performance for multi-level caches.
Citation:
Gabriel Rivera, Chau-Wen Tseng, "Locality Optimizations for Multi-Level Caches," sc, pp.2, Proceedings of the 1999 ACM/IEEE conference on Supercomputing, 1999
Usage of this product signifies your acceptance of the Terms of Use.