直接读/sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq最轻量可靠,单位khz,自动匹配所有在线逻辑核,数值如2400000即2.4ghz;需先确认路径存在且核心online,否则反映驱动未加载或核被隔离。

直接读 /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq 最轻量可靠
每个逻辑核心的实时运行频率就藏在这里,单位是 kHz。路径里的 cpu* 会自动匹配所有在线核心,cat 一次就能看到全部当前值。
常见错误是只查 cpu0:它不能代表其他核——尤其在负载不均或隔离策略下,cpu4 可能卡在 800 MHz,而 cpu0 正跑在 4.2 GHz。
- 先确认路径存在:
ls /sys/devices/system/cpu/cpu0/cpufreq/;若报No such file or directory,说明没加载频率驱动(如intel_cpufreq)或运行在虚拟机中 - 某核输出为空?检查是否 offline:
cat /sys/devices/system/cpu/online,或被isolcpus隔离 - 数值示例:
2400000= 2.4 GHz,800000= 0.8 GHz;差值大说明睿频/降频正在动态生效
cpupower frequency-info --freq 是看「此刻」频率的正确入口
它底层就是批量读取所有 scaling_cur_freq 并取平均,但比手动 cat 多一层校验,输出带 (asserted by call to hardware) 字样才真正可信。
必须加 sudo,否则报 Permission denied;不加 --freq 参数默认只显示策略概览,容易误判为“频率没变”。
PyCharm 2026.2.0.1 Linux版提供 JetBrains 官方 2026.2.0.1 版本安装包,适合需要指定 PyCharm 版本进行 Python 项目开发、运行和调试的用户。
- 若提示
No such file or directory,不是命令错,而是内核没加载驱动:运行dmesg | grep -i "cpu.*freq"看有无加载记录 - 输出里
current frequency: 1.20 GHz才是真实值;cpupower frequency-info(无--freq)里的min MHz/max MHz只是策略范围,非当前值 - Ubuntu/Debian 装包:
sudo apt install linux-tools-common linux-tools-generic;RHEL/Fedora:sudo dnf install kernel-tools
用 turbostat --interval 1 区分基础频和睿频倍频
这是唯一能明确告诉你“是不是真在睿频”的工具,专读 Intel CPU 的 MSR 寄存器,不依赖 sysfs 或用户态策略。
它输出里的 Bzy_MHz(忙时频率)和 Core MHz 若显著高于 Base_MHz(查 lscpu 得到),且 Turbo 列显示数字而非 -,说明 Turbo Boost 正在起作用。
- 必须
sudo modprobe msr,否则报No such file or directory - 仅对物理 Intel CPU 有效;AMD 或虚拟机中基本不可用
- 若
Core MHz卡在cpuinfo_max_freq / 1000附近但Turbo为-,大概率是 BIOS 关了 Turbo Boost
别把 lscpu | grep "CPU MHz" 当实时值用
这一行显示的是估算平均值,不是任一核心的瞬时频率。空载时可能还固守标称值,满载时又因缓存滞后无法反映快速降频。
真正有用的字段其实是 CPU max MHz 和 CPU min MHz:前者是硬件支持的睿频上限(受 BIOS、温度、功耗限制),后者是节能压频下限——它们稳定可预期,适合做 baseline 对比。
- 多插槽系统中,不同物理 CPU 的
max MHz可能不同;cpupower frequency-info只报告当前 socket 的值 -
/proc/cpuinfo里的cpu MHz字段由内核缓存提供,有滞后;grep "cpu MHz" /proc/cpuinfo | head -n 1更危险——只取第一核,完全忽略其余核心状态 - 想验证电源策略效果?对比不同模式下
scaling_cur_freq的分布范围,而不是盯着lscpu那个静态数字
/sys/devices/system/cpu/cpu0/cpufreq/ 目录压根不存在,或 cat /sys/devices/system/cpu/online 显示只有部分核心可用。










