ubuntu下调整cpu频率

环境:ubuntu15.10

查看内核支持的cpu策略

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

比如我的显示

performance powersave

说明我的目前只支持节能和高性能,要想支持更多请安装相应模块

一般策略如下

1. performance:CPU维持最高时脉运行。
2. ondemand:程序运行时,直接调高时脉运行。(但不一定是调到最高,而是依程式需求)。没有运行时,调低时脉。
3. conservative:同上,但调整的方式,是一阶一阶地调整,而非直接调整。
4. powersave:CPU维持最低时脉运行
5. userspace:是由使用者自己定义,需要安装其他软件管理

此时我们只需要将

/sys/devices/system/cpu/cpu0/cpufreq/scaling_governors

文件中的内容改成你所需要的即可,一般我们/sys/devices/system/cpu/下面有很多核心,比如我的cpu0-7八核心,所以每一个都需要该

echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor

每次都这样比较麻烦,所以我们可以将其写入脚本

#!/bin/bash
#set cpu scaling governor by your self

#函数查找有几个核心并将其scaling_governor文件设置成你所需要的内容
set_cpu() { for i in `ls /sys/devices/system/cpu/ | grep 'cpu[0-9]?*'` do echo $1 > /sys/devices/system/cpu/$i/cpufreq/scaling_governor done }
#判断输入
case $1 in #performance "pf") set_cpu performance ;; #ondemand "od") ;; #conservative "cs") ;; #powersave "ps") set_cpu powersave ;; *) echo "please input [pf][od][cs][ps]" ;; esac

我们保存成cpufreq.sh并加上可执行权限

chmod +x cpufreq.sh

然后执行

sudo ./cpufreq.sh pf

查看一下文件

posted @ 2015-12-17 13:51  孙悟坑  阅读(1660)  评论(0编辑  收藏  举报