Direct addressed caches for reduced power consumption
Emmett Witchel, Samuel Larsen, C. Scott Ananian, Krste Asanović · 2001
A direct addressed cache is a hardware-software design for an energy-efficient microprocessor data cache. Direct addressing allows software to access cache data without a hardware cache tag check. These tag-unchecked loads and stores save the energy of a tag check when the compiler can guarantee an access will be to the same line as an earlier access. We have added support for tag-unchecked loads and stores to C and Java compilers. For Mediabench C programs, the compiler eliminates 16--76% of data cache tag accesses, with half of the benchmarks avoiding over 40% of the data tag checks. For SPECjvm98 Java programs, the compiler eliminates 18--63% of data cache tag checks. These tag check reductions translate into data cache energy savings of 9--40%, and overall processor and cache energy savings of 2--8%. 1.