具有 1 个 vCPU 的 KVM 的 CPU 负载超过 1

具有 1 个 vCPU 的 KVM 的 CPU 负载超过 1

我在一台具有 4 核的机器上用 1 个 vCPU 运行一个 KVM。

lscpu在 KVM 中为我提供了 1 个具有 1 个核心的 CPU:

Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   43 bits physical, 48 bits virtual
CPU(s):                          1
On-line CPU(s) list:             0
Thread(s) per core:              1
Core(s) per socket:              1
Socket(s):                       1
NUMA node(s):                    1
Vendor ID:                       GenuineIntel
CPU family:                      6
Model:                           13
Model name:                      QEMU Virtual CPU version 2.5+
Stepping:                        3
CPU MHz:                         2300.000
BogoMIPS:                        4600.00
Hypervisor vendor:               KVM
Virtualization type:             full
L1d cache:                       32 KiB
L1i cache:                       32 KiB
L2 cache:                        4 MiB
L3 cache:                        16 MiB
NUMA node0 CPU(s):               0
Vulnerability Itlb multihit:     KVM: Vulnerable
Vulnerability L1tf:              Mitigation; PTE Inversion
Vulnerability Mds:               Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown
Vulnerability Meltdown:          Mitigation; PTI
Vulnerability Spec store bypass: Vulnerable
Vulnerability Spectre v1:        Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:        Mitigation; Full generic retpoline, STIBP disabled, RSB filling
Vulnerability Srbds:             Not affected
Vulnerability Tsx async abort:   Not affected
Flags:                           fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pse36 clflush mmx fxsr sse sse2 syscall nx lm rep_good nopl xtopology cpuid tsc_known_freq pni cx16
                                  x2apic hypervisor lahf_lm cpuid_fault pti

但是当我top在 KVM 中运行时,平均负载有时会超过 2 或 3,就好像我的 KVM 有超过 1 个核心一样。这是为什么?有没有办法纠正 top 显示的负载,使其与 KVM 的 1 个 vCPU 保持一致?

答案1

平均负载与正在运行或准备运行的任务数量成正比。它不反映 CPU 的数量。

间接地,您可以使用它来计算利用率指标。平均负载与 CPU 的比率的含义取决于工作负载。当该比率超过 1 时,一些计算量很大的应用程序的响应时间会很差。其他应用程序可以容忍稍高一点的比率。极端条件下的主机可以达到数十甚至更多,而不会完全卡住。

相关内容