A Compiler Approach for Reducing Data Cache Energy

W. Zhang, M. Karakoy, M. Kandemir, G. Chen

Research output: Contribution to conferencePaperpeer-review

15 Scopus citations


Silicon technology advances have made it possible to pack millions of transistors - switching at high clock speeds - on a single chip. While these advances bring unprecedented performance to electronic products, they pose difficult power/energy consumption problems. For example, large number of transistors in dense on-chip cache memories consume significant static (leakage) power even if the cache is not used by the current computation. While previous compiler research studied code and data restructuring for improving data cache performance, to our knowledge, there is no compiler-based study that targets data cache leakage power consumption. In this paper, we present code restructuring techniques for array-based and pointer-intensive applications for reducing data cache energy consumption. The idea is to let the compiler to analyze the code and insert instructions that turn off cache lines that keep variables not used by the current computation. This turning off does not destroy contents of a cache line, and waking up the cache line incurs very little overhead. Due to data locality, we find that at a given time only a small portion of the data cache needs to be active; the remaining part can be placed into a leakage-saving mode (state); i.e., they can be turned off. Our preliminary results indicate that the proposed strategy reduces the cache energy consumption significantly. We also show that several compiler optimizations increase the effectiveness of our strategy.

Original languageEnglish (US)
Number of pages10
StatePublished - 2003
Event2003 International Conference on Supercomputing - San Francisco, CA, United States
Duration: Jun 23 2003Jun 26 2003


Other2003 International Conference on Supercomputing
Country/TerritoryUnited States
CitySan Francisco, CA

All Science Journal Classification (ASJC) codes

  • Computer Science(all)


Dive into the research topics of 'A Compiler Approach for Reducing Data Cache Energy'. Together they form a unique fingerprint.

Cite this