Processor setup/usage in Hyper-V

Posted on 2011-10-18
Medium Priority
Last Modified: 2012-05-12
Hey everyone,

I'm not understanding how to properly setup the processors for the virtual machines in Hyper-V.  I've looked it up as much as I can and I don't seem to get a straight answer.  It seems like there's really no difference if I set up a server with 4 processors or 1 processor, or if I reserve a certain amount for the local processor for the virtual machine, etc.  What I don't understand though is that if I have a physical server with two quad core xeon's running 2 hyperv virtual servers each only using 1 processor what's the point?  Why not just buy a dual core CPU and call it a day.  

The flip side of that is if you setup an actual server on a physical box it needs those cores.  You can't efficiently run a physical server with 1 Processor.  

So if anyone can break that down for me it'd be hugely appreciated I've been trying to figure this out for a while now.

Question by:blue92lx
  • 2
  • 2
LVL 42

Expert Comment

ID: 36990053
You should start by assigning just 1 vCPU for a VM. The reason is that there is a performance hit to having multiple CPUs in an OS; this is why Windows 2003 and earlier had uni-processor and multi-processor HALs. If your VM needs more processing power than what 1 vCPU can provide (task manager shows CPU consistently above 90%) then add another vCPU as needed.

If you bought a dual quad core server for 2 VMs, you way over-bought on CPU. My dual socket dual core Xeon 5100 doesn't break a sweat running 10 VMs under 16 GB RAM on the host. Most CPU cores are mostly idle. Ditto for my other servers, which have up to 25 VMs and 144 GB RAM on dual socket, quad core systems. Most cores are mostly idle most of the time. Yes, you can probably run your two VMs on a single dual core processor just fine...good luck finding such a system these days.

Author Comment

ID: 36990378
Thanks for the reply.  No I didn't buy this server for my client, their last IT company did.  Not sure why.  I think it's just weird that in a VM you can use 1 processor efficiently for something like Small Business Server, but if you installed SBS on a single core physical server it would either crawl or not work.  

Does the 1 vCPU actually share resources across the multiple physical CPU's?  Just trying to get an understanding for how this works.  I mean it doesn't really make sense that you have 10 VMs running on 4 cores.  That's like installing a server using 1/4 processor for each server.
LVL 42

Accepted Solution

kevinhsieh earned 500 total points
ID: 36990573
I think that a physical server would work fine on a single core. A single vCPU will only run on a single core at a time, but it can get moved to a different core. Since a CPU is generally mostly idle, you can run a VM on what is essentually 1/4 core or less.

Author Closing Comment

ID: 36990679
Thank you!!  That's the exact explanation I've been looking for.  So basically if I issue one CPU it's only using one core but it's really anywhere on the physical cpu at anytime and is utilized as necessary.  I don't understand how there are no websites explaining this, I couldn't even find a solid explanation on Microsofts side.

Featured Post

NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this article, I will show you HOW TO: Suppress Configuration Issues and Warnings Alert displayed in Summary status for ESXi 6.5 after enabling SSH or ESXi Shell.
In this article, I am going to show you how to simulate a multi-site Lab environment on a single Hyper-V host. I use this method successfully in my own lab to simulate three fully routed global AD Sites on a Windows 10 Hyper-V host.
Teach the user how to install log collectors and how to configure ESXi 5.5 for remote logging Open console session and mount vCenter Server installer: Install vSphere Core Dump Collector: Install vSphere Syslog Collector: Open vSphere Client: Config…
How to install and configure Citrix XenApp 6.5 - Part 1. In this video tutorial we have explained step by step installation of Citrix XenApp 6.5 Server on Windows Server 2008 R2 is explained in this video. We have explained the difference between…
Suggested Courses

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question