You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux下如何用Bash查看CPU核心的最高睿频?

如何在Linux系统中通过Bash命令查看CPU核心的睿频时钟速度

如今的CPU支持动态睿频技术,时钟速度会根据当前工作负载动态调整。比如现代多线程游戏(尤其是AAA级大作)通常会用到6到8个核心,在决定应用是否要使用更多核心时,你需要权衡额外并行性带来的收益与单核时钟速度的损失。

步骤1:生成指定线程数的CPU负载

要测试不同负载下的睿频表现,可以用stress-ng工具生成CPU负载,比如让1个核心满载:

stress-ng --cpu 1

如果需要测试多核心满载,把数字改成对应核心数即可,比如stress-ng --cpu 8。

步骤2:查看CPU时钟速度信息

Linux的sysfs提供了CPU的详细信息,你可以通过以下方式查看:

方式1:查看/proc/cpuinfo

这个文件包含每个CPU核心的详细参数,其中cpu MHz字段显示当前核心的运行频率:

cat /proc/cpuinfo

示例输出(以AMD Ryzen Threadripper 1950X为例):

processor   : 0
vendor_id   : AuthenticAMD
cpu family  : 23
model       : 1
model name  : AMD Ryzen Threadripper 1950X 16核处理器
stepping    : 1
microcode   : 0x8001137
cpu MHz     : 2200.000
cache size  : 512 KB
physical id : 0
siblings    : 16
core id     : 0
cpu cores   : 16
apicid      : 0
initial apicid  : 0
fpu     : 支持
fpu_exception   : 支持
cpuid level : 13
wp      : 支持
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid amd_dcm aperfmperf rapl pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb hw_pstate ssbd ibpb vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 clzero irperf xsaveerptr arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif overflow_recov succor smca sev
bugs        : sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass retbleed smt_rsb srso div0
bogomips    : 6799.35
TLB size    : 2560个4K页
clflush size    : 64
cache_alignment : 64
address sizes   : 物理地址43位,虚拟地址48位
power management: ts ttp tm hwpstate eff_freq_ro [13] [14]
[...]

注意:cpu MHz显示的是当前实时频率,你可以在运行stress-ng负载的同时,另开一个终端执行watch cat /proc/cpuinfo | grep "cpu MHz"来实时监控频率变化。

方式2:查看sysfs下的频率文件

每个核心的频率信息也存放在/sys/devices/system/cpu/cpu*/cpufreq/目录下,比如查看核心0的当前频率和最大睿频:

# 查看当前频率(单位:kHz)
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
# 查看最大可达到的频率(包括睿频,单位:kHz)
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

输出数值除以1000即可得到GHz单位,比如3400000表示3.4GHz。

总结

通过stress-ng模拟不同负载,结合/proc/cpuinfo或sysfs文件,就能直观看到CPU在不同核心负载下的睿频表现,帮助你评估应用多线程设计的权衡点。

内容的提问来源于stack exchange,提问作者Bengt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 09:25:17