1、調節策略
performance:將CPU頻率固定工作在其支持的最高運行頻率上,不動態調節,可以獲取到最大的性能。
powersave: 將 CPU 頻率設置為最低的所謂 “省電” 模式,CPU 會固定工作在其支持的最低運行頻率上。
因此這兩種 governors 都屬於靜態 governor,即在使用它們時 CPU 的運行頻率不會根據系統運行時負載的變化動態作出調整。
這兩種 governors 對應的是兩種極端的應用場景,使用 performance governor 是對系統高性能的最大追求,而使用 powersave governor 則是對系統低功耗的最大追求。
userspace:最早的 cpufreq 子系統通過 userspace governor 為用戶提供了這種靈活性。
系統將變頻策略的決策權交給了用戶態應用程序,並提供了相應的接口供用戶態應用程序調節 CPU 運行頻率使用。
ondemand:按需快速動態調整 CPU 頻率, 一有 cpu 計算量的任務,就會立即達到最大頻率運行,等執行完畢就立即回到最低頻率;
ondemand:userspace 是內核態的檢測,用戶態調整,效率低。
conservative: 與 ondemand 不同,平滑地調整 CPU 頻率,頻率的升降是漸變式的, 會自動在頻率上下限調整,和 ondemand 的區別在於它會按需分配頻率,而不是一味追求最高頻率;
2、查看當前cpu可用的策略
[root@CENTOS ~]# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors conservative userspace powersave ondemand performance [root@CENTOS ~]#
查看cpu0可用的策略:cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
3、查看當前cpu生效的策略
[root@CENTOS ~]# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor conservative [root@CENTOS ~]#
查看cpu0當前的策略:cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
4、查看當前CPU頻率
[root@CENTOS ~]# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq 1000000 [root@CENTOS ~]#
5、查看當前所有CPU的信息
[root@CENTOS ~]# cpupower -c all frequency-info analyzing CPU 0: driver: acpi-cpufreq CPUs which run at the same hardware frequency: 0 CPUs which need to have their frequency coordinated by software: 0 maximum transition latency: 10.0 us hardware limits: 1000 MHz - 1.90 GHz available frequency steps: 1.90 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz available cpufreq governors: conservative userspace powersave ondemand performance current policy: frequency should be within 1000 MHz and 1.90 GHz. The governor "conservative" may decide which speed to use within this range. current CPU frequency: 1000 MHz (asserted by call to hardware) boost state support: Supported: yes Active: yes
6、設置所有CPU的模式
設置所有CPU為性能模式 [root@CENTOS57 ~]# cpupower -c all frequency-set -g performance Setting cpu: 0 Setting cpu: 1 Setting cpu: 2 Setting cpu: 3 Setting cpu: 4 Setting cpu: 5 Setting cpu: 6 Setting cpu: 7 Setting cpu: 8 Setting cpu: 9 Setting cpu: 10 Setting cpu: 11 Setting cpu: 12 Setting cpu: 13 Setting cpu: 14 Setting cpu: 15
cpupower -c all frequency-set -g powersave cpupower -c all frequency-set -g "conservative"
7、查看某個CPU的信息
[root@CENTOS57 ~]# cpupower -c 1 frequency-info analyzing CPU 1: driver: acpi-cpufreq CPUs which run at the same hardware frequency: 1 CPUs which need to have their frequency coordinated by software: 1 maximum transition latency: 10.0 us hardware limits: 1000 MHz - 1.90 GHz available frequency steps: 1.90 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz available cpufreq governors: conservative userspace powersave ondemand performance current policy: frequency should be within 1000 MHz and 1.90 GHz. The governor "performance" may decide which speed to use within this range. current CPU frequency: 1.90 GHz (asserted by call to hardware) boost state support: Supported: yes Active: yes
cpupower -c 0 frequency-info #查看CPU0的信息 cpupower -c 1 frequency-info #查看CPU1的信息 cpupower -c 2 frequency-info #查看CPU2的信息
8、查看CPU的頻率
[root@CENTOS57 ~]# cat /proc/cpuinfo | grep "cpu MHz*" cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000 cpu MHz : 1901.000
參考引用:https://baijiahao.baidu.com/s?id=1644209827783392362&wfr=spider&for=pc