Title :
Efficient, snoopless, System-on-Chip coherence
Author :
Kaxiras, Stefanos ; Ros, Alberto
Author_Institution :
Uppsala Univ., Uppsala, Sweden
Abstract :
Coherence in a System-on-Chip (SoC) introduces complexity and overhead (snooping caches/directory, state bits, invalidations, etc.) in exchange for a clean and uniform shared memory model. As it is typical today, a SoC comprises a variety of cores with local caches, accelerators with local memories, and some form of shared last-level cache (LLC), all interconnected with shared buses. We propose a very simple coherence protocol, fit for this environment, that eliminates L1 snooping and its associated complexity and costs (power). In essence, we remove all coherence decisions from local caches by simply determining at the LLC whether data are private or shared. This makes a write-through policy a practical and effective alternative to maintain coherence. In the local caches, we dynamically select between writeback for private data, or write-through for shared data. Self-invalidation of the shared data on synchronization points eliminates the need to snoop, with just a data-race-free guarantee from software. Our evaluation shows that this simple protocol outperforms a traditional snooping protocol while at the same time significantly reducing L1, shared cache, and bus energy consumption.
Keywords :
cache storage; system-on-chip; LLC; SoC; bus energy consumption; coherence decisions; coherence protocol; data self-invalidation; data-race-free guarantee; last-level cache; shared cache; shared memory model; snooping cache-directory; snooping protocol; state bits; synchronization points; system-on-chip coherence; write-through policy; Benchmark testing; Coherence; Hardware; Multicore processing; Protocols; Synchronization; System-on-a-chip;
Conference_Titel :
SOC Conference (SOCC), 2012 IEEE International
Conference_Location :
Niagara Falls, NY
Print_ISBN :
978-1-4673-1294-3
DOI :
10.1109/SOCC.2012.6398353