我尝试了this,但似乎只能检测到Nehalem处理器。
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
turbostat
(在sudo turbostat
之前运行sudo modprobe msr
)。i7z的Git版本据说适用于Sandy Bridge(对我使用的桌面i7也有效)。使用sudo turbostat
来进行此操作。 cat /proc/cpuinfo
的输出并不总是显示实际的当前CPU频率,而是显示非增压最大频率,即使启用了并且处于活动状态的Turbo Boost。
如elmicha的回答所述,您需要使用sudo modprobe msr
加载msr模块,然后使用sudo turbostat
运行turbostat。
正如第二个最高票答案所指出的那样,最高票和被接受的答案有时显示的是最大的常规频率。
下面您可以看到CPU编号为0的频率。要查看所有CPU,请将0
替换为*
。频率以MHz为单位,保留三位小数。因此,1000000
= 1000 MHz = 1 GHz。这款英特尔Skylake处理器的额定频率为2.6 GHz或启用Turbo Boost后为3.5 GHz。
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
800000
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
3500000
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
1027669
$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq
2754249
2700098
2842167
2700270
1359287
901937
1662780
1731062
8个处理器中有4个处于超频模式(高于2.6 GHz)
$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq
808913
800029
800022
800004
800001
800001
800013
800009
$ cat /sys/devices/system/cpu/intel_pstate/no_turbo
0
$ echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
1
1
表示涡轮现在已关闭。
其他答案提到了基本CLI(命令行界面)的备选方法。我喜欢使用Conky来实现这一点。在下面的示例中,Skylake CPU的频率从800 MHz到2600 Mhz是固定的。启用Turbo Boost后,在重负载下频率可以跳至3500 MHz。
下面的.gif示例开始时显示频率在重负载下围绕3100 MHz波动,当grep
在整个文件系统上运行时。然后发出以下命令:
$ echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
$ echo "0" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
/sys/devices/system/cpu/intel_pstate/no_turbo
。CPU 是 Xeon E5-2690,应该具有 Boost 技术... 我的内核(2.6.32)太旧了吗? - Mikhail T.$ sudo apt-get install linux-tools-common linux-tools-generic
安装 htop
:
sudo apt install htop
在终端中运行 htop
命令打开它。你会看到一个图形窗口在终端中显示。
用鼠标点击 Setup
或按下 F2。
点击 Display options
并启用 Also show CPU frequency
:
点击 Done
或按下 F10 保存设置。
htop
还可以显示每个核心使用的百分比以及温度,并且htop
在终端窗口中以更图形化的方式显示统计信息。与本问题中提到的其他工具相比,使用htop
的优势在于我们可以看到哪个进程在CPU和内存方面占用更多资源。用户可以选择终止进程。sudo cpupower frequency-set -g performance
cpupower
。sudo apt-get install linux-tools-common linux-tools-generic
cpupower
是一组工具,用于检查和调整处理器的节能相关功能。 cpupower frequency-info
可以帮助获取所需信息。
示例输出:
# cpupower frequency-info
analyzing CPU 0:
driver: intel_pstate
...
...
current CPU frequency is 2.80 GHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
3000 MHz max turbo 4 active cores
3000 MHz max turbo 3 active cores
3100 MHz max turbo 2 active cores
3100 MHz max turbo 1 active cores
/proc/
和/sys/device/system/cpu/
中的所有信息都根据设计始终限制在常规频率范围内;请参阅https://www.kernel.org/doc/Documentation/cpu-freq/boost.txt 另外,CPU频率监控器依赖于这些信息,因此它们不会显示提升。但是turbostat
和其他工具会显示。对于带有集成显卡的AMD处理器,需要特别注意,请参阅http://askubuntu.com/a/501599/308343 @king_julien 您的假设可能是错误的。 - Run CMD