Exploiting Core Working Sets to Filter the L1 Cache with Random Sampling

Yoav Etsion, Dror G. Feitelson
2012 IEEE transactions on computers  
Locality is often characterized by working sets, defined by Denning as the set of distinct addresses referenced within a certain window of time. This definition ignores the fact that dramatic differences exist between the usage patterns of frequently used data and transient data. We therefore propose to extend Denning's definition with that of core working sets, which identify blocks that are used most frequently and for the longest time. The concept of a core motivates the design of dual cache
more » ... structures that provide special treatment for the core. In particular, we present a probabilistic locality predictor for L1 caches that leverages the skewed popularity of blocks to distinguish transient cache insertions from more persistent ones. We further present a dual L1 design that inserts only frequently used blocks into a low-latency, lowpower, direct-mapped main cache, while serving others from a small fully-associative filter. To reduce the prohibitive cost of such a filter, we present a content addressable memory design that eliminates most of the costly lookups using a small auxiliary lookup table. The proposed design enables a 16K direct-mapped L1 cache, augmented with a small 2K filter, to outperform a 32K 4-way cache, while at the same time consume 70%-80% less dynamic power and 40% less static power.
doi:10.1109/tc.2011.197 fatcat:3bi4e2h6vfg7flvq5wwmiosrjy