SelectDirectory: A Selective Directory for Cache Coherence in Many-Core Architectures
Yuan Yao1,a, Guanhua Wang2,c, Zhiguo Ge3,e, Tulika Mitra2,d, Wenzhi Chen1,b and Naxin Zhang3,f
1College of Computer Science and Technology, Zhejiang University, China.
2School of Computing, National University of Singapore.
3Huawei International Pte. Ltd, Singapore.
As we move into many-core era fueled by Moore’s Law, it has become unprecedentedly challenging to provide the shared memory abstraction through directory-based cache coherence. The main difficulty is the high area and power overhead of the directory in tracking the presence of a memory block in all the private caches. Sparse directory offers relatively better design trade-offs by decoupling the coherence meta-data from the last-level cache (LLC); but still suffers from high area/power issues. In this work, we propose a compact directory design by exploiting the observation that a significant fraction of the memory blocks are temporarily exclusive in the cache hierarchy and hence only needs minimal sharer information. Inspired by this observation, we propose to further decouple the tag array from the coherence meta-data array in the sparse directory and allocate a sharer list only for the actively shared blocks. Experimental results reveal that our proposal, called SelectDirectory, can substantially save directory storage area and energy without sacrificing performance.
Full Text (PDF)