Scaling Unmodified Multithreaded Applications with Elastic CXL-based Distributed Shared Memory
Abstract
While CXL presents a promising hardware substrate for Distributed Shared Memory (DSM), seamlessly scaling multithreaded applications across multiple nodes remains a formidable challenge. Existing CXL-based DSMs fall short: they require manual code modifications to share non-heap data, employ rigid data placement policies that fail under diverse and dynamic workloads, and suffer from severe page-fault processing overheads in sub-microsecond () environments. We present xDSM, a full-space, elastic DSM system built over CXL that transparently scales unmodified multithreaded applications. To eliminate the burden of manual code rewrites, xDSM employs an OS-runtime co-design that establishes a globally coordinated address space, seamlessly sharing all memory segments. To mask CXL access penalties, xDSM abandons static placement rules in favor of a dynamic, latency-driven policy that actively balances data between local DRAM and CXL memory. Finally, to resolve the fundamental tension between high base-page fault overheads and severe huge-page false sharing, xDSM introduces spatial locality-aware elasticity, dynamically coalescing and splitting pages on the fly to amortize processing costs. Evaluated across diverse workloads using 15 system configurations, xDSM outperforms CXL-only baselines by 1.5 to 2.2 and state-of-the-art hybrid DSMs by 1.1 to 2.2, while achieving near-linear scalability.
Cite
@article{arxiv.2607.15569,
title = {Scaling Unmodified Multithreaded Applications with Elastic CXL-based Distributed Shared Memory},
author = {Guowei Liu and Kang Chen and Laiping Zhao and Yiming Li and Hanwen Liu and Chen Peng and Yichi Chen and Sheng Chen and Zhiyuan Su and Wenyu Qu},
journal= {arXiv preprint arXiv:2607.15569},
year = {2026}
}
Comments
15 pages, 8 figures