Impact of Enhanced vMotion Compatibility
on Application Performance
TECHNICAL WHITE PAPER /3
Executive Summary
VMware® Enhanced vMotion Compatibility (EVC) enhances the scope of VMware vSphere® vMotion® by making
VMware® ESXi™ hosts with different CPU technologies compatible for vMotion. It does this by making available a
common CPU feature set through the use of a baseline. With a baseline in place for older processors, application
performance becomes important. Do the applications running in the virtual machines with an older CPU
presented perform as well as they do on virtual machines that have access to feature sets available in newer
generation processors? In this paper, we quantify the performance impact of EVC mode on a diverse set of
applications. We study workloads from database, Java, multimedia, and encryption categories and report the
results.
Test results show that almost all workloads perform well even when the virtual machine presents an EVC mode
that corresponds to an older processor generation. The EVC mode setting had varying impact on workload
performance based on the ESXi hosts’ CPU instruction set features made available and their relevance to the
workloads. One workload, AES-Encryption, didn’t fare as well due to a dependence on special-purpose
instruction sets only available in younger processor generations.
Introduction
VMware vMotion [1] plays a critical role in data center management; virtual machine migration helps in load
balancing, resource management, and preventive maintenance. Clusters in a typical datacenter usually have a
mix of processors belonging to different generations, if not different vendors. Processor vendors continue to
offer special purpose enhancements targeting individual market segments with each new generation. In light of
this heterogeneous nature of a cluster and attendant hardware dependencies, vMotion is forced to limit the
possible destinations to which a virtual machine could migrate.
In order to ease this restriction, VMware supports EVC mode [2] [3] through the use of Intel FlexMigration and
AMD-V Extended Migration technologies. EVC mode can be specified at the cluster level. This sets a baseline
processor generation enabling wider migration choices for a virtual machine, typically the oldest or the least
capable processor becomes the determining EVC mode for all the hosts in that cluster. Subsequently, any virtual
machine running in that cluster can be migrated to any other ESXi host, regardless of CPU, within the cluster.
Despite the obvious advantages of EVC mode, administrators need to factor in the costs associated with this
feature to help in the decision making process. Some applications could potentially lose performance due to
certain advanced CPU features not being made available to the guest even though the underlying host supports
them. This has been a concern for VMware customers, partly due to the lack of information on the extent of
performance loss and the class of applications that get affected.
In this study, we aim to quantify the performance impact of EVC mode for a set of applications covering a
spectrum of application domains.