ASPLOS ’23, March 25–29, 2023, Vancouver, BC, Canada. DISTINGUISHED PAPER AWARD!
Huaicheng Li*^, Daniel S. Berger†‡, Lisa Hsu+, Daniel Ernst†, Pantea Zardoshti†, Stanko Novakovic°, Monish Shah†, Samir Rajadnya†, Scott Lee†, Ishwar Agarwal~, Mark D. Hill†§, Marcus Fontoura›, Ricardo Bianchini†
* Carnegie Mellon University
^ Virginia Tech
† Microsoft Azure
‡ U. Washington
° Google
~ Intel
§ U. Wisconsin-Madison
› Stone Co.
+ Unaffiliated
Public cloud providers seek to meet stringent performance requirements and low hardware cost. A key driver of performance and cost is main memory. Memory pooling promises to improve DRAM utilization and thereby reduce costs. However, pooling is challenging under cloud performance requirements. This paper proposes Pond, the first memory pooling system that both meets cloud performance goals and significantly reduces DRAM cost. Pond builds on the Compute Express Link (CXL) standard for load/store access to pool memory and two key insights. First, our analysis of cloud production traces shows that pooling across 8-16 sockets is enough to achieve most of the benefits. This enables a small-pool design with low access latency. Second, it is possible to create machine learning models that can accurately predict how much local and pool memory to allocate to a virtual machine (VM) to resemble same-NUMA-node memory performance. Our evaluation with 158 workloads shows that Pond reduces DRAM costs by 7% with performance within 1-5% of same-NUMA-node VM allocations.
KEYWORDS: Compute Express Link; CXL; memory disaggregation; memory pooling; datacenter; cloud computing.
FULL TR: pdf