Working Set-based Physical Memory Ballooning

Minimizing the total amount of physical memory consumption of a set of virtual machines (VM) running on a physical machine is the key to improving a hypervisor’s consolidation ratio, which is defined as the maximum number of VMs that can run on a server without any performance degradation. To give each VM just enough physical memory equal to its true working set (TWS), we propose a TWS-based memory ballooning mechanism that takes away all unneeded physical memory from a VM without affecting its performance. Compared with a state-of-the-art commercial hypervisor, this working setbased memory virtualization technique is able to produce noticeably more effective reduction in physical memory consumption under the same input workloads, and thus represent promising additions to the repertoire of hypervisor-level optimization technologies.

[1]  David A. Padua,et al.  Calculating stack distances efficiently , 2002, MSP/ISMM.

[2]  Roy T. Fielding,et al.  The Apache HTTP Server Project , 1997, IEEE Internet Comput..

[3]  Wolfgang Mauerer,et al.  Professional Linux Kernel Architecture , 2008 .

[4]  Zhenlin Wang,et al.  Dynamic memory balancing for virtual machines , 2009, OPSR.

[5]  Song Jiang,et al.  LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance , 2002, SIGMETRICS '02.

[6]  Steven Hand,et al.  Satori: Enlightened Page Sharing , 2009, USENIX Annual Technical Conference.

[7]  Carl A. Waldspurger,et al.  Memory resource management in VMware ESX server , 2002, OSDI '02.

[8]  Irene Zhang,et al.  Fast restore of checkpointed memory using working set estimation , 2011, VEE '11.

[9]  Kai Shen,et al.  Virtual Machine Memory Access Tracing with Hypervisor Exclusive Cache , 2007, USENIX Annual Technical Conference.

[10]  Song Jiang,et al.  CLOCK-Pro: An Effective Improvement of the CLOCK Replacement , 2005, USENIX ATC, General Track.

[11]  Yingwei Luo,et al.  Low Cost Working Set Size Tracking , 2011, USENIX Annual Technical Conference.

[12]  Dharmendra S. Modha,et al.  CAR: Clock with Adaptive Replacement , 2004, FAST.

[13]  Gerhard Weikum,et al.  The LRU-K page replacement algorithm for database disk buffering , 1993, SIGMOD Conference.

[14]  C. Cascaval,et al.  Calculating stack distances efficiently , 2003, MSP '02.

[15]  Tzi-cker Chiueh,et al.  Introspection-based memory de-duplication and migration , 2013, VEE '13.

[16]  George Varghese,et al.  Difference engine , 2010, OSDI.