lscpu命令查看基础功耗信息lscpu命令可显示CPU架构及功耗管理相关的配置信息,通过过滤“Power”关键词快速获取关键参数:
lscpu | grep "Power"
输出示例:
Power Management: ts ttp tm hwp
各参数含义:
ts:Thermal Sensor(热传感器,用于监测CPU温度);ttp:Thermal Trip Point(热超限点,触发温度保护的阈值);tm:Thermal Management(热管理,系统自动调参的温度策略);hwp:Hardware Performance State(硬件性能状态,CPU根据负载动态调整性能与功耗的机制)。/sys文件系统获取实时频率与功耗限制CPU的频率与功耗密切相关,通过/sys目录下的文件可直接读取核心频率及限制信息:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
将结果除以1000可转换为MHz(如2100000kHz=2100MHz)。for cpu in /sys/devices/system/cpu/cpu[0-9]*; do
echo "${cpu} 最大频率: $(cat ${cpu}/cpufreq/scaling_max_freq) kHz"
done
for zone in /sys/devices/virtual/thermal/thermal_zone[0-9]*; do
echo "${zone} 温度: $(cat ${zone}/temp) mK"
done
结果需除以1000转换为摄氏度(如48000mK=48℃)。powertop工具监控实时功耗powertop是专为功耗优化设计的工具,可直观展示CPU、GPU等硬件的实时功耗及耗能应用:
sudo apt-get install powertop
sudo powertop
界面中“Overview”标签页会显示CPU的实时功耗(单位:瓦特),并标注高耗能组件;“Tunables”标签页可优化功耗设置。cpufrequtils工具管理频率与功耗cpufrequtils是一套CPU频率管理工具,可通过命令查看频率信息及调整功耗模式:
sudo apt-get install cpufrequtils
cpufreq-info
输出包含当前频率、最小/最大频率、governor(调参策略,如powersave节能模式、performance性能模式)等信息。sudo cpufreq-set -g performance
或针对所有核心设置:sudo cpupower -c all frequency-set -g performance
energy_perf_bias参数调整性能-功耗平衡energy_perf_bias是内核参数,用于控制CPU在性能与功耗之间的权衡(值越小越节能,越大性能越好):
cat /sys/devices/system/cpu/cpu*/power/energy_perf_bias
echo 10 | sudo tee /sys/devices/system/cpu/cpu*/power/energy_perf_bias
注:部分CPU可能不支持此参数,需以硬件实际为准。/sys文件需root权限读取(如powertop需sudo运行);hwp、energy_perf_bias等参数);