Hyper Threading and Virtual Machines

hyperthreadingkvm-virtualizationvirtualization

I already looked at this thread: Hyper-V and Hyper-threading: On or off?, but the only answer is Windows specific….

I am building a VM server (using Proxmox VE if that makes a difference) and was wondering about how hyper threading can affect virtual machines…

Specifically, if I max out the number of virtual machines, would hyper threading help, or hurt performance?

Also, the largest virtual machines will be a Terminal Server with ~30 clients (4 Cores/8 GB of RAM), and a file server if that helps.

Update: The server is a Dell R410 with a 1TB RAID 10, 32 GB of RAM and Dual Intel Xeon E5530 (I am not sure about the exact model, but it was an E55xx with 2+ Ghz)

Update: Most VMs will be on KVM.

Best Answer

In general, I leave HyperThreading ON for VM host servers (VMWare ESXi, KVM, HyperV, etc.). This applies to Intel Nehalem and newer CPUs (5500-series and greater). Additional threads available for scheduling multiple VMs.

You may also want to reevaluate the sizing of your guest systems. Typically, it's best to start small on the CPU allocation with virtual machines. Since you're talking about a terminal server, I'd actually move that to 2 virtual CPUs rather than 4 vCPUs. It's easier for the hypervisor to schedule CPU time for VMs with smaller core counts. RAM is still critical, though, so make sure to make plenty available.

See: http://omtconcepts.com/wp/?p=14

Related Topic