当前位置: 首页>>技术教程>>正文


intel – Turbo Boost是否正常工作?

,

问题描述

我最近购买了一台带有沙桥CPU的笔记本电脑,该笔记本应该具有turbo boost。 11.04是否支持涡轮增压?我怎么知道它是否有效?

我尝试了this,但它似乎只能检测Nehalem CPU。

最佳思路

11.04运行2..6.38内核,该内核应该可以与Sandy Bridge CPU配合使用。

您可以打开一个终端并运行grep MHz /proc/cpuinfo。然后打开第二个终端选项卡,并运行类似while :; do :; done的循环。在第一个终端中,再次运行grep MHz /proc/cpuinfo。您应该看到其中一个核心频率更高:

$ grep MHz /proc/cpuinfo 
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 3701.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000

您还可以尝试从linux-tools-common软件包中尝试powertopturbostat(在sudo turbostat之前运行sudo modprobe msr)。 i7z的SVN版本应该适用于Sandry Bridge(并且适用于台式机i7的我)。

次佳思路

为此,请使用sudo turbostat。即使启用并激活了Turbo Boost,cat /proc/cpuinfo的输出也不总是显示当前的当前CPU频率,而是最大非涡轮频率。

如elmicha的答案中所述,您需要使用sudo modprobe msr加载msr模块,然后使用sudo turbostat运行turbostat。

第三种思路

要安装turbostat,您需要运行:

$ sudo apt-get install linux-tools-common linux-tools-generic

(显然,我没有信誉将此评论添加到@ david-gardner帖子中)

第四种思路

接受最高投票的答案并不总是有效

正如第二个投票最多的答案所指出的那样,投票最多并被接受的答案有时显示出最大的常规频率。

备用CLI方法

在下面,您可以看到0号CPU的频率。要查看所有CPU,请将0替换为*。频率以MHz表示,小数点后三位。因此1000000 = 1000 MHz = 1 GHz。此Intel Skylake处理器在启用Turbo Boost的情况下额定为2.6 GHz或3.5 GHz。

最低频率800 MHz

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
800000

最高频率3500 MHz(3.5 GHz)

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
3500000

当前频率1027.669 MHz(1.028 GHz)

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
1027669

YouTube加载时的CPU 0到7频率

$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq
2754249
2700098
2842167
2700270
1359287
901937
1662780
1731062

8个处理器中有4个处于加速模式(2.6 GHz以上)

YouTube暂停时的CPU 0到7频率

$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq
808913
800029
800022
800004
800001
800001
800013
800009

即使Chrome浏览器在两个屏幕上运行且打开了11个标签,但YouTube暂停了,所有处理器的最低速度均为800 MHz。

是否启用了Intel Turbo Boost?

使用终端,您可以检查是否已启用Turbo Boost功能:

$ cat /sys/devices/system/cpu/intel_pstate/no_turbo
0

这是双重否定。当”no turbo”关闭(= 0)时,Turbo Boost打开。

要禁用Turbo Boost,请使用sudo电源并将开关no_turbo设置为1

$ echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
1

返回的1指示涡轮现已关闭。


使用Conky的替代GUI方法

其他答案提到基本CLI(命令行界面)的替代方法。我喜欢使用Conky来做到这一点。在下面的示例中,Skylake CPU的常规频率为800 MHz至2600 Mhz。启用涡轮增压后,在重载下频率可以跳至3500 MHz。

下面的.gif示例首先显示当grep在整个文件系统上运行时,在重负载下频率在3100 MHz附近波动。然后发出命令:

$ echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo

…关闭涡轮增压。速度下降到2600 MHz的固定速度,这是不带涡轮的常规最大速度。

然后,将turbo命令反转:

$ echo "0" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo

…重新打开涡轮,速度跳升至2600 MHz以上,并在3100至3200 MHz附近再次波动。

请注意,打开Turbo时,温度跳变10度的速度

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/7969.html,未经允许,请勿转载。