Live Migration van virtuele machines van de ene CPU naar een andere stelt noodzakelijkerwijs eisen. Namelijk dat de instructie-set van de eerste CPU minstens aanwezig moet zijn bij die van de tweede. In het verleden deden hierover nog wel eens wat misverstanden de ronde.
VMware ondersteunt al heel lang een methode om die eisen te helpen invullen, zelfs als de CPU’s onderling van elkaar verschillen. Die methode wordt Enhanced vMotion Compatibility genoemd (EVC) en komt er kortweg op neer dat instructies die niet op alle CPU’s binnen een cluster aanwezig zijn (als gevolg van generatieverschillen) weg-gemaskeerd worden voor de bovenliggende virtuele machines.
De prijs die je voor EVC betaalt is die van het kleinst gemene veelvoud: je doet alsof alle CPU’s gelijk zijn aan de CPU met de minst geavanceerde instructie-set. Met andere woorden, je gooit een deel van je performance weg om compatible te blijven binnen een cluster.

VMware heeft de hoogte van die prijs nu wat beter bepaald door vier benchmarks te onderzoeken binnen vier verschillende CPU-generaties van Intel. De vier benchmarks zijn:
- Database – Oracle SwingBench
- Java – SPECjbb2005
- Encryptie – OpenSSL
- Multimedia – H264 video encoding
Conclusie: voor gangbare applicaties (met name database en Java) is de prijs zo goed als nul, voor multimedia kan het je wel eens zo’n 10% kosten en voor encryptie kan de prijs heel hoog zijn (met name bij Westmere CPU’s, zie ook figuur).
De volledige studie is hier als PDF document van 12 pagina’s te downloaden.