arXiv · 2107.05453
Neat: Low-Complexity, Efficient On-Chip Cache Coherence
Abstract
Cache coherence protocols such as MESI that use writer-initiated invalidation have high complexity and sometimes have poor performance and energy usage, especially under false sharing. Such protocols require numerous transient states, a shared directory, and support for core-to-core communication, while also suffering under false sharing. An alternative to MESI's writer-initiated invalidation is self-invalidation, which achieves lower complexity than MESI but adds high performance costs or relies on programmer annotations or specific data access patterns. This paper presents Neat, a low-complexity, efficient cache coherence protocol. Neat uses self-invalidation, thus avoiding MESI's transient states, directory, and core-to-core communication requirements. Neat uses novel mechanisms that effectively avoid many unnecessary self-invalidations. An evaluation shows that Neat is simple and has lower verification complexity than the MESI protocol. Neat not only outperforms state-of-the-art self-invalidation protocols, but its performance and energy consumption are comparable to MESI's, and it outperforms MESI under false sharing.
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Rui Zhang, Swarnendu Biswas, Vignesh Balaji, Michael D. Bond, Brandon Lucia. 2021-07-12. Neat: Low-Complexity, Efficient On-Chip Cache Coherence. https://arxiv.org/abs/2107.05453
Cite the original work for its findings. Save a collection to share your selection of sources.