What is the use of the VCPU setting?

Eraser

Active Member
Sep 17, 2019
14
1
43
43
I try to understand the VCPU setting.

My host has 6 cores with 12 threads.
I assign 4 cores to a Windows VM but I set VCPU to 2 (default was 4).

After starting the VM I see that I have 2 virtual cores in Windows. When I stress them, no more than 2 threads on the host are used on 100%. I cannot change the number of VCPU's while the VM is running. So setting more cores than VCPU's seems pointless because there is no way I can effect the speed of my VM in an upward way while it is running.

If it really is pointless, then why use a VCPU setting? Why not just use a fixed VCPU calculation (sockets*cores = VCPU)?
 
If you enable CPU hotplug (in the VM settings and maybe do some preparing inside the VM depending on the OS), then you can change the VCPUs between 1 and the number of cores you assigned to the VM.
 
  • Like
Reactions: Eraser
If you enable CPU hotplug (in the VM settings and maybe do some preparing inside the VM depending on the OS), then you can change the VCPUs between 1 and the number of cores you assigned to the VM.
So that's it. And it is only working for some Windows Server editions.
Thank you. I know enough.