The Xen Project allows vendors to advertise services and software that use Xen and/or build on top of Xen to advertise their services and/or software in the Xen Project Directory. For more information read the vendor notes.
Difference Engine:Harnessing Memory Redundancy in Virtual Machines
Proceedings of the 8th USENIX Symposium on Operating System Design and Implementation. San Diego, CA, Dec 2008
Virtual machine monitors (VMMs) are a popular platform for
Internet hosting centers and cloud-based compute services.
By multiplexing hardware resources among virtual machines
(VMs) running commodity operating systems, VMMs decrease
both the capital outlay and management overhead of hosting
centers. Appropriate placement and migration policies can take
advantage of statistical multiplexing to effectively utilize available
processors. However, main memory is not amenable to
such multiplexing and is often the primary bottleneck in achieving
higher degrees of consolidation.
Previous efforts have shown that content-based page sharing
provides modest decreases in the memory footprint of VMs
running similar operating systems and applications. Our studies
show that significant additional gains can be had by leveraging
both sub-page level sharing (through page patching) and
in-core memory compression. We build Difference Engine,
an extension to the Xen virtual machine monitor, to support
each of these—in addition to standard copy-on-write full page
sharing—and demonstrate substantial savings not only between
VMs running similar applications and operating systems (up to
90%), but even across VMs running disparate workloads (up to
65%). In head-to-head memory-savings comparisons, Difference
Engine outperforms VMware ESX server by a factor of
1.5 for homogeneous workloads and by a factor of 1.6–2.5 for
heterogeneous workloads. In all cases, the performance overhead
of Difference Engine is less than 7%.