@inproceedings{008b789392c843fcbfdfce76457eb584,
title = "CXLfork: Fast Remote Fork over CXL Fabrics",
abstract = "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.",
keywords = "checkpoint restore, cold start, cxl, process forking, remote memory, serverless computing",
author = "Chloe Alverti and Stratos Psomadakis and Burak Ocalan and Shashwat Jaiswal and Tianyin Xu and Josep Torrellas",
note = "We thank the anonymous reviewers and the paper's shepherd, Pedro Fonseca, for their valuable comments. We also thank all the members of the i-acoma group at UIUC for their constant feedback. This work was supported in part by NSF under grants CNS 1956007 and CCF 2107470; by ACE, one of the seven centers in JUMP 2.0, a Semiconductor Research Corporation (SRC) program sponsored by DARPA; and by the IBM-Illinois Discovery Accelerator Institute.; 30th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2025 ; Conference date: 30-03-2025 Through 03-04-2025",
year = "2025",
month = mar,
day = "30",
doi = "10.1145/3676641.3715988",
language = "English (US)",
series = "International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS",
publisher = "Association for Computing Machinery",
pages = "210--226",
booktitle = "ASPLOS 2025 - Proceedings of the 30th ACM International Conference on Architectural Support for Programming Languages and Operating Systems",
address = "United States",
}