OPTIMIZING OPENSTACK INFRASTRUCTURE
WITH VIRTUAL MEMORY STREAMING
TECHNICAL WHITE PAPER
1 | GRIDCENTRIC
In this paper we introduce an infrastructure optimization solution from Gridcentric:
Gridcentric Virtual Memory Streaming
(VMS) for OpenStack. VMS optimizes virtual
infrastructures to make them more efﬁ cient, scalable, and easy to manage.
We explore the beneﬁ ts of VMS in cloud-based virtual infrastructures using the
CloudStone cloud computing benchmark, which simulates load on a social networking
web service. CloudStone’s web service uses many industry-standard web technologies
such as PHP, Nginx, MySQL and memcached.
Virtual Memory Streaming (VMS) rethinks the way of deploying Virtual Machines in
virtualized infrastructure. It eliminates the expensive action of booting, and replaces it
with on-the-ﬂ y cloning.
Gridcentric VMS provides the following beneﬁ ts:
• Drastically reduced VM physical memory (RAM) usage
• Drastically reduced VM provisioning times
• Drastically reduced boot-related network and storage I/O
With Virtual Memory Streaming, cloud computing is made even more ﬂ exible by allowing
ﬁ ner granularity and on-demand resource allocation.
The following subsections describe speciﬁ c results obtained while running the
CloudStone benchmark on Gridcentric VMS-enabled infrastructure.
REDUCED MEMORY USAGE
Gridcentric’s Virtual Memory Streaming (VMS) technology reduces the amount of
physical memory (RAM) used by virtual infrastructure through a revolutionary new
2 | GRIDCENTRIC
approach to provisioning new virtual machines: VMS streams the memory from a
“golden image” snapshot of a pre-conﬁ gured virtual machine image. Virtual machines
launched through VMS start with a thin memory proﬁ le, with typical server VMs starting
up with tens of megabytes of memory. New memory is allocated to the VM as required
and continuously optimized. This results in performance characteristics where handling
5% more load consumes very close to 5% more resources (CPU, memory, and I/O). This
also allows for ﬁ ne-grained packing of VMs into the available memory of physical hosts,
putting all available memory to work without any drastic measures such as ballooning
or re-sizing VMs.
In Figure 1, we show the results of this memory optimization under load, during a
benchmark run of the CloudStone benchmark suite. Without VMS, each of ﬁ ve (5) virtual
machines requires 1 GB of physical RAM. With VMS, this number is reduced to less than
230 MB of RAM per virtual machine – a 75% reduction.
Host Memory Usage - 5 Virtual Machines
Launched with VMS
Figure 1: Virtual Memory Streaming (VMS) was able to reduce the memory footprint used by five (5)
fully-configured server virtual machines from 5 GB to just over 1 GB – a more than 75% reduction in
physical memory (RAM) usage. Each server VM was running a fully-featured social networking site
from the CloudStone benchmark suite. The timescale of the graph is approximately six minutes.
3 | GRIDCENTRIC
REDUCED LAUNCH TIMES
VMs launched through VMS skip the boot process - launched VMs come up
running nearly instantaneously with all of their cached memory preserved from when the
pre-conﬁ gured snapshot was created. Launching a VM has the additional beneﬁ t of
avoiding all guest operating system and application startup related resource usage,
which means launching additional instances won’t impact system performance during
periods of high system load.
The following table lists cumulative launch times for ﬁ ve (5) virtual machines conﬁ gured
to run the CloudStone benchmark suite:
The table gives the time needed to go from the “completely off” state to the “ready to
accept network requests” state, for up to ﬁ ve virtual machines.
In the typical cloud-infrastructure case where the virtual machine rootdisk image needs
to be loaded from a network image service, VMS is able to provide a 26X speed-up
to launch the ﬁ rst VM, and is more than 12 times faster in bringing up all ﬁ ve virtual
machines. Even in the case where the virtual machine image is already present on
the physical node, VMS achieves an 86% speedup when launching a single virtual
machine and a 57% speedup when launching ﬁ ve virtual machines. Reduced launch
times enable virtual infrastructure to be provisioned in a way that is highly reactive to
dynamic service demands.
1 590 41 22
2 594 48 37
3 601 58 40
4 604 70 45
5 610 77 49
#VMs REGULAR BOOT CACHED BOOT LAUNCHED WITH VMS
Table 1: Cumulative launch times, in seconds, for five virtual machines to handle increasing
load under the CloudStone benchmark suite.
4 | GRIDCENTRIC
REDUCED BOOT-RELATED NETWORK AND STORAGE I/O
Because VMS virtual machines launch in a ready state, they avoid the so-called “boot
storm” problem associated with booting the guest operating system and starting
necessary system services. As a result, virtual machines launched with VMS put far less
launch-related network and storage I/O on the network and storage subsystems of the
Figure 2 shows the reduction in boot-related storage I/O operations that VMS
delivers. When launching ﬁ ve virtual machines, over 75 thousand I/O operations were
performed when the virtual machine rootdisk was not cached locally, and over 46
thousand requests when the image was cached locally. Using VMS, the number of
boot-related I/O operations was reduced to slightly less than two thousand – less than
3% the IOPs of regular boot and less than 6% the IOPs of cached boot.
Boot-Related Storage IOPS - 5 Virtual Machines
Cumulative I/O Operstaions
Regular Boot (cached)
Launched with VMS
Figure 2 : Virtual Memory Streaming (VMS) was able to reduce boot-related storage I/O Operations (IOPs)
when launching five (5) fully-configured virtual machines from over 75 thousand IOPs to less than two
thousand. Even when the virtual machine rootdisk image was already cached on the physical node, IOPs
were still reduced by a factor of 94%. The timescale of the graph is approximately 11 minutes.
5 | GRIDCENTRIC
Figure 3 shows the reduction in boot-related network trafﬁ c of VMS-launched virtual
machines versus traditional boot-based delivery. When launching ﬁ ve virtual machines,
over 48 gigabytes were transferred over the network when the virtual machine rootdisk
was not cached locally, and over 1.3 gigabytes when the image was cached locally.
Using VMS, the amount of boot-related network trafﬁ c was reduced to less than 50
megabytes – a 99.9% reduction over regular boot and a more than 95% reduction over
Boot-Related Network I/O - 5 Virtual Machines
Regular Boot (cached)
Launched with VMS
Figure 3 : Virtual Memory Streaming (VMS) was able to reduce boot-related network I/O traffic when
launching five (5) fully-configured virtual machines from over 48 gigabytes to less than 50 megabytes – a
99.9% reduction. Even when the virtual machine rootdisk image was already cached on the physical node,
network traffic was still reduced by over 95%. The timescale of the graph is approximately 11 minutes.
Gridcentric’s VMS and delivers unprecedented resource efﬁ ciency for cloud-based
applications. VMS is able to drastically reduce the amount of physical memory used
by virtual infrastructure, reduce application launch times, and virtually eliminate
boot-related network and storage I/O.
6 | GRIDCENTRIC
Gridcentric is a privately held company with ofﬁ ces in
Toronto, Canada and Santa Clara,California. Reach us at: