Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 482
  • Last Modified:

VMware CPU configurations

I am a bit confused with the terms:-

Number of virtual sockets

Number of cores per socket

Can you explain what these mean ? How should I do use these configurations, if I have a server which needs to have 4 cores, how should I configure these options ?

Thanks
0
rakkad
Asked:
rakkad
  • 5
  • 4
1 Solution
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
When creating a virtual machine, the best thing to do is ignore cores unless you have a specific licensing requirement with the OS or Application.

So, that leaves allocating sockets, e.g. virtual CPUs per Virtual Machine.

I would always start with a single vCPU, per VM, and increase if you require more performance. Very few VMs need more than 2 or 4 vCPUs.

Also not, that adding many vCPUs per VM, can cause a VM to run more slowly.

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
 
rakkadAuthor Commented:
Thanks for your comments, but still unsure
I would like to know the two sections listed above and what they actually mean ?

So a VM with 4vCPU would I assign it as:- 4 for virtual sockets and 1 core ?
0
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
That's correct.

If you want 4 vCPU, just assign 4 sockets.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
rakkadAuthor Commented:
So how do I determine when to use cores section ?
0
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
If you have a specific license requirement, where the software you are using is restricted to cores,

see here also

http://blogs.vmware.com/vsphere/2013/10/does-corespersocket-affect-performance.html
0
 
rakkadAuthor Commented:
I have had a request to setup a VM which has 8 cores, could this be mis-leading as does it really need to be 8 virtual sockets and 1 core ?

If I was to set it up as 1 virtual socket and 8 cores, what performance impact would this have on the VM guest, other VM guests in the host and how would the vCPU be presented in the VM ?

If setting a VM guest is using more cores and using virtual sockets is this best practice ?

Thanks
0
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
If you've had a VM request to setup 8 Cores, usually that's interpreted as 8 vCPUs!

(which = 8 physical cores on the host processor!)

It's the same.

but also read this:-

http://blogs.vmware.com/vsphere/2013/10/does-corespersocket-affect-performance.html

Personally, I would setup 8 Sockets!

In the VM, you would have a VM, with 8 CPUS!
0
 
rakkadAuthor Commented:
I've requested that this question be closed as follows:

Accepted answer: 0 points for rakkad's comment #a40015968

for the following reason:

This provided a good background information
0
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
If the Answer was helpful, please Assign points.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

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