Modern distributed file systems rely on uncoordinated, per node page caches that replicate hot data locally across the cluster. While ensuring fast local access, this architecture underutilizes aggregate cluster DRAM capacity through massive data redundancy and incurs prohibitive coherence overhead via heavyweight, lock-based protocols. In this paper, we focus on the design of a distributed page cache that treats the entire cluster's main memory as a single cache budget while preserving standard file-system interfaces and semantics. We present Distributed Page Cache (DPC), an OS-level, distributed page cache built on top of Compute Express Link (CXL) 3.0 memory semantics. DPC enforces a single-copy invariant at page granularity: each file page has exactly one owner node holding the sole resident DRAM copy, and other nodes access it via CXL-based remote mappings rather than creating replicas of the page. DPC is implemented end-to-end on a CXL-based emulation framework that models multi-host CXL 3.0 memory fabrics, enabling detailed evaluation in the absence of widespread hardware. Across real-world and representative data-sharing workloads, DPC delivers speedups of up to 12.4X, with a geometric-mean speedup of 5.6X.
翻译:现代分布式文件系统依赖于非协调的、每节点页面缓存,这些缓存将热点数据在集群内本地复制。虽然这种方式保证了快速的本地访问,但该架构通过大量的数据冗余导致集群总DRAM容量利用率不足,并且通过基于锁的重型协议带来了高昂的一致性开销。在本文中,我们聚焦于一种分布式页面缓存的设计,该缓存将整个集群的主内存视为单一缓存预算,同时保留标准文件系统接口和语义。我们提出了分布式页面缓存(DPC),这是一个基于Compute Express Link(CXL)3.0内存语义构建的OS级分布式页面缓存。DPC在页面粒度上强制实施单副本不变性:每个文件页面恰好有一个拥有唯一驻留DRAM副本的所有者节点,其他节点通过基于CXL的远程映射访问该页面,而不是创建页面副本。DPC在一个基于CXL的仿真框架上进行了端到端实现,该框架模拟了多主机CXL 3.0内存结构,使得在缺乏广泛硬件的情况下能够进行详细评估。在真实世界和代表性的数据共享工作负载中,DPC实现了高达12.4倍的加速比,几何平均加速比为5.6倍。