vCPU spec for an VM (application server 2012) running in ESX

Hi Guys,

I am told that too many under-utilised vCPUs in a VM can deteriorate the VM's performance. Could someone conform / deny this? (with some references)

I need to spec a Server 2012 VM (application server) running in an ESX environment. I suggested using 4 x vCPUs, 8gb RAM, and 50Gb/50GB hard drives (available disk space is limited). The application is an MI reporting tool so no heavy processing.  Is 4 vCPUs too many? Would performance really be affected if not all of the vCPUs are utilized?

Any help would be appreciated.

Thanks

M
mk112233Asked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
DrAtomicCommented:
Always start with 1 vcpu unless prior performance monitoring has shown you that you'll need more cpu power. See http://www.experts-exchange.com/Software/VMWare/Q_27952182.html and his EE articles.
0
 
mk112233Author Commented:
So since the OS we are using is Server 2012 x64, the minimum would be 2 x vCPU? or is that not the case with VMs?
0
 
Andrew Hancock (VMware vExpert / EE MVE^2)Connect With a Mentor VMware and Virtualization ConsultantCommented:
I am told that too many under-utilised vCPUs in a VM can deteriorate the VM's performance. Could someone conform / deny this? (with some references)

There is some truth in this.

Without observing the performance of the virtual machine it's difficult to know if you need 2, 4, 8 vCPU.

vSMP (virtual SMP) can affect virtual machine performance, when adding too many vCPUs to virtual machines that cannot use the vCPUs effectly, e.g. Servers than can use vSMP correctly :- SQL Server, Exchange Server.

This is true, many VMware Administrators, think adding lots of processors, will increase performance - wrong! (and because they can, they just go silly!). Sometimes there is confusion between cores and processors. But what we are adding is additional processors in the virtual machine.

So 4 vCPU, to the VM is a 4 Way SMP (Quad Processor Server), if you have Enterprise Plus license you can add 8, (and only if you have the correct OS License will the OS recognise them all).

If applications, can take advantage e.g. Exchange, SQL, adding additional processors, can/may increase performance.

So usual rule of thumb is try 1 vCPU, then try 2 vCPU, knock back to 1 vCPU if performance is affected. and only use vSMP if the VM can take advantage.

Example, VM with 4 vCPUs allocated!

My simple laymans explaination of the "scheduler!"

As you have assigned 4 vCPUs, to this VM, the VMware scheulder, has to wait until 4 cores are free and available, to do this, it has to pause the first cores, until the 4th is available, during this timeframe, the paused cores are not available for processes, this is my simplistic view, but bottom line is adding more vCPUs to a VM, may not give you the performance benefits you think, unless the VM, it's applications are optimised for additional vCPUs.

See here
http://www.vmware.com/resources/techresources/10131

see here
http://www.gabesvirtualworld.com/how-too-many-vcpus-can-negatively-affect-your-performance/

http://www.zdnet.com/virtual-cpus-the-overprovisioning-penalty-of-vcpu-to-pcpu-ratios-4010025185/

also there is a document here about the CPU scheduler

www.vmware.com/files/pdf/perf-vsphere-cpu_scheduler.pdf

https://blogs.vmware.com/vsphere/2013/10/does-corespersocket-affect-performance.html
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.

All Courses

From novice to tech pro — start learning today.