Information and announcements from Program Managers, Product Managers, Developers and Testers in the Microsoft Virtualization team.
Intel has recently released their new “Sandy Bridge” processors which is the second generation of the Core i3/i5/i7 processors. Most of these new processors hitting the market with the first wave of product released are designed for notebooks and a few for desktops with server processors on the way. An easy way to identify the new Sandy Bridge processors is that the processor models are 4 digits. For example, you’ll see processors such as the i7-2600k or i5-2500k and so on. There are a number of good articles on these new processors (like this) so take a look if you’re interested in what’s new.
I’m raising this topic because I want you to be aware of an issue with both Windows Server 2008 R2 Hyper-V and Microsoft Hyper-V Server 2008 R2 and the new Sandy Bridge processors and provide the solutions.
Issue: When you attempt to start a VM running on a system with a Sandy Bridge processor, the virtual machine will not start. If you go to the Event Viewer you will see an error that states: “<VM Name> could not initialize” error.
Cause: Fundamentally, this is a chicken and egg problem. :-)
Here’s the scoop. The new Sandy Bridge processors include a new extension to the x86 instruction set known as Advanced Vector Extensions (AVX). AVX is designed to improve performance for applications that are floating point intensive such as scientific simulations, analytics and 3D modeling. Since Windows Server 2008 R2 was released a few years prior to the release of AVX equipped processors, Windows Server 2008 R2 and Microsoft Hyper-V Server 2008 R2 don’t understand this new functionality and Hyper-V correctly prevents starting the virtual machine. This behavior is by design as we wouldn’t want to start a virtual machine with unknown and untested processor capabilities. The good news is that solutions are available.
Solution: There are two solutions. The recommended solution is option 1.
Q: Do the AVX instructions improve performance?
A: The AVX instructions can improve performance if applications and workloads have been designed to use these instructions.
Q: Does the Hyper-V Processor Compatibility feature have any bearing on this matter?
A: No. The Hyper-V Processor Compatibility feature is orthogonal to this matter. The fundamental issue is that Windows Server 2008 R2 and Microsoft Hyper-V Server 2008 R2 were released years before processors with AVX instructions were available and didn’t includes support for the AVX instructions in the parent operating system.
The Hyper-V Processor Compatibility feature normalizes the processor feature set and only exposes guest visible processor features that are available on all Hyper-V enabled processors of the same processor architecture, i.e. AMD or Intel. This allows the VM to be migrated to any hardware platform of the same processor architecture. For more info on Hyper-V Processor Compatibility here are some links (here and here).
Windows Server & Cloud
Windows Hyper V 2008 - I am trying to re connect some virutal hard disks that were created with Hyper V manager but they wont connect or restart. Any ideas?
This problem exact is now affecting my Windows 8 Pro installation.
I'm running i7 2600, 8GB ram and 64-bit all way through.
Whenever i create and try to launch any VM in Hyper-V i get an error webseraches say is the AVX-issue.
How can this be and how do i resolve this?
Does Windows 2008 or Windows 2012 expose the Intel AVX2 instructions?