计算机 CPU 频率在需要时没有足够高 - Ubuntu 20.04

计算机 CPU 频率在需要时没有足够高 - Ubuntu 20.04

自从两周前我开始使用这台笔记本电脑以来,我一直在处理这个问题。

问题

我的 CPU 频率不够高,无法处理负载。我经常进行视频通话、在浏览器中加载大量打开的标签或处理其他 CPU 密集型任务,然后开始遇到大量延迟。所有核心的负载都很高(>50% 的利用率),但 CPU 时钟频率将保持在 ~1.8 GHz - ~2.5GHz。

例如,我刚运行了stress --cpu 8大约 10 分钟,时钟速度保持在 1.5 GHz - 2 GHz 之间。我在开始测试之前一直在监控时钟速度,它从 0.9GHz 跳升至 3.7GHz,没有太多负载。我取消压力测试后,看到频率跳升至 3GHz。

负载下 CPU 温度保持在 ~65C。

我正在使用 Conky 来监控我所有的 CPU 核心和核心 1 的 CPU 时钟。

硬件/内核详细信息:

  • 品牌:Thinkpad x1 carbon
  • 中央处理器
$ lshw
...
*-cpu
          product: Intel(R) Core(TM) i7-10510U CPU @ 1.80GHz
          vendor: Intel Corp.
          physical id: 1
          bus info: cpu@0
          size: 2972MHz
          capacity: 4900MHz
          width: 64 bits
          capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp x86-64 constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d arch_capabilities cpufreq

$ uname -r
5.6.0-1052-oem

涡轮增压器在负载下输出滞后

$ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,IRQ,PkgWatt,PkgTmp,RAMWatt,GFXWatt --interval 6

Busy%   Bzy_MHz IRQ PkgTmp  PkgWatt GFXWatt RAMWatt
55.37   1352    98119   57  10.97   2.37    3.75
53.43   1414    132465  56  11.17   2.36    3.55
49.71   1470    128673  56  11.42   2.45    3.56
50.21   1455    129684  56  11.31   2.43    3.60
41.15   2492    131557  62  20.13   3.82    3.78
39.81   2561    131130  64  20.70   3.85    3.76
41.53   2407    131378  66  19.57   4.31    3.81
41.78   2492    131734  64  20.28   3.91    3.83
41.48   2452    130806  68  19.88   4.14    3.85
47.94   1938    130603  62  16.43   3.46    3.82
68.25   1171    129429  61  10.26   2.19    3.96
64.86   1216    131459  61  10.35   2.21    3.86
56.14   1354    129995  60  10.97   2.35    3.72
54.51   1356    129416  60  10.99   2.40    3.66
63.16   1267    129485  59  10.71   2.33    3.87
58.73   1311    132553  59  10.91   2.38    3.83
61.86   1288    131903  59  10.73   2.27    3.81
55.82   1339    128049  58  10.96   2.42    3.76
62.74   1281    129955  59  10.71   2.32    3.80
57.96   1333    128945  58  10.97   2.41    3.79
61.43   1273    129570  58  10.72   2.38    3.86
62.81   1288    130978  58  10.78   2.32    3.90
62.85   1258    128470  58  10.66   2.34    3.89
55.01   1340    127076  58  10.96   2.41    3.77
57.68   1321    127928  58  10.95   2.44    3.80
57.93   1312    127952  57  10.90   2.41    3.80
54.89   1389    129539  58  11.23   2.45    3.74
60.54   1277    129562  57  10.73   2.35    3.89
61.12   1291    128635  57  10.89   2.37    3.91
60.87   1309    129185  57  10.86   2.33    3.83
58.57   1319    129387  57  10.97   2.40    3.85

我尝试过的事情

  • apt 更新 && apt 升级
  • cpupower 频率设置 --governor 性能

我正在考虑尝试内核升级,但想先在这里问一下。

编辑 1:添加轻负载的涡轮增压器输出:

$ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,IRQ,PkgWatt,PkgTmp,RAMWatt,GFXWatt --interval 6
Busy% Bzy_MHz IRQ PkgTmp PkgWatt GFXWatt RAMWatt
 4.27 4513    15448 61   15.52   0.03    0.81
 4.47 4514     9967 70   15.90   0.02    0.82
 3.23 4573    10277 88   14.04   0.02    0.78
 3.63 4573     9790 95   14.85   0.03    0.79
 2.86 4683     7478 88   14.30   0.03    0.79
 4.80 4469    10917 67   16.06   0.09    0.87
 8.90 4429    20269 59   25.62   0.68    1.61

编辑 2:笔记本电脑放在桌面上,驱动 2 个显示器。它经过重新设计,现在放在一个升高的支架上,效果好多了。最近几天它只有 1 个外接显示器。没有节流问题。现在又添加了第二个显示器。如果问题再次出现,我会报告:

