If you are going to build a VMware infrastructure, do you consider the hyperthreading feature of the CPU in order to have more VMs per server.
Example:
2 x 10 cores = 20 cores (physical)
40 cores (with hyperthreaading)
I assume that 75% will be used for VMs and 1 vCPU per VM
1. 15 VMs for physical
2. 30 VMs with hyperthreading
which is better architecture, relying on physical cores or it is safe to use the hyperthreading feature for VM deployment.
lastly, If i am going to use physical cores, is it safe that I assume 1 physical core = 4 vCPU?
thanks!
You should not account hyper-threading, you are still sharing the physical core. Here is a good article regarding sizing and hyper-threading Hyper-Threading Gotcha with Virtual Machine vCPU Sizing - Wahl Network
is it safe that I assume 1 physical core = 4 vCPU?
You should never assume anything in a design unless the assumption can be validated, in case of oversubscription, you should confirm your workload will not suffer of performance degradation if cpu utilisation increases. You really need to understand the workload and patterns of usage.
Hi,
In my opinion and experience it is best to size without including hyper-threading as you can't guarantee how much hyper-threading is realistically going to give you.
pCPU to vCPU ratio depends on your over-allocation ratio which you calculate based on required number of hosts so you do sizing based on the number machines running at peak and then do the two following calculations
Total CPU required for total virtual machines at peak | = # of ESXi Hosts Required |
Available CPU per ESXi Host |
Total RAM required for total virtual machines at peak | = # of ESXi Hosts Required |
Available RAM per ESXi Host |
Now when calculating you said 75% so the available cpu and ram per host needs to be 75% of the true amount
You should not account hyper-threading, you are still sharing the physical core. Here is a good article regarding sizing and hyper-threading Hyper-Threading Gotcha with Virtual Machine vCPU Sizing - Wahl Network
is it safe that I assume 1 physical core = 4 vCPU?
You should never assume anything in a design unless the assumption can be validated, in case of oversubscription, you should confirm your workload will not suffer of performance degradation if cpu utilisation increases. You really need to understand the workload and patterns of usage.
Thanks!