VMware ESX - Disabling hyper threading for a specific virtual machine
Description
Credits: Virtual Insanity.
How do I go about disabling hyper threading for a specific virtual machine while leaving the option enabled in the BIOS of the ESX host?
The Hyperthreading Sharing option on the properties tab of a virtual machine provides control of whether a virtual machine should be scheduled to share a physical processor given hyper-threading is enabled on the host. There are three (3) options for this setting:
- Any – This is the default setting. The vCPUs of this VM can freely share cores with other virtual CPUs on this or other virtual machines
- None – The vCPUs of this virtual machine have exclusive use of a processor whenever they are scheduled to the core.
- Internal – On a virtual machine with exactly two (2) vCPUs, the two (2) vCPUs are allowed to share one (1) physical core, but this virtual machine never shares a core with any other virtual machine. Note: if the virtual machine has any other number of vCPUs
These options have no effect on fairness or CPU time allocation. Regardless of a virtual machine’s hyper-threading setting it still receives the appropriate CPU time relative to CPU share and any CPU reservations or limits are honored. This setting can be adjusted regardless of the power state of the virtual machine.
Selecting the None option in effect disables hyper threading for your virtual machine.
Step-by-step guide
Right click the virtual machine > Properties
Click Advanced CPU:
Under "Hyperthreaded Core Sharing", use the drop down to select None:
Links
Virtual Insanity - Give Me the Whole Core and Nothing but the Whole Core
Related articles
© Stromasys, 1999-2024 - All the information is provided on the best effort basis, and might be changed anytime without notice. Information provided does not mean Stromasys commitment to any features described.