Apologize if this is an oft repeated query ...but the answers on these have been ambiguous
I know i saw pointers for both a HT enabled logical processor as a pCPU in a vmware doc and also otherwise...
So if i have a dual socket 8 core machine with HT enabled given it 32 vCPU ...does it have 32 pCPU or 16 pCPU....and would i be overcomitting if i had 3 8 vCPU VMs + 1 4 vCPU VM on this host ?
or always a safe bet to have only 2 8vCPU VMs on this host
Appreciate inputs!
You have 16 PCPU and you should assign up to 16 vCPUs to all VMs on the host when you have sensitive workload such as SQL Server, Oracle or ..... .
But if you have normal workload and normal environment such as virtual desktop you can assign up to 32 virtual CPUs.
Always, 1:1 CPU assignment is the best for achieve best performance but 1:3 (PCPU:VCPU) is always fine, of curse, if you don't have high CPU ready on your VMs.
Always, try to right sizing before implementation.
To through new terminology: Logical CPU (LCPU) - LCPU is the term VMware uses to identify where a vCPU can be scheduled, A LCPU is either a physical core or a hyperthreaded core - so you machine has 32 LCPUs. and 16 PCPUs -
Yes a 1:1 ratio of VCPU to LCPU will give you best performance but you will sorely underutilizing the resources on the ESXi host. My experience with vSphere 5.5 and normal workloads you should comfortably be to sustain a ratio of 8:1 VCPU to LCPU - but you do have to pay special attention to those DB/messaging workloads but it always best to get an assessment of the load being generated by the machines you are virtualizing -
And remember VMware best practice is to start with fewer VCPUs - ideally you should start with a single VCPU and more only if needed.