CPU limit similar to CPU over subs?

CPU limit will restrict all QEMU processes belonging to that VM to use as much as cpulimit cores in the host. So even if you have sockets=1, cores=4, setting cpulimit=2 will make QEMU to not use more than 2 cores in the host. In that example, if you use more than 2 cores in the VM, you will see steal time as the host isn't allowing the VM to use more than the processing power of 2 host cores.

QEMU need CPU for other tasks than just running a guest OS or applications, like managing disk access, network traffic, etc. Using cpulimit helps restricting a VM to use that amount of host processing capacity.
 
If you set cpulimit, the VM will never use more than cpulimit host cores, even if no other VM requires CPU time, so you are effectively limiting the VM processing capacity "unnecessarily".

My concept of "cpu over subscription" is more like "let's give every VM a little bit more cores so when they eventually need it they can execute more processes faster and let's hope that not every VM will require all their cores at the same time. And if that ever happens, I would use cpulimit and/or CPU units to prioritize some VMs over others".
 

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!