VMware Cloud Community
slayer0605
Contributor
Contributor

ESX 4.1 and Hyperthreading

After lots of searching and reading I still cannot answer a question I have so hopefully someone can answer for me.

We currently have 5 servers in a cluster, each with  2 x quad core processors and hyperthreading enabled and I am being asked if we can accommodate an 8 vCPU VM in the cluster. My understanding, and please correct me if i am wrong,  is that for the vm to be scheduled it would need to wait for 8 logical cpu's to be available. Does that 8 mean actual physical cores or can it be made up of logical cores also?

Reply
0 Kudos
4 Replies
rcporto
Leadership
Leadership

You can create a VM with number of vCPU equal to number of logical processors, but I will recommend you create a VM with no more than number of pphysical cores, take a look here: Hyper-Threading Gotcha with Virtual Machine vCPU Sizing - Wahl Network

---

Richardson Porto
Senior Infrastructure Specialist
LinkedIn: http://linkedin.com/in/richardsonporto
Reply
0 Kudos
GaneshNetworks

Capture.JPG

Gotcha: A single VM should not have more than 32 (4*8) vCPUs in the above case.

The understanding from the link is to consider the physical core as a threshold, not logical cores. Correct me, If am wrong Richardson.

~GaneshNetworks™~ If you found this or other information useful, please consider awarding points for "Correct" or "Helpful".
Reply
0 Kudos
slayer0605
Contributor
Contributor

Thanks for the reply and agree with that and won't be creating more vCPU's than physical cores but what I want to understand is how the VM is scheduled across those cores, does it have to wait for 8 physical cores to be available before it is scheduled or can it be across 4 physical cores and 4 logical cores?

Reply
0 Kudos
karthikelango
Enthusiast
Enthusiast

Hi

A VM can be created with maximum of 64vCPUs. In your case you have 2 x quad core processor = 8 cores and if hyper threading is enabled you will get = 16 cores. you can configure you Virtual machine with more than 16 processors. The CPU is schedule to all the VMs. If more thread is available your vm will get more threads. What ever available CPU's only be allocated to your vm even if it has more vCPUs.

Thanks.

Reply
0 Kudos