• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 652
  • Last Modified:

Optimum number of CPU cores for non-VDI Hyper-V

We've found that assigning fewer vCPUs to VMs (we have a non-VDI environment) i.e. 1 instead of 4 can increase performance because the scheduler has to go around fewer cores.

I'll be looking at ordering a new production virtual server in the near future which will be running the latest 2012 R2 and was wondering how significant the number of cores it has is. Is it worth spending the money on 12 or 16 core CPUs instead of a six core in terms of what each VM would be able to utilise of the host hardware?

Is there a point of diminishing returns? If so is there a formula or rule of thumb to work it out?
0
mark_667
Asked:
mark_667
1 Solution
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
We've found that assigning fewer vCPUs to VMs (we have a non-VDI environment) i.e. 1 instead of 4 can increase performance because the scheduler has to go around fewer cores.

Your observations are correct! (more Hyper-V admins needs to read this!).

Spend money on Clock Cycles, e.g. 3.0GHz, 3.3GHz, e.g. 10 Cores at 3.0GHz, rather than 12 Cores at 2.7GHz!

We just took delivery of many Dell R720, and selected higher clock speeds than cores, because of the memory bandwidth.....

Clock Speed is more important to the VM for performance.
0
 
nick2253Commented:
Clock Speed is more important to the VM for performance.

I'm going to disagree with this as a general statement.

In our system, we have upwards of thirty or forty VMs on each server, and we'd gladly trade clock speed for cores (up to a point, of course).  

Really, it's highly dependent on your environment: both the number of VMs, and the kinds of services that run on them.

If you have few VMs, then you really don't need more cores, so you should be focusing on clock speed.  But if you have a lot of VMs, or the services they provide are highly parallelized, then you'll see more performance out of more cores than more clockspeed, all else being equal.
0
 
David Johnson, CD, MVPOwnerCommented:
You may want to also consider that server licensing these days is by cores
0
Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

 
mark_667Author Commented:
Lets say I have a machine with 2x quad cores to keep within Microsoft's licensing restrictions. That'd have 16 logical cores because of Hyper Threading running 2 threads for each core.

Would it be better to run this machine with 8 VMs each with 2x vCPUs so they each get one physical core or to have a ratio of 1 vCPU to 1 logical CPU which would mean it could support 16 VMs? Would the VMs be using less of the hardware in the second scenario?
0
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
When we plan, we work on a rule of thumb or 5 - 6 VMs per physical Core. Often memory is the bottleneck not CPU.

What VDI OS are you using Windows 7 or Windows 8 ?

and is it just VDI ?
0
 
mark_667Author Commented:
>What VDI OS are you using Windows 7 or Windows 8 ?

As I said in the title these are for non-VDI machines. They run a mix of Server 2003 R2, Server 2008 R2 and Server 2012 R2. They're mostly test machines and machines used to replicate customer environments so we can test against specific configs. We use dynamic memory where we can, most use 512MB when idle but could be 2-3GB when under load so we're not talking massive amounts of memory. Would this change how you'd deploy them?
0
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
Not at all, work with 5-6 VMs per Core.

Dual Processor, Quad Core machine, with low RAM, you'll have plenty or resources available.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now