VMware Cloud Community
adonix
Contributor
Contributor

VMWare VM Config (vCPU/Sockets)

Hi everyone,

I have a question about the VMWare infrastructure.
We are working on an hyperconverged infra based on Nutanix with 6 nodes. Each node has one of two sockets used by a 16 core / 32 thread intel i7 CPU.

Assuming that a VM can only run on a single node at the same time, I ask my self if it's usefull that some VM got multiple sockets in their configuration (see the screenshots) ? Because if we ask the VM about its config we can see that she effectively has 8 vCPU/2 sockets wich is not possible in fact. So what are the best practice in our case ? Do all the VM must have 1 socket in their configuration ?

Thank you very much for your answers.

Antony

Reply
0 Kudos
3 Replies
scott28tt
VMware Employee
VMware Employee

Expect a moderator to move your thread to the vSphere area now that I've reported it, {code} is for SDK matters.

 


-------------------------------------------------------------------------------------------------------------------------------------------------------------

Although I am a VMware employee I contribute to VMware Communities voluntarily (ie. not in any official capacity)
VMware Training & Certification blog
Reply
0 Kudos
IRIX201110141
Champion
Champion

Short answer... it doesnt matter!

In the old days VMware always present sockets and with vSphere 4.x they make it possible to present vCores by editing the *.vmx and later it was possible trough the GUI. Reason was quite simple

  • Microsoft Desktop OS was limited to max. 2 Sockets
  • Microsoft Server OS was licensed to Sockets
  • Old OS select a HAL during installation and changing later was not possible or risky
  • 3rd. Party Software was often licensed to Sockets

So when adding more CPU resources to a VM it must be possible to present cores rather than sockets. Most of the reasons doesnt exist anymore.

As long as you stay within your NUMA boundary it doesnt matter if you select 1x8 or 8x1.

Regards,
Joerg

Reply
0 Kudos
vbondzio
VMware Employee
VMware Employee

The long answer is that it does matter .. yes, it was introduced for licensing reasons but when operating systems and applications started using topology for scheduling and placement, it also became relevant for performance.

Check out: https://communities.vmware.com/t5/ESXi-Discussions/cores-vs-sockets-disks-vs-controllers/m-p/2829364... I try to explain why the "leave it at 1" point of view is right, but not all there is.

Just 2 days ago, we improved performance for an IO benchmark for PMEM when adjusting the CPS to match the underlying HW topology. Match here means not 2 vSockets if there are 2 pSockets but rather that when the # of vCPUs in the VM fit into pSocket, there should only be one.

There is a lot more to say but: https://flings.vmware.com/virtual-machine-compute-optimizer should give you some good answers.

P.S.
VMware with a lower case w please 🙂

Reply
0 Kudos