Saved in:
| Main Authors: | , , , , , , , , , , , , , |
|---|---|
| Format: | Preprint |
| Published: |
2024
|
| Subjects: | |
| Online Access: | https://arxiv.org/abs/2409.13327 |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| _version_ | 1866912036944871424 |
|---|---|
| author | Pandurov, Milan Humbel, Lukas Sepp, Dmitry Ttofari, Adamos Thomm, Leon Quoc, Do Le Chandrasekaran, Siddharth Santhanam, Sharan Ye, Chuan Bergman, Shai Wang, Wei Lundgren, Sven Sagonas, Konstantinos Ros, Alberto |
| author_facet | Pandurov, Milan Humbel, Lukas Sepp, Dmitry Ttofari, Adamos Thomm, Leon Quoc, Do Le Chandrasekaran, Siddharth Santhanam, Sharan Ye, Chuan Bergman, Shai Wang, Wei Lundgren, Sven Sagonas, Konstantinos Ros, Alberto |
| contents | Memory has become the primary cost driver in cloud data centers. Yet, a significant portion of memory allocated to VMs in public clouds remains unused. To optimize this resource, "cold" memory can be reclaimed from VMs and stored on slower storage or compressed, enabling memory overcommit. Current overcommit systems rely on general-purpose OS swap mechanisms, which are not optimized for virtualized workloads, leading to missed memory-saving opportunities and ineffective use of optimizations like prefetchers.
This paper introduces a userspace memory management framework designed for VMs. It enables custom policies that have full control over the virtual machines' memory using a simple userspace API, supports huge page-based swapping to satisfy VM performance requirements, is easy to deploy by leveraging Linux/KVM, and supports zero-copy I/O virtualization with shared VM memory.
Our evaluation demonstrates that an overcommit system based on our framework outperforms the state-of-the-art solutions on both micro-benchmarks and commonly used cloud workloads. Specifically our implementation outperforms the Linux Kernel baseline implementation by up to 25% while saving a similar amount of memory. We also demonstrate the benefits of custom policies by implementing workload-specific reclaimers and prefetchers that save $10\%$ additional memory, improve performance in a limited memory scenario by 30% over the Linux baseline, and recover faster from hard limit releases. |
| format | Preprint |
| id |
arxiv_https___arxiv_org_abs_2409_13327 |
| institution | arXiv |
| publishDate | 2024 |
| record_format | arxiv |
| spellingShingle | Flexible Swapping for the Cloud Pandurov, Milan Humbel, Lukas Sepp, Dmitry Ttofari, Adamos Thomm, Leon Quoc, Do Le Chandrasekaran, Siddharth Santhanam, Sharan Ye, Chuan Bergman, Shai Wang, Wei Lundgren, Sven Sagonas, Konstantinos Ros, Alberto Distributed, Parallel, and Cluster Computing Operating Systems D.4.2 Memory has become the primary cost driver in cloud data centers. Yet, a significant portion of memory allocated to VMs in public clouds remains unused. To optimize this resource, "cold" memory can be reclaimed from VMs and stored on slower storage or compressed, enabling memory overcommit. Current overcommit systems rely on general-purpose OS swap mechanisms, which are not optimized for virtualized workloads, leading to missed memory-saving opportunities and ineffective use of optimizations like prefetchers. This paper introduces a userspace memory management framework designed for VMs. It enables custom policies that have full control over the virtual machines' memory using a simple userspace API, supports huge page-based swapping to satisfy VM performance requirements, is easy to deploy by leveraging Linux/KVM, and supports zero-copy I/O virtualization with shared VM memory. Our evaluation demonstrates that an overcommit system based on our framework outperforms the state-of-the-art solutions on both micro-benchmarks and commonly used cloud workloads. Specifically our implementation outperforms the Linux Kernel baseline implementation by up to 25% while saving a similar amount of memory. We also demonstrate the benefits of custom policies by implementing workload-specific reclaimers and prefetchers that save $10\%$ additional memory, improve performance in a limited memory scenario by 30% over the Linux baseline, and recover faster from hard limit releases. |
| title | Flexible Swapping for the Cloud |
| topic | Distributed, Parallel, and Cluster Computing Operating Systems D.4.2 |
| url | https://arxiv.org/abs/2409.13327 |