Details
Original language | English |
---|---|
Title of host publication | EuroSys 2025 - Proceedings of the 2025 20th European Conference on Computer Systems |
Pages | 702-719 |
Number of pages | 18 |
ISBN (electronic) | 9798400711961 |
Publication status | Published - 30 Mar 2025 |
Event | 20th European Conference on Computer Systems (EuroSys 2025) co-located with 30th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2025) - Rotterdam, Netherlands Duration: 30 Mar 2025 → 3 Apr 2025 |
Abstract
The provisioning of the right amount of DRAM to virtual machines (VMs) is still a major challenge and cost driver in virtualization settings. Many VMs run applications with highly volatile memory demands, which either leads to massive overprovisioning in low-demand phases or poor QoS in high-demand phases. Memory hotplugging and ballooning have become established techniques (in Linux/KVM available via virtio-mem and virtio-balloon) to dynamically de/inflate the physical memory of a VM cooperatively, by having the guests give back unused memory to the hypervisor. However, current VM deflation techniques are either not DMA-safe, preventing the passthrough of important devices like GPUs or NICs, or are not flexible or fast enough to cope with the frequently changing demands of the guest. We present HyperAlloc, a DMA-safe and extremely efficient mechanism for virtual machine de/inflation. The core idea is to provide the hypervisor direct access to the guest’s page-frame allocator, greatly reducing the communication overhead. HyperAlloc can shrink virtual machines 362 times faster than virtio-balloon and 10 times faster than virtio-mem while having no measurable impact on the guest’s performance. HyperAlloc’s automatic reclamation provides for better memory elasticity by reducing the average memory footprint of a clang compilation by 17 percent compared to virtio-balloon’s free-page reporting while, again, having no measurable impact on the guest’s performance.
Keywords
- Allocators, Ballooning, Overcommitment, Virtual Machines
ASJC Scopus subject areas
- Computer Science(all)
- Computer Networks and Communications
- Computer Science(all)
- Hardware and Architecture
- Engineering(all)
- Control and Systems Engineering
Cite this
- Standard
- Harvard
- Apa
- Vancouver
- BibTeX
- RIS
EuroSys 2025 - Proceedings of the 2025 20th European Conference on Computer Systems. 2025. p. 702-719.
Research output: Chapter in book/report/conference proceeding › Conference contribution › Research › peer review
}
TY - GEN
T1 - HyperAlloc
T2 - 20th European Conference on Computer Systems (EuroSys 2025) co-located with 30th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2025)
AU - Wrenger, Lars
AU - Albes, Kenny
AU - Wurps, Marco
AU - Dietrich, Christian
AU - Lohmann, Daniel
N1 - Publisher Copyright: © 2025 Copyright held by the owner/author(s).
PY - 2025/3/30
Y1 - 2025/3/30
N2 - The provisioning of the right amount of DRAM to virtual machines (VMs) is still a major challenge and cost driver in virtualization settings. Many VMs run applications with highly volatile memory demands, which either leads to massive overprovisioning in low-demand phases or poor QoS in high-demand phases. Memory hotplugging and ballooning have become established techniques (in Linux/KVM available via virtio-mem and virtio-balloon) to dynamically de/inflate the physical memory of a VM cooperatively, by having the guests give back unused memory to the hypervisor. However, current VM deflation techniques are either not DMA-safe, preventing the passthrough of important devices like GPUs or NICs, or are not flexible or fast enough to cope with the frequently changing demands of the guest. We present HyperAlloc, a DMA-safe and extremely efficient mechanism for virtual machine de/inflation. The core idea is to provide the hypervisor direct access to the guest’s page-frame allocator, greatly reducing the communication overhead. HyperAlloc can shrink virtual machines 362 times faster than virtio-balloon and 10 times faster than virtio-mem while having no measurable impact on the guest’s performance. HyperAlloc’s automatic reclamation provides for better memory elasticity by reducing the average memory footprint of a clang compilation by 17 percent compared to virtio-balloon’s free-page reporting while, again, having no measurable impact on the guest’s performance.
AB - The provisioning of the right amount of DRAM to virtual machines (VMs) is still a major challenge and cost driver in virtualization settings. Many VMs run applications with highly volatile memory demands, which either leads to massive overprovisioning in low-demand phases or poor QoS in high-demand phases. Memory hotplugging and ballooning have become established techniques (in Linux/KVM available via virtio-mem and virtio-balloon) to dynamically de/inflate the physical memory of a VM cooperatively, by having the guests give back unused memory to the hypervisor. However, current VM deflation techniques are either not DMA-safe, preventing the passthrough of important devices like GPUs or NICs, or are not flexible or fast enough to cope with the frequently changing demands of the guest. We present HyperAlloc, a DMA-safe and extremely efficient mechanism for virtual machine de/inflation. The core idea is to provide the hypervisor direct access to the guest’s page-frame allocator, greatly reducing the communication overhead. HyperAlloc can shrink virtual machines 362 times faster than virtio-balloon and 10 times faster than virtio-mem while having no measurable impact on the guest’s performance. HyperAlloc’s automatic reclamation provides for better memory elasticity by reducing the average memory footprint of a clang compilation by 17 percent compared to virtio-balloon’s free-page reporting while, again, having no measurable impact on the guest’s performance.
KW - Allocators
KW - Ballooning
KW - Overcommitment
KW - Virtual Machines
UR - http://www.scopus.com/inward/record.url?scp=105002248316&partnerID=8YFLogxK
U2 - 10.1145/3689031.3717484
DO - 10.1145/3689031.3717484
M3 - Conference contribution
AN - SCOPUS:105002248316
SP - 702
EP - 719
BT - EuroSys 2025 - Proceedings of the 2025 20th European Conference on Computer Systems
Y2 - 30 March 2025 through 3 April 2025
ER -