• DocumentCode
    2573003
  • Title

    Using the compiler to improve cache replacement decisions

  • Author

    Wang, Zhenlin ; McKinley, Kathryn S. ; Rosenberg, Arnold L. ; Weems, Charles C.

  • Author_Institution
    Dept. of Comput. Sci., Massachusetts Univ., Amherst, MA, USA
  • fYear
    2002
  • fDate
    2002
  • Firstpage
    199
  • Lastpage
    208
  • Abstract
    Memory performance is increasingly determining microprocessor performance and technology trends are exacerbating this problem. Most architectures use set-associative caches with LRU replacement policies to combine fast access with relatively low miss rates. To improve replacement decisions in set-associative caches, we develop a new set of compiler algorithms that predict which data will and will not be reused and provide these hints to the architecture. We prove that the hints either match or improve hit rates over LRU. We describe a practical one-bit cache-line tag implementation of our algorithm, called evict-me. On a cache replacement, the architecture will replace a line for which the evict-me bit is set, or if none is set, it will use the LRU bits. We implement our compiler analysis and its output in the Scale compiler. On a variety of scientific programs, using the evict-me algorithm in both the level 1 and 2 caches improves simulated cycle times by up to 34% over the LRU policy by increasing hit rates. In addition, a combination of simple hardware prefetching and evict-me works together to further improve performance.
  • Keywords
    cache storage; content-addressable storage; performance evaluation; program compilers; storage management; LRU replacement policies; Scale compiler; cache replacement decisions; evict-me; hardware prefetching; hit rates; memory performance; microprocessor performance; one-bit cache-line tag implementation; program compiler; scientific programs; set-associative cache; Bridges; Clocks; Computer architecture; Computer science; Delay; Hardware; Microarchitecture; Microprocessors; Prediction algorithms; Prefetching;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Architectures and Compilation Techniques, 2002. Proceedings. 2002 International Conference on
  • ISSN
    1089-795X
  • Print_ISBN
    0-7695-1620-3
  • Type

    conf

  • DOI
    10.1109/PACT.2002.1106018
  • Filename
    1106018