Yesterday, I released a script to find out if a given VM or VMs on a source host can be migrated successfully to another physical host with Hyper-V role. When you use this script to verify if a running VM can be moved from HOST A with most recent Intel processor to HOST B with an older Intel processor, you may find that the migration is not possible. This is because HOST A has a processor feature set that is the superset of HOST B and hence when a running VM is migrated from A to B, it will fail to run. Now, in Windows Server 2008 R2, there is a feature called processor compatibility mode. This can be found in the VM properties window.
This feature is disabled by default. When you enable this feature, the overall guest visible processor feature set will be limited. So, this enables a virtual machine to be moved from a host with most recent version of the processor to a host with older version of processor. However, make a note that this will enable migration of virtual machines between different generations of processors from the same vendor. Hence, using this feature, you still cannot move virtual machines between Intel and AMD hosts.
Coming back the script, when the script reports that a VM cannot be moved, first verify if the above mentioned “processor compatibility mode” option is enabled or not. If not, run the checks again once you enable this option.