黑群晖CPU频率调节

发布于 / NAS / 5 条评论

因为要在黑群晖内使用VMM跑虚机,所以给它换了某TDP为28W的i5处理器。由于无法忍受噪声,想买猫扇还没有w,所以把CPU风扇转速调节到了1000转左右。此时CPU在跑VMM时温度92度,待机下温度仍有75度。奇怪的是,CPU占用率1%以下的时候,CPU的频率居然仍然是满频。运行高负载应用,且风扇开到最大,散热和电源良好的时候无法达到睿频。始终以主频运行。

Linux的/sys/devices/system/cpu/cpu*/cpufreq目录存储着第*个CPU的一些参数,例如最小最大平均频率,bios限制频率。

CPU的工作模式有多种

  • powersave 只会保持最低频率,节能省电

  • userspace 自定义频率

  • ondemand 一有cpu计算量的任务,就会立即达到最大频率运行,等执行完毕就立即回到最低频率

  • conservative 根据负载状态自动在频率上下限调整

  • performance 保持以最大频率运行

使用如下命令可以查看支持的工作模式:

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

我的支持:

conservative powersave performance ondemand userspace

通过

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

可以看第*个CPU核心的工作状态,我的四个核心全都是performance,怪不得始终满频运行。

为了把它改掉,需要使用ipkg安装cpufrequtils

安装ipkg:

sudo -i

然后输入密码

cd ~
wget http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/syno-i686-bootstrap_1.2-7_i686.xsh
chmod +x ./syno-i686-bootstrap_1.2-7_i686.xsh
sh ./syno-i686-bootstrap_1.2-7_i686.xsh

安装cpufreq-info:

ipkg update
ipkg install cpufrequtils

通过cpufreq-info命令就可以查看CPU频率和模式和历史记录的详细信息了。

修改模式:

cpufreq-set -c * -g MODE

例如将四个核心全部ondemand:

cpufreq-set -c 0 -g ondemand
cpufreq-set -c 1 -g ondemand
cpufreq-set -c 2 -g ondemand
cpufreq-set -c 3 -g ondemand

为了下次开机也自动生效,可以手动添加启动脚本。将其存成.sh,开启启动即可

#/bin/bash
/opt/bin/cpufreq-set -c 0 -g ondemand
/opt/bin/cpufreq-set -c 1 -g ondemand
/opt/bin/cpufreq-set -c 2 -g ondemand
/opt/bin/cpufreq-set -c 3 -g ondemand

image.png

至于睿频。。。似乎DSM不支持?

转载原创文章请注明,转载自: 斐斐のBlog » 黑群晖CPU频率调节
  1. K”

    DSM7有没有什么办法可以调整?

  2. dean

    dsm7 似乎没有ondemand和conservative了,楼主是dsm6吗

    1. kidultff
      @dean 是的,6.1.7,还没试过DSM7
  3. 稻艹人

    不错 不错 很有用 。关于睿频,我是这么处理的, 如果主板支持,可以把CPU的默认频率调上去。然后按照楼主的方式,cpu有工作任务的时候就可以跑到设定的频率了。

  4. Aladdin

    黑了半年 最后懒的折腾了 还是入白了