VMware Cloud Community
andvm
Hot Shot
Hot Shot

allocating VM vCPU and Sockets with NUMA in mind

Still find this topic a bit confusing as on one hand I see how the technology works and its benefits and that from 6.5 onwards NUMA config optimizes automatically but on other hand I still need some practical examples to see if I can still make a difference when create VM's.

Ex: On an Intel Host with 2 Sockets and 16 Cores Per Socket for a total of 64 Logical Processors (with HT) and 560TB of Memory.

Does it mean this Server would have 2x NUMA domains with each having 280TB Memory directly connected?

When create new VM's, when should I choose 1 socket vs 2 sockets? Should I ever choose more sockets ex: 4?

Say I want to create a huge VM of 48 vCPU, do I need to bother about how I allocate the vCPU per Socket? If I select 2 sockets with 24 vCPU each does it mean this will result in 2 vNUMA of 24 vCPU each, is this the recommended setup?

Thanks

Reply
0 Kudos
1 Reply
Tibmeister
Expert
Expert

With Intel, the NUMA node is the socket, so yes, in this context you have two NUMA nodes on the machine, each with half the total RAM.

As for the VM configuration, leaving the default 1 core per socket configuration will allow vNUMA to work (with under 8 vCPU's) and allow the hypervisor to make the decisions.
With most vendors moving to a per core licensing instead of per socket, the old discussion of needing more than one core per socket in the VM config doesn't much apply, unless you have something still running under the old license model like that.  Otherwise, assign the number of CPU's you need and don't mess with the cores per socket config.

Also, do you really need that many CPU's?  Make sure to watch your Co-Stop and RDY numbers, along with IOWAIT.