A Programming Model for Disaggregated Memory over CXL
Gal Assa, Moritz Lumme, Lucas B\"urgi, Michal Friedman, Ori Lahav

TL;DR
This paper introduces CXL0, a novel programming model for disaggregated memory over CXL, enabling reasoning about correctness, durability, and crash consistency in systems utilizing this emerging interconnect standard.
Contribution
CXL0 is the first programming model for concurrent programs over CXL, providing high-level abstractions, formal semantics, and transformations for durability and crash consistency.
Findings
CXL0 captures a wide range of CXL configurations.
Initial measurements on real hardware validate the model.
Transformation improves linearizable algorithms with durability.
Abstract
CXL (Compute Express Link) is an emerging open industry-standard interconnect between processing and memory devices that is expected to revolutionize the way systems are designed. It enables cache-coherent, shared memory pools in a disaggregated fashion at unprecedented scales, allowing algorithms to interact with various storage devices using simple loads and stores. While CXL unleashes unique opportunities, it also introduces challenges of data management and crash consistency. For example, CXL currently lacks an adequate programming model, making it impossible to reason about the correctness and behavior of systems on top. In this work, we present CXL0, the first programming model for concurrent programs over CXL. We propose a high-level abstraction for memory accesses and formally define operational semantics. We demonstrate that CXL0 captures a wide range of current and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
