What is the use of the VCPU setting?

Eraser

Member
Sep 17, 2019
14
1
23
42
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.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!