Search This Blog

Wednesday, April 3, 2013

Configure CPU Compatibility For Migration Using Powershell


If you have two different model of CPU (example:- E7-8830 or X5680) on your environment and would like to move the virtual machine from one Hyper-V Server to another Hyper-V server, you are require to configure Processor Compatibility. Both server processor can be different family as long it is belong to the same manufacturer. Example:- Intel – Intel, AMD-AMD.

You cannot move VM from different manufacturer (Intel – AMD).

In GUI, you can easily configure this setting from each VM by right click | Settings| Processor | Compatibility.

Tick Migrate to a physical computer with a different processor version


You can achieve faster way by using Powershell.

Get-VMProcessor –VMName *



In order to configure CPU Compatibility, the VM must be in “Turn Off” State. To check which VM in “Off” state, you can type the following command:

Get-VM *


The command will list down the entire VM state. Those VM listed as “Off” can be configure for CPU Compatibility For Migration

Set for particular VM

To configure CPU Compatibility for a particular VM. Let say “CL-HYV-VE01” vm. Type the following command

Set-VMProcessor –VMName CL-HYV-VE01” –CompatibilityforMigrationEnabled $true
Get-VMProcessor *


Set for Multiple VM

Use the command Get-VMProcessor, piping and Set-VMProcessor together to configure multiple VMs

Get-VMProcessor –VMName * | Set-VMProcessor –CompatibilityForMigrationEnabled $true
Get-VMProcessor –VMName *

Result in Powershell:-


Note:- Refer to highlighted in “yellow”

Result in GUI:-


Migrate to a physical computer with a different processor version has ticked.