Kai-Yuan (Karen) Hou, Kang G. Shin, and Jan-Lung

Application-Assisted Live Migration of
Virtual Machines with Java Applications
Kai-Yuan (Karen) Hou, Kang G. Shin, and Jan-Lung Sung
Conference talk @ Thu. Apr. 23, Virtualization session (10:50 – 12:30)
VM live migration performs poorly
when network is a bottleneck
Our solution: selectively skip transfer of
memory with application assistance
VM memory gets dirtied faster than transferred
 amount of memory transfer and interval of
pre-copy iterations do not decrease
 1. long migration time
2. significant network traffic
3. non-trivial application downtime
• Some memory content need not be migrated for
running applications to execute in the destination,
e.g., reproducible content, caches, garbage objects
• Built a generic framework for applications to inform
the migration daemon which memory pages can be
JAVMM: migrate VMs running Java applications skipping transfer of garbage
• Java-Aware VM Migration applies our proposed
framework to Java applications
• JVM assists on behalf of Java applications –
no modifications to Java applications required
• JVM enforces a minor GC before the VM pauses for
the last migration iteration
 the VM resumes in the destination with the Young
generation of the Java heap mostly empty
• The migration daemon skips transferring the Young
generation, except the data surviving the enforced GC
Up to over 90% less migration time, less network traffic, smaller downtime
Migration Time
Network Traffic
Application Downtime
• JAVMM is most beneficial when the Young generation is large and frequently dirtied,
i.e., when Java applications allocate objects rapidly and use mostly short-lived objects
Questions? Contact [email protected], or find Karen at the conference!