RC3: Consistency directed cache coherence for x86-64 with RC extensions

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

The recent convergence towards programming language based memory consistency models has sparked renewed interest in lazy cache coherence protocols. These protocols exploit synchronization information by enforcing coherence only at synchronization boundaries via self-invalidation. In effect, such protocols do not require sharer tracking which benefits scalability. On the downside, such protocols are only readily applicable to a restricted set of consistency models, such as Release Consistency (RC), which expose synchronization information explicitly. In particular, existing architectures with stricter consistency models (such as x86-64) cannot readily make use of lazy coherence protocols without either: changing the architecture’s consistency model to (a variant of) RC at the expense of backwards compatibility; or adapting the protocol to satisfy the stricter consistency model, thereby failing to benefit from synchronization information.

We show an approach for the x86-64 architecture, which is a compromise between the two. First, we propose a mechanism to convey synchronization information via a simple ISA extension, while retaining backwards compatibility with legacy codes and older microarchitectures. Second, we propose RC3, a scalable hardware cache coherence protocol for RCtso, the resulting memory consistency model. RC3 does not track sharers, and relies on self-invalidation on acquires. To satisfy RCtso efficiently, the protocol reduces self-invalidations transitively using per-L1 timestamps only. RC3 outperforms a conventional lazy RC protocol by 12%, achieving performance comparable to a MESI directory protocol for RC optimized programs. RC3’s storage overhead per cache line scales logarithmically with increasing core count, and reduces on-chip coherence storage overheads by 45% compared to a related approach specifically targeting TSO.
Original languageEnglish
Title of host publicationThe 24th International Conference on Parallel Architectures and Compilation Techniques (PACT 2015)
PublisherInstitute of Electrical and Electronics Engineers (IEEE)
Number of pages13
ISBN (Print)978-1-4673-9524-3
DOIs
Publication statusPublished - 19 Oct 2015

Fingerprint

Dive into the research topics of 'RC3: Consistency directed cache coherence for x86-64 with RC extensions'. Together they form a unique fingerprint.

Cite this