Token coherence
- 1 May 2003
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGARCH Computer Architecture News
- Vol. 31 (2) , 182-193
- https://doi.org/10.1145/871656.859640
Abstract
Many future shared-memory multiprocessor servers will both target commercial workloads and use highly-integrated "glueless" designs. Implementing low-latency cache coherence in these systems is difficult, because traditional approaches either add indirection for common cache-to-cache misses (directory protocols) or require a totally-ordered interconnect (traditional snooping protocols). Unfortunately, totally-ordered interconnects are difficult to implement in glueless designs. An ideal coherence protocol would avoid indirections and interconnect ordering; however, such an approach introduces numerous protocol races that are difficult to resolve.We propose a new coherence framework to enable such protocols by separating performance from correctness. A performance protocol can optimize for the common case (i.e., absence of races) and rely on the underlying correctness substrate to resolve races, provide safety, and prevent starvation. We call the combination Token Coherence, since it explicitly exchanges and counts tokens to control coherence permissions.This paper develops TokenB, a specific Token Coherence performance protocol that allows a glueless multiprocessor to both exploit a low-latency unordered interconnect (like directory protocols) and avoid indirection (like snooping protocols). Simulations using commercial workloads show that our new protocol can significantly outperform traditional snooping and directory protocols.Keywords
This publication has 22 references indexed in Scilit:
- Simulating a $2M commercial server on a $2K PCComputer, 2003
- Simics: A full system simulation platformComputer, 2002
- Starfire: extending the SMP envelopeIEEE Micro, 1998
- High-speed electrical signaling: overview and limitationsIEEE Micro, 1998
- The Mips R10000 superscalar microprocessorIEEE Micro, 1996
- Shared memory consistency models: a tutorialComputer, 1996
- Scalable cache consistency for hierarchically structured multiprocessorsThe Journal of Supercomputing, 1995
- Cooperative shared memoryACM Transactions on Computer Systems, 1993
- The KSR1Published by Association for Computing Machinery (ACM) ,1993
- Memory coherence in shared virtual memory systemsACM Transactions on Computer Systems, 1989