qm: resource limits: reword cpulimit section

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Thomas Lamprecht 2024-02-20 13:28:46 +01:00
parent b3848f246c
commit 0186a4671a

21
qm.adoc
View File

@ -347,16 +347,19 @@ fully it would theoretically use `400%`. In reality the usage may be even a bit
higher as QEMU can have additional threads for VM peripherals besides the vCPU higher as QEMU can have additional threads for VM peripherals besides the vCPU
core ones. core ones.
This setting can be useful if a VM should have multiple vCPUs, as it runs a few This setting can be useful when a VM should have multiple vCPUs because it is
processes in parallel, but the VM as a whole should not be able to run all running some processes in parallel, but the VM as a whole should not be able to
vCPUs at 100% at the same time. run all vCPUs at 100% at the same time.
Using a specific example: lets say we have a VM which would profit from having For example, suppose you have a virtual machine that would benefit from having 8
8 vCPUs, but at no time all of those 8 cores should run at full load - as this virtual CPUs, but you don't want the VM to be able to max out all 8 cores
would make the server so overloaded that other VMs and CTs would get too less running at full load - because that would overload the server and leave other
CPU. So, we set the *cpulimit* limit to `4.0` (=400%). If we now fully utilize virtual machines and containers with too little CPU time. To solve this, you
all 8 vCPUs, they will receive maximum 50% CPU time of the physical cores. But could set *cpulimit* to `4.0` (=400%). This means that if the VM fully utilizes
with only 4 vCPUs fully utilized, they could still get up to 100% CPU time. all 8 virtual CPUs by running 8 processes simultaneously, each vCPU will receive
a maximum of 50% CPU time from the physical cores. However, if the VM workload
only fully utilizes 4 virtual CPUs, it could still receive up to 100% CPU time
from a physical core, for a total of 400%.
NOTE: VMs can, depending on their configuration, use additional threads, such NOTE: VMs can, depending on their configuration, use additional threads, such
as for networking or IO operations but also live migration. Thus a VM can show as for networking or IO operations but also live migration. Thus a VM can show