Intra-Node Cooperative Memory Management System for Virtualized Environments
Aram Kocharyan, Boris Teabe, Vlad Nitu, Alain Tchana, Daniel Hagimont, Hrachya V. Astsatryan, Hayk Kocharyan · 2018
Virtualization allows to run several Virtual Machines (VMs) in parallel and isolated on a single physical host. In most virtualized environments, memory is statically allocated to VMs which means it is given to the VM at creation time and for the VM's lifetime. Such a memory management policy has one main drawback: some VMs may be lacking memory while others have unused memory. Relying on a VM working-set estimation facility that we previously implemented, we designed a memory management policy which allows reclaiming unused memory from unsaturated VMs and to lend it to saturated VMs. This paper presents the implementation of this memory management service is the Xen virtualization environment and evaluates its accuracy with several benchmarking applications.