C3
CXL Coherence Controllers for Heterogeneous Architectures
Anatole Lefort (Technische Universität München)
David Schall (Technische Universität München)
Nicolò Carpentieri (Technische Universität München)
Julian Pritzi (Technische Universität München)
Soham Chakraborty (TU Delft - Electrical Engineering, Mathematics and Computer Science)
Nicolai Oswald (NVIDIA Corporation)
Pramod Bhatotia (Technische Universität München)
More Info
expand_more
Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.
Abstract
We introduce C3, a systematic methodology for designing Compute Express Link (CXL) coherence controllers, to overcome interoperability challenges that arise from the mismatch of coherence protocols and memory consistency models in heterogeneous CXL-connected systems. Crucially, CXL lacks a unified heterogeneous computing interface, which can lead to unpredictable and inconsistent behavior when multiple heterogeneous devices decide to share cache-coherent CXL memory. C3 acts as a pivotal interface between diverse heterogeneous compute units, bridging the semantic differences without necessitating disruptive changes to existing system architectures. Our approach hinges on two key principles: delegating memory operations across coherence domains and enforcing atomicity at domain boundaries, thereby preserving the native memory consistency model semantics of each unit. We implement C3 as a generic gem5 model and validate its correctness through exhaustive litmus testing. We also show that C3 incurs minimal performance overhead compared to unified native coherence protocols.
Files
File under embargo until 07-09-2026