一句话:提出基于 CXL 共享内存的远程 fork,实现近零序列化、零拷贝的跨节点进程克隆。
随着 Compute Express Link(CXL)互连提供共享与分布式内存,系统软件接口需要重新设计。本文研究利用 CXL 附加共享内存实现集群级进程克隆的远程 fork 接口。CXLfork 通过全局共享的 CXL 内存对进程状态进行集群级去重,实现接近零序列化和零拷贝的跨节点进程克隆,并支持本地内存与 CXL 内存之间的细粒度状态分层。作者基于 CXLfork 构建了面向 CXL Fabric 上无服务器函数的水平自动扩缩器 CXL-porter,以降低冷启动开销而不牺牲本地内存。评估显示,其恢复延迟接近本地 fork,平均优于现有实践 2.26 倍,并将本地内存消耗平均降低 87%。
The shared and distributed memory capabilities of the emerging Compute Express Link (CXL) interconnect urge us to rethink the traditional interfaces of system software. In this paper, we explore one such interface: remote fork using CXL-attached shared memory for cluster-wide process cloning. We present CXLfork, a remote fork interface that realizes close to zero-serialization, zero-copy process cloning across nodes over CXL fabrics. CXLfork utilizes globally-shared CXL memory for cluster-wide deduplication of process states. It also enables fine-grained control of state tiering between local and CXL memory. We use CXLfork to develop CXL-porter, an efficient horizontal autoscaler for serverless functions deployed on CXL fabrics. CXLfork minimizes cold-start overhead without sacrificing local memory. CXLfork attains restore latency close to that of a local fork, outperforming state-of-practice by 2.26x on average, and reducing local memory consumption by 87% on average.
@inproceedings{AlvertiPOJXT25,
title = {CXLfork: Fast Remote Fork over CXL Fabrics},
author = {Chloe Alverti and Stratos Psomadakis and Burak Ocalan and Shashwat Jaiswal and Tianyin Xu and Josep Torrellas},
booktitle = {ASPLOS},
year = {2025},
doi = {10.1145/3676641.3715988}
}