Specifications

CPU Compatibility and EVC
vCenter Server performs a number of compatibility checks before allowing migration of running or suspended
virtual machines to ensure that the virtual machine is compatible with the target host.
vMotion transfers the running state of a virtual machine between underlying ESXi systems. Successful live
migration requires that the processors of the target host be able to provide the same instructions to the virtual
machine after migration that the processors of the source host provided before migration. Clock speed, cache
size, and number of cores can differ between source and target processors, but the processors must come from
the same vendor class (AMD or Intel) to be vMotion compatible.
Migrations of suspended virtual machines also require that the virtual machine be able to resume execution
on the target host using equivalent instructions.
When you initiate a migration with vMotion or a migration of a suspended virtual machine, the Migrate Virtual
Machine wizard checks the destination host for compatibility and produces an error message if there are
compatibility problems that will prevent migration.
The CPU instruction set available to the operating system and applications running in a virtual machine is
determined at the time that a virtual machine is powered on. This CPU "feature set" is determined based on
the following items:
n
Host CPU family and model
n
Settings in the BIOS that might disable CPU features
n
The ESX/ESXi version running on the host
n
The virtual machine's virtual hardware version
n
The virtual machine's guest operating system
To improve CPU compatibility between hosts of varying CPU feature sets, some host CPU features can be
"hidden" from the virtual machine by placing the host in an Enhanced vMotion Compatibility (EVC) cluster.
NOTE Host CPU features can also be hidden from a virtual machine by applying a custom CPU compatibility
mask to the virtual machine, but this is not recommended. VMware, in partnership with CPU and hardware
vendors, is working to maintain vMotion compatibility across the widest range of processors. For additional
information, search the VMware Knowledge Base for the vMotion and CPU Compatibility FAQ.
CPU Compatibility Scenarios
vCenter Server's CPU compatibility checks compare the CPU features available on the source host, the subset
of features that the virtual machine can access, and the features available on the target host. Without the use
of EVC, any mismatch between two hosts' user-level features will block migration, whether or not the virtual
machine itself has access to those features. A mismatch between two hosts' kernel-level features, however,
blocks migration only when the virtual machine has access to a feature that the target host does not provide.
User-level features are non-privileged instructions that might be used by virtual machine applications. These
include SSE3, SSSE3, SSE4.1, SSE4.2, and AES. Because they are user-level instructions that bypass the
virtualization layer, these instructions could cause application instability if mismatched after a migration with
vMotion.
Kernel-level features are privileged instructions that might be used by the virtual machine operating system.
These include the AMD No eXecute (NX) and the Intel eXecute Disable (XD) security features.
When you attempt to migrate a virtual machine with vMotion, one of the following scenarios applies:
n
The destination host feature set matches the virtual machine’s CPU feature set. CPU compatibility
requirements are met, and migration with vMotion proceeds.
Chapter 12 Migrating Virtual Machines
VMware, Inc. 117