Busy% Bzy_MHz IRQ PkgTmp PkgWatt GFXWatt RAMWatt
13.33 2847  87808     62   15.33    1.12    2.44
14.58 2830  88613     61   15.60    1.15    2.45
22.07 2252  90592     58   13.34    2.07    2.75
22.01 2229  91650     58   13.24    2.24    2.77

答案1

请注意,在 CPU 频率上限范围内,处理器能耗是高度非线性的。我的处理器 (i5-10600K) 与您的处理器非常相似,可以提供相关示例。我将仅加载 1 个 CPU 并进行 prime95 最高热量折磨测试,并在测试时间内逐渐将最大 CPU 频率从最小扫描到最大:

doug@s19:~$ sudo /home/doug/temp-k-git/linux/tools/power/x86/turbostat/turbostat --Summary --quiet --show Busy%,Bzy_MHz,IRQ,PkgWatt,PkgTmp,RAMWatt,GFXWatt --interval 15
Busy%   Bzy_MHz IRQ     PkgTmp  PkgWatt GFXWatt RAMWatt
8.85    800     22017   35      2.21    0.00    0.89
8.83    890     21963   35      2.31    0.00    0.89
8.77    993     21810   35      2.48    0.00    0.89
8.81    1192    22103   35      2.83    0.00    0.89
8.84    1482    22287   35      3.70    0.00    0.89
8.93    1692    22300   35      4.32    0.00    0.89
8.94    1991    22429   36      5.31    0.00    0.89
9.07    2192    22207   37      6.23    0.00    0.89
9.12    2392    18979   37      6.97    0.00    0.89
9.12    2689    18247   39      8.40    0.00    0.89
9.18    2892    18159   40      9.57    0.00    0.89
9.17    3180    18277   41      11.77   0.00    0.89
9.10    3387    17853   42      13.21   0.00    0.89
9.15    3589    18162   43      15.15   0.00    0.89
9.20    3889    18248   47      19.15   0.00    0.89
9.05    4092    17910   50      22.42   0.00    0.89
9.21    4389    18033   54      28.01   0.00    0.89
9.06    4588    18081   59      33.60   0.00    0.89
9.20    4792    18095   63      39.60   0.00    0.89
9.14    4800    17791   64      39.65   0.00    0.89
9.26    4800    17620   64      40.09   0.00    0.89
9.02    4800    18045   64      40.03   0.00    0.89
9.15    4800    17974   64      40.11   0.00    0.89

请注意,即使只加载一个 CPU,在最高 CPU 频率下,处理器封装功率也达到 40 瓦,远高于处理器的能力。对于水冷系统来说,温度也相当高。为什么?因为热源高度集中。值得注意的是,我的散热器冷却风扇甚至还没有开始旋转。

现在,让我们再试一次,装载 8 个 CPU,因为这就是你所拥有的:

doug@s19:~$ sudo /home/doug/temp-k-git/linux/tools/power/x86/turbostat/turbostat --Summary --quiet --show Busy%,Bzy_MHz,IRQ,PkgWatt,PkgTmp,RAMWatt,GFXWatt --interval 15
Busy%   Bzy_MHz IRQ     PkgTmp  PkgWatt GFXWatt RAMWatt
66.63   800     130786  37      7.27    0.00    0.89
66.64   987     131850  37      8.44    0.00    0.89
66.62   1177    130848  37      10.16   0.00    0.89
66.59   1483    130346  39      13.60   0.00    0.89
66.58   1690    129868  39      15.96   0.00    0.89
66.57   1989    129622  41      19.91   0.00    0.89
66.56   2189    130280  41      22.92   0.00    0.89
66.56   2390    130588  42      25.86   0.00    0.89
66.55   2688    129897  44      31.89   0.00    0.89
66.54   2700    130524  44      32.41   0.00    0.89
66.55   2884    129650  46      36.63   0.00    0.89
66.54   3187    130104  48      44.98   0.00    0.89
66.54   3391    130259  50      51.37   0.00    0.89
66.54   3587    131023  52      58.51   0.00    0.89
66.54   3882    130983  57      73.29   0.00    0.89
66.54   4092    129813  60      85.79   0.00    0.89
66.53   4347    129923  66      103.83  0.00    0.89
66.53   4588    129581  73      126.47  0.00    0.89
66.35   4575    129285  73      125.49  0.00    0.89
66.44   4580    129205  73      124.91  0.00    0.89
66.43   4579    129734  74      124.90  0.00    0.89

请注意,CPU 高频率时相对于低频率时的功率变化非常大(尽管频率是手动扫描的,但时间非常接近)。

还要注意,处理器的默认功率限制约为 1.7 GHz。 prime95 严酷测试非常残酷,在节流之前,典型使用应该获得更多。

旁注:示例处理器对最后 3 个样本进行功率限制。

结论:您的处理器正在适当节流以保护自身。

相关内容