我有一台戴尔 XPS 13(开发者版),几年前购买的,预装了 Ubuntu 12.04。
我已经升级到 Ubuntu 16.04,从那时起我注意到我的计算机在执行某些繁重任务时变得比以前慢得多。
我还注意到,我的电脑在执行繁重任务时噪音小了很多,而且看起来我的 i7 的 Turbo boost 没有启动。
将工作发送给 4 个进程,turbostat
显示:
CPU Avg_MHz %Busy Bzy_MHz TSC_MHz
- 602 100.00 603 2595
0 611 100.00 611 2597
1 594 100.00 595 2594
2 610 100.00 612 2594
3 594 100.00 595 2594
我不是专家,但看起来涡轮增压器不起作用,对吗?
我该如何让它工作?我在网上找到的所有资料都只说使用turbostat
,但这并不能真正帮助解决问题。
任何想法?
我用burnK7
它来生成 CPU 负载。请注意,开始时列Bzy_MHz
接近 3 Ghz,但随后稳定在 1 Ghz 附近。这是正常的吗?
我的处理器:Intel® Core™ i7-3687U CPU @ 2.10GHz × 4
操作系统:Ubuntu 16.04.1 LTS 64 位
在重负载i7z
显示下:
它显示已启用 turbo 模式,但频率非常低,而且我确信对于完全相同的任务(此处编译 Scala 代码),在升级 Ubuntu 之前,计算机的噪音要大得多/速度要快得多。为什么会发生这种情况?
我关闭thermald
了:
sudo service thermald stop
我还获得以下输出cpupower
:
cpupower frequency-info
analyzing CPU 0:
driver: intel_pstate
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 0.97 ms.
hardware limits: 800 MHz - 3.30 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 1.98 GHz and 1.98 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 1.10 GHz.
boost state support:
Supported: yes
Active: yes
25500 MHz max turbo 4 active cores
25500 MHz max turbo 3 active cores
25500 MHz max turbo 2 active cores
25500 MHz max turbo 1 active cores
我注意到这实际上是一个移动目标范围,并且可能会受到启动/停止frequency should be within 1.98 GHz and 1.98 GHz.
的影响。thermald
我现在得到一个奇怪的结果:
current policy: frequency should be within 3.30 GHz and 3.30 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 800 MHz.
请注意,文件中的值似乎/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
在不断变化。
一些额外的turbostat
输出。
第一个是在负载阶段的开始阶段。开始时频率较高。
$ sudo turbostat --debug sleep 10
turbostat version 4.8 26-Sep, 2015 - Len Brown <[email protected]>
CPUID(0): GenuineIntel 13 CPUID levels; family:model:stepping 0x6:3a:9 (6:58:9)
CPUID(6): APERF, DTS, PTM, EPB
RAPL: 3855 sec. Joule Counter Range, at 17 Watts
cpu2: MSR_PLATFORM_INFO: 0x80815f0011a00
8 * 100 = 800 MHz max efficiency frequency
26 * 100 = 2600 MHz base frequency
cpu2: MSR_IA32_POWER_CTL: 0x0014005d (C1E auto-promotion: DISabled)
cpu2: MSR_TURBO_RATIO_LIMIT: 0x1f1f1f21
31 * 100 = 3100 MHz max turbo 4 active cores
31 * 100 = 3100 MHz max turbo 3 active cores
31 * 100 = 3100 MHz max turbo 2 active cores
33 * 100 = 3300 MHz max turbo 1 active cores
cpu2: MSR_CONFIG_TDP_NOMINAL: 0x00000015 (base_ratio=5)
cpu2: MSR_CONFIG_TDP_LEVEL_1: 0x00080070 (PKG_MIN_PWR_LVL1=0 PKG_MAX_PWR_LVL1=0 LVL1_RATIO=8 PKG_TDP_LVL1=112)
cpu2: MSR_CONFIG_TDP_LEVEL_2: 0x001a00c8 (PKG_MIN_PWR_LVL2=0 PKG_MAX_PWR_LVL2=0 LVL2_RATIO=10 PKG_TDP_LVL2=200)
cpu2: MSR_CONFIG_TDP_CONTROL: 0x00000000 ( lock=0)
cpu2: MSR_TURBO_ACTIVATION_RATIO: 0x00000014 (MAX_NON_TURBO_RATIO=20 lock=0)
cpu2: MSR_NHM_SNB_PKG_CST_CFG_CTL: 0x1e008405 (UNdemote-C3, UNdemote-C1, demote-C3, demote-C1, locked: pkg-cstate-limit=5: pc7s)
cpu0: MSR_IA32_ENERGY_PERF_BIAS: 0x00000006 (balanced)
cpu0: MSR_RAPL_POWER_UNIT: 0x000a1003 (0.125000 Watts, 0.000015 Joules, 0.000977 sec.)
cpu0: MSR_PKG_POWER_INFO: 0x00000088 (17 W TDP, RAPL 0 - 0 W, 0.000000 sec.)
cpu0: MSR_PKG_POWER_LIMIT: 0x800080fa00dc80c8 (locked)
cpu0: PKG Limit #1: ENabled (25.000000 Watts, 28.000000 sec, clamp DISabled)
cpu0: PKG Limit #2: ENabled (31.250000 Watts, 0.000977* sec, clamp DISabled)
cpu0: MSR_PP0_POLICY: 0
cpu0: MSR_PP0_POWER_LIMIT: 0x80000000 (locked)
cpu0: Cores Limit: DISabled (0.000000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_PP1_POLICY: 0
cpu0: MSR_PP1_POWER_LIMIT: 0x80000000 (locked)
cpu0: GFX Limit: DISabled (0.000000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_IA32_TEMPERATURE_TARGET: 0x00691200 (105 C)
cpu0: MSR_IA32_PACKAGE_THERM_STATUS: 0x880a0908 (95 C)
cpu0: MSR_IA32_THERM_STATUS: 0x880c0008 (93 C +/- 1)
cpu2: MSR_IA32_THERM_STATUS: 0x880a0008 (95 C +/- 1)
Core CPU Avg_MHz %Busy Bzy_MHz TSC_MHz SMI CPU%c1 CPU%c3 CPU%c6 CPU%c7 CoreTmp PkgTmp Pkg%pc2 Pkg%pc3 Pkg%pc6 Pkg%pc7 PkgWatt CorWatt GFXWatt
- - 1900 79.17 2406 2594 0 15.12 0.11 0.00 5.60 93 93 0.00 0.00 0.00 0.00 10.51 6.86 0.37
0 0 1893 78.90 2405 2594 1 16.29 0.16 0.00 4.65 89 93 0.00 0.00 0.00 0.00 10.51 6.86 0.37
0 1 2016 84.01 2406 2594 1 11.18
1 2 1982 82.61 2405 2594 1 10.78 0.06 0.00 6.55 93
1 3 1710 71.16 2408 2594 1 22.23
10.001067 sec
第二个是在负载下一段时间后 - 频率下降:
$ sudo turbostat --debug sleep 10
turbostat version 4.8 26-Sep, 2015 - Len Brown <[email protected]>
CPUID(0): GenuineIntel 13 CPUID levels; family:model:stepping 0x6:3a:9 (6:58:9)
CPUID(6): APERF, DTS, PTM, EPB
RAPL: 3855 sec. Joule Counter Range, at 17 Watts
cpu2: MSR_PLATFORM_INFO: 0x80815f0011a00
8 * 100 = 800 MHz max efficiency frequency
26 * 100 = 2600 MHz base frequency
cpu2: MSR_IA32_POWER_CTL: 0x0014005d (C1E auto-promotion: DISabled)
cpu2: MSR_TURBO_RATIO_LIMIT: 0x1f1f1f21
31 * 100 = 3100 MHz max turbo 4 active cores
31 * 100 = 3100 MHz max turbo 3 active cores
31 * 100 = 3100 MHz max turbo 2 active cores
33 * 100 = 3300 MHz max turbo 1 active cores
cpu2: MSR_CONFIG_TDP_NOMINAL: 0x00000015 (base_ratio=5)
cpu2: MSR_CONFIG_TDP_LEVEL_1: 0x00080070 (PKG_MIN_PWR_LVL1=0 PKG_MAX_PWR_LVL1=0 LVL1_RATIO=8 PKG_TDP_LVL1=112)
cpu2: MSR_CONFIG_TDP_LEVEL_2: 0x001a00c8 (PKG_MIN_PWR_LVL2=0 PKG_MAX_PWR_LVL2=0 LVL2_RATIO=10 PKG_TDP_LVL2=200)
cpu2: MSR_CONFIG_TDP_CONTROL: 0x00000000 ( lock=0)
cpu2: MSR_TURBO_ACTIVATION_RATIO: 0x00000014 (MAX_NON_TURBO_RATIO=20 lock=0)
cpu2: MSR_NHM_SNB_PKG_CST_CFG_CTL: 0x1e008405 (UNdemote-C3, UNdemote-C1, demote-C3, demote-C1, locked: pkg-cstate-limit=5: pc7s)
cpu0: MSR_IA32_ENERGY_PERF_BIAS: 0x00000006 (balanced)
cpu0: MSR_RAPL_POWER_UNIT: 0x000a1003 (0.125000 Watts, 0.000015 Joules, 0.000977 sec.)
cpu0: MSR_PKG_POWER_INFO: 0x00000088 (17 W TDP, RAPL 0 - 0 W, 0.000000 sec.)
cpu0: MSR_PKG_POWER_LIMIT: 0x800080fa00dc80c8 (locked)
cpu0: PKG Limit #1: ENabled (25.000000 Watts, 28.000000 sec, clamp DISabled)
cpu0: PKG Limit #2: ENabled (31.250000 Watts, 0.000977* sec, clamp DISabled)
cpu0: MSR_PP0_POLICY: 0
cpu0: MSR_PP0_POWER_LIMIT: 0x80000000 (locked)
cpu0: Cores Limit: DISabled (0.000000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_PP1_POLICY: 0
cpu0: MSR_PP1_POWER_LIMIT: 0x80000000 (locked)
cpu0: GFX Limit: DISabled (0.000000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_IA32_TEMPERATURE_TARGET: 0x00691200 (105 C)
cpu0: MSR_IA32_PACKAGE_THERM_STATUS: 0x881b0908 (78 C)
cpu0: MSR_IA32_THERM_STATUS: 0x881e0008 (75 C +/- 1)
cpu2: MSR_IA32_THERM_STATUS: 0x881b0008 (78 C +/- 1)
Core CPU Avg_MHz %Busy Bzy_MHz TSC_MHz SMI CPU%c1 CPU%c3 CPU%c6 CPU%c7 CoreTmp PkgTmp Pkg%pc2 Pkg%pc3 Pkg%pc6 Pkg%pc7 PkgWatt CorWatt GFXWatt
- - 30 2.79 1091 2594 0 6.92 0.30 0.00 89.99 70 71 1.60 0.03 1.48 47.85 3.65 0.71 0.29
0 0 22 1.97 1133 2594 0 6.34 0.12 0.00 91.58 70 71 1.60 0.03 1.48 47.85 3.65 0.71 0.29
0 1 38 3.09 1224 2594 0 5.22
1 2 25 2.45 1016 2594 0 8.67 0.47 0.00 88.40 70
1 3 37 3.67 1006 2594 0 7.45
10.001501 sec
在负载阶段开始时,我的 CPU 似乎会变得非常热,接近 105°,这是 CPU 的结温,然后系统会阻止它们自我散热并将频率显著降低到最低。
我希望在高负载下处理器的发热较低,并且当处理器发热时,降低处理器的功耗。这可能吗?
我为解决我的问题而打开的相关问题(可能包含这里未提及的可能有用的其他信息):
答案1
我想知道 CPU 是否被电源限制了。如果你运行 top,你可能会看到 kidle_inject 线程正在运行,如果是这样,CPU 被电源限制为热约束,因此你会看到明显的 100% 利用率和较低的 CPU 频率。
答案2
我的 i5 也遇到了同样的问题。请检查您的驱动程序实用程序。16.04 需要英特尔处理器的附加驱动程序。我认为安装intel-microcode
就可以了(当然重新启动后)。请告诉我结果如何。