Hi,
I am quite new to ESXi and have been using 4.1 and now 5, i have servers running hyperthreading and have read mixed reports about utilising all of the cores for the VMs.
If for example i have 2 x 6 cores processors,hyperthreaded are you ok to use all 24 cores? I presume you also leave a few for ESXi to use?
Thanks
Zac
Yes, enable hyperthreading, it is supported and recommended.
Yes, enable hyperthreading, it is supported and recommended.
Thanks for the quick reply.
So would you use them all if you needed to or would you always leave some for ESXi?
zacvmnovice wrote:
Thanks for the quick reply.
So would you use them all if you needed to or would you always leave some for ESXi?
Not sure what you are asking. Hyperthreading isn't what it used to be. It was idle threads. Intel / AMD uses split core technology where the logical cores are actual core (processors) not an idle thread, so you essentially get double processors, which is better performance.
ESXi will use ALL cores (logical included) to thread aLL the VM vCPU, so it will utilize the core for VM and internal processes.
Hyperthreading is not like real cores. ESXi is aware of Hyperhreading though and starting with the Nehalem CPUs (55xx) you can benefit from enabling Hyperthreading (10-30% according to different documentation). ESXi does a pretty good job on scheduling the cores (vCPUs), however it is best practice to assign only as many vCPUs to a VM as really needed. Depending on the workload of the VM's you have you may be able to overcommit vCPUs.
André
So the answer is i can use all cores if i ever was required to and would not have to worry about leaving any spare for the hypervisor?
Thank you all for your answers
Zac
So the answer is i can use all cores if i ever was required to and would not have to worry about leaving any spare for the hypervisor?
You certainly have to worry about the Hypervisor. However, the CPU scheduler usually makes sure the Hypervisor gets enough CPU cycles to work properly. Unless you only run VMs which consume 100% CPU, you may overcommit vCPUs.
André