Semeru: A Memory-Disaggregated Managed Runtime
Chenxi Wang, Haoran Ma, Shi Liu, Yuanqi Li, Zhenyuan Ruan, Khanh Nguyen, Michael D. Bond, Ravi Netravali, Miryung Kim, Guoqing Harry Xu
Abstract
Resource-disaggregated architectures have risen in popularity for large datacenters. However, prior disaggregation systems are designed for native applications; in addition, all of them require applications to possess excellent locality to be efficiently executed. In contrast, programs written in managed languages are subject to periodic garbage collection (GC), which is a typical graph workload with poor locality. Although most datacenter applications are written in managed languages, current systems are far from delivering acceptable performance for these applications.
This paper presents Semeru, a distributed JVM that can dramatically improve the performance of managed cloud applications in a memory-disaggregated environment. Its design possesses three major innovations: (1) a universal Java heap, which provides a unified abstraction of virtual memory across CPU and memory servers and allows any legacy program to run without modifications; (2) a distributed GC, which offloads object tracing to memory servers so that tracing is performed closer to data; and (3) a swap system in the OS kernel that works with the runtime to swap page data efficiently. An evaluation of Semeru on a set of widely-deployed systems shows very promising results.
Take fastdebug mode as example -the compiled # JVM will be in: # Semeru/CPU-Server/build # /linuxx86_64serverfastdebug/jdk
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext d97bcc1d-b0f2-48f5-bd99-f19c5ef1fbe0Cited by top-tier papers47
- Pond: CXL-Based Memory Pooling Systems for Cloud PlatformsHuaicheng Li, Daniel S. Berger, Lisa Hsu, Daniel Ernst et al.ASPLOS 2023 · 328 citations
- Rethinking software runtimes for disaggregated memoryIrina Calciu, M. Talha Imran, Ivan Puddu, Sanidhya Kashyap et al.ASPLOS 2021 · 116 citations
- One-sided RDMA-Conscious Extendible Hashing for Disaggregated MemoryPengfei Zuo, Jiazhao Sun, Liu Yang, Shuangwu Zhang et al.USENIX ATC 2021 · 113 citations
- Clio: a hardware-software co-designed disaggregated memory systemZhiyuan Guo, Yizhou Shan, Xuhao Luo, Yutong Huang et al.ASPLOS 2022 · 110 citations
- Sherman: A Write-Optimized Distributed B+Tree Index on Disaggregated MemoryQing Wang, Youyou Lu, Jiwu ShuSIGMOD 2022 · 99 citations
Builds on4
- Effectively Prefetching Remote Memory with LeapHasan Al Maruf, Mosharaf ChowdhuryUSENIX ATC 2020 · 186 citations
- Can far memory improve job throughput?Emmanuel Amaro, Christopher Branner-Augmon, Zhihong Luo, Amy Ousterhout et al.EuroSys 2020 · 163 citations
- StRoM: smart remote memoryDavid Sidler, Zeke Wang, Monica Chiosa, Amit Kulkarni et al.EuroSys 2020 · 83 citations
- Platinum: A CPU-Efficient Concurrent Garbage Collector for Tail-Reduction of Interactive ServicesMingyu Wu, Ziming Zhao, Yanfei Yang, Haoyu Li et al.USENIX ATC 2020 · 18 citations
Related papers
- Shaving the Peaks: Taming Tail Latency for Managed Workloads via Disaggregated Garbage CollectionHongtao Lyu, Yuhan Li, Mingyu WuOSDI 2026
- Mako: a low-pause, high-throughput evacuating collector for memory-disaggregated datacentersHaoran Ma, Shi Liu, Chenxi Wang, Yifan Qiao et al.PLDI 2022 · 19 citations
- JITServer: Disaggregated Caching JIT Compiler for the JVM in the CloudAlexey Khrabrov, Marius Pirvu, Vijay Sundaresan, Eyal de LaraUSENIX ATC 2022 · 16 citations
- JPDHeap: A JVM Heap Design for PM-DRAM MemoriesLitong You, Tianxiao Gu, Shengan Zheng, Jianmei Guo et al.DAC 2021 · 2 citations
- Understanding the Effect of Data Center Resource Disaggregation on Production DBMSsQizhen Zhang, Yifan Cai, Xinyi Chen, Sebastian Angel et al.VLDB 2020 · 64 citations
