Monday, 20 October 2014

How vCPUs Interact With Physical CPUs - Resources

Here are some excellent resources on how a hypervisor such as Hyper-V interacts with the CPU pipeline.

Essentially, having a bit of time while waiting for some things to complete I’ve done a bit of digging to figure out if the premise “All VM threads (vCPUs) must be processed in parallel” still applies to the CPU pipelines and architectures of today.

Check out the conversation I’ve been having with Brian Elhert on his blog with the videos as it seems that the premise no longer holds true.

There are other VM performance thoughts that we have had since day one that need to be tested or verified based on Brian’s responses.

In our experience the following can have an impact on a VM’s performance:

  • Assigning more vCPUs to a VM than physical cores (threads) available on one CPU
  • Assigning vCPU count to a VM as the number of physical cores (threads) on one CPU
  • Assigning enough vRAM to a VM to force its contents to be split between memory controllers

Hat Tip: @BrianEh (Brian Elhert)

Further reading on tuning Windows Server 2012 R2:

Philip Elder
Microsoft Cluster MVP
MPECS Inc.
Co-Author: SBS 2008 Blueprint Book

Chef de partie in the SMBKitchen ASP Project
Find out more at
Third Tier: Enterprise Solutions for Small Business

No comments: