The ZCache: Decoupling Ways and Associativity
- 1 December 2010
- conference paper
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE) in 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture
- p. 187-198
- https://doi.org/10.1109/micro.2010.20
Abstract
The ever-increasing importance of main memory latency and bandwidth is pushing CMPs towards caches with higher capacity and associativity. Associativity is typically improved by increasing the number of ways. This reduces conflict misses, but increases hit latency and energy, placing a stringent trade-off on cache design. We present the zcache, a cache design that allows much higher associativity than the number of physical ways (e.g. a 64-associative cache with 4 ways). The zcache draws on previous research on skew-associative caches and cuckoo hashing. Hits, the common case, require a single lookup, incurring the latency and energy costs of a cache with a very low number of ways. On a miss, additional tag lookups happen off the critical path, yielding an arbitrarily large number of replacement candidates for the incoming block. Unlike conventional designs, the zcache provides associativity by increasing the number of replacement candidates, but not the number of cache ways. To understand the implications of this approach, we develop a general analysis framework that allows to compare associativity across different cache designs (e.g. a set-associative cache and a zcache) by representing associativity as a probability distribution. We use this framework to show that for zcaches, associativity depends only on the number of replacement candidates, and is independent of other factors (such as the number of cache ways or the workload). We also show that, for the same number of replacement candidates, the associativity of a zcache is superior than that of a set-associative cache for most workloads. Finally, we perform detailed simulations of multithreaded and multiprogrammed workloads on a large-scale CMP with zcache as the last-level cache. We show that zcaches provide higher performance and better energy efficiency than conventional caches without incurring the overheads of designs with a large number of ways.Keywords
This publication has 36 references indexed in Scilit:
- A 40nm 16-core 128-thread CMT SPARC SoC processorPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2010
- McPATPublished by Association for Computing Machinery (ACM) ,2009
- Adaptive line placement with the set balancing cachePublished by Association for Computing Machinery (ACM) ,2009
- ECMonPublished by Association for Computing Machinery (ACM) ,2009
- Optimizing NUCA Organizations and Wiring Alternatives for Large Caches with CACTI 6.0Published by Institute of Electrical and Electronics Engineers (IEEE) ,2007
- Implementing Signatures for Transactional MemoryPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2007
- PinPublished by Association for Computing Machinery (ACM) ,2005
- The V-Way CacheACM SIGARCH Computer Architecture News, 2005
- Predictive sequential associative cachePublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A case for two-way skewed-associative cachesPublished by Association for Computing Machinery (ACM) ,1993