Skip to main content Skip to secondary navigation

Memory Consistency Model-Aware Cache Coherence for Heterogeneous Shared Memory Systems

Main content start

Speaker: Rachel Cleaveland, PhD Student, Stanford University
Date: February 7, 2024

Implementing cache-coherent shared memory in heterogeneous systems is difficult due to memory consistency model (MCM) mismatches among compute elements. In particular, what the system-wide MCM should be and how it should be enforced is not well-defined.

In this work, we posit that the C11 MCM, the seminal heterogeneous MCM, is a natural system-wide MCM choice for heterogeneous shared memory systems. Based on this philosophy, we propose an update-based cache coherence protocol, called MemGlue, which enforces a slight strengthening of the C11 MCM directly among a collection of interacting heterogeneous clusters.

Our MemGlue design has two important features. First, it is modular: a C11-compatible (homogeneous) cluster can “plug into” MemGlue without changes to its internal coherence protocol or MCM. Second, it is verifiable: one system-wide proof ensures that MemGlue upholds the C11 MCM  with respect to MemGlue messages exchanged by clusters, and per-cluster proofs ensure that MemGlue correctly maps relevant cluster operations onto MemGlue messages.

Presentation (pdf) (978.09 KB)

Memory Consistency Model-Aware Cache Coherence for Heterogeneous Shared Memory Systems
(Rachel Cleaveland, PhD Student, Stanford University)