Performance of a database manager in a virtual memory system
ACM Transactions on Database Systems (TODS)
ACM Computing Surveys (CSUR)
My Cache or Yours? Making Storage More Exclusive
ATEC '02 Proceedings of the General Track of the annual conference on USENIX Annual Technical Conference
WMCSA '02 Proceedings of the Fourth IEEE Workshop on Mobile Computing Systems and Applications
Memory resource management in VMware ESX server
ACM SIGOPS Operating Systems Review - OSDI '02: Proceedings of the 5th symposium on Operating systems design and implementation
Understanding The Linux Kernel
Understanding The Linux Kernel
Geiger: monitoring the buffer cache in a virtual machine environment
Proceedings of the 12th international conference on Architectural support for programming languages and operating systems
Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture
Fast transparent migration for virtual machines
ATEC '05 Proceedings of the annual conference on USENIX Annual Technical Conference
Live migration of virtual machines
NSDI'05 Proceedings of the 2nd conference on Symposium on Networked Systems Design & Implementation - Volume 2
Virtual machine memory access tracing with hypervisor exclusive cache
ATC'07 2007 USENIX Annual Technical Conference on Proceedings of the USENIX Annual Technical Conference
AFIPS '74 Proceedings of the May 6-10, 1974, national computer conference and exposition
Entropy: a consolidation manager for clusters
Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Post-copy based live virtual machine migration using adaptive pre-paging and dynamic self-ballooning
Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Network-aware migration control and scheduling of differentiated virtual machine workloads
CLOUD '09 Proceedings of the 2009 ICSE Workshop on Software Engineering Challenges of Cloud Computing
Introduction to Algorithms, Third Edition
Introduction to Algorithms, Third Edition
Dynamic memory balancing for virtual machines
ACM SIGOPS Operating Systems Review
The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines
The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines
Evaluation techniques for storage hierarchies
IBM Systems Journal
Difference engine: harnessing memory redundancy in virtual machines
Communications of the ACM
HyperDealer: Reference-Pattern-Aware Instant Memory Balancing for Consolidated Virtual Machines
CLOUD '10 Proceedings of the 2010 IEEE 3rd International Conference on Cloud Computing
Satori: enlightened page sharing
USENIX'09 Proceedings of the 2009 conference on USENIX Annual technical conference
Virtualizing high performance computing
ACM SIGOPS Operating Systems Review
Minimal-overhead virtualization of a large scale supercomputer
Proceedings of the 7th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Overdriver: handling memory overload in an oversubscribed cloud
Proceedings of the 7th ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Black-box and gray-box strategies for virtual machine migration
NSDI'07 Proceedings of the 4th USENIX conference on Networked systems design & implementation
Performance Analysis of Cloud Computing Services for Many-Tasks Scientific Computing
IEEE Transactions on Parallel and Distributed Systems
Hi-index | 0.00 |
Virtualization technology has been widely adopted in Internet hosting centers and cloud-based computing services, since it reduces the total cost of ownership by sharing hardware resources among virtual machines (VMs). In a virtualized system, a virtual machine monitor (VMM) is responsible for allocating physical resources such as CPU and memory to individual VMs. Whereas CPU and I/O devices can be shared among VMs in a time sharing manner, main memory is not amendable to such multiplexing. Moreover, it is often the primary bottleneck in achieving higher degrees of consolidation. In this paper, we present VMMB (Virtual Machine Memory Balancer), a novel mechanism to dynamically monitor the memory demand and periodically re-balance the memory among the VMs. VMMB accurately measures the memory demand with low overhead and effectively allocates memory based on the memory demand and the QoS requirement of each VM. It is applicable even to guest OS whose source code is not available, since VMMB does not require modifying guest kernel. We implemented our mechanism on Linux and experimented on synthetic and realistic workloads. Our experiments show that VMMB can improve performance of VMs that suffers from insufficient memory allocation by up to 3.6 times with low performance overhead (below 1%) for monitoring memory demand.