在Linux中,内核的开发者定义了一套框架模型来完成CPU频率动态调整这一目的,它就是CPU Freq系统。如下为CPU的几种模式(governor参数):
  

ondemand:    系统默认的超频模式,按需调节,内核提供的功能,不是很强大,但有效实现了动态频率调节,平时以低速方式运行,当系统负载提高时候自动提高频率。以这种模式运行不会因为降频造成性能降低,同时也能节约电能和降低温度。一般官方内核默认的方式都是ondemand。
interactive:  交互模式,直接上最高频率,然后看CPU负荷慢慢降低,比较耗电。Interactive 是以 CPU 排程数量而调整频率,从而实现省电。InteractiveX 是以 CPU 负载来调整 CPU 频率,不会过度把频率调低。所以比 Interactive 反应好些,但是省电的效果一般。
conservative:  保守模式,类似于ondemand,但调整相对较缓,想省电就用他吧。Google官方内核,kang内核默认模式。
smartass:    聪明模式,是I和C模式的升级,该模式在比interactive 模式不差的响应的前提下会做到了更加省电。
performance:  性能模式!只有最高频率,从来不考虑消耗的电量,性能没得说,但是耗电量。
powersave      省电模式,通常以最低频率运行。
userspace:   用户自定义模式,系统将变频策略的决策权交给了用户态应用程序,并提供了相应的接口供用户态应用程序调节CPU 运行频率使用。也就是长期以来都在用的那个模式。可以通过手动编辑配置文件进行配置
Hotplug:     类似于ondemand, 但是cpu会在关屏下尝试关掉一个cpu,并且带有deep sleep,比较省电。

在不同的系统上,并不是所有的策略都是可用了,可以通过/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors查看支持的策略
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
查看当前生效的策略

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

查看当前CPU频率

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

cpupower 是一组为辅助 CPU 调频而设计的用户空间工具。

1、查看当前所有CPU的信息

cpupower -c all frequency-info

2、设置所有CPU为性能模式

cpupower -c all frequency-set -g performance

或者

cpupower  frequency-set -g performance

3、设置所有CPU为节能模式

cpupower -c all frequency-set -g powersave

查看当前cpu运行频率:

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

或者

cat /proc/cpuinfo | grep -i "cpu mhz"

最后编辑:2023年03月12日 ©著作权归作者所有

发表评论

正在加载 Emoji

已有 14 条评论

  1. 怎么收藏这篇文章?

  2. 想想你的文章写的特别好https://www.237fa.com/

  3. 看的我热血沸腾啊https://www.ea55.com/

  4. 想想你的文章写的特别好www.jiwenlaw.com

  5. 哈哈哈,写的太好了https://www.cscnn.com/

  6. 你好,你好我的头发是。。。。。。

  7. 《现在开始作秀时间》韩国剧高清在线免费观看:https://www.jgz518.com/xingkong/57524.html

  8. 对国际规则的解读具有前瞻性。

  9. 字里行间流露出真挚的情感,让人感同身受,共鸣不已。

  10. 对趋势的预判具有战略参考价值。

  11. 作者的观点新颖且实用,让人在阅读中获得了新的思考和灵感。

  12. 若能对分论点进一步细分,结构会更立体。

  13. 文字流畅如丝,语言优美动人,读来令人心旷神怡。