ProxmoxVE软路由的主动降频温控

2019-09-12 作者:

This is an article about Linux OS-level active settings for Intel processor temperature control on SFF (small form factor) FANLESS solution, mostly targets the “software router” computer.

In this case, it’s a compact size stuff, with 6 Intel i211 GigE, 2C4T i5-7300U mobile CPU, 8GB RAM and a non-brand 128GB SSD inside.

选择无扇设计其实是一种人生态度,安静、平和、与世无争……呃再来个什么形容词,充满哲思?呃,好吧,起码有一点,少一个电机,多一份可靠吧。

尽管大多数人喜欢那种强悍的、bling bling的RGB灯风扇乃至水冷,动不动就拿显存比人家内存,拿内存比人家硬盘的口吻;对此我只能说,KINDA NOT MY STYLE(壕啊,收了您的神通吧)!

 

本文的主角是这货,深圳产,6 Intel 千兆软路由,处理器Core i5-7300U,双核四线程移动版本。

【注】:前文吾の中土 | My Middle Earth有写到小型办公网络架构设计,此处不再赘述,只是最近加了几个新VLAN用于DELL iDRAC和研发专用实验网段而已。

 

话说在五月,一个和煦的春天,笔者依例去抚摸价值千元的高级软路由,突然间手指一阵刺痛……电,呃不是,烫到了。

速登SSH查看,oh~烫手算什么,我觉得我的高级货还可以抢救一下。

先把吃CPU的问题进程杀了,把温度降下来。

 

然后去讨某宝老板的嫌,估计老板的内心独白是“what’s your problem?”

只希望主板和老板一样经得住考验。


 

以上都是玩笑。其实工控主板的设计,处理器并非插座,而是直接焊在主板上,这样的设计本身就更利于散热;此外一般processor上会粘一块超出正常尺寸的散热片,跟所谓“冰刺”外壳接在一起,这也是在CPU高温时,壳体烫手的主要原因——散热设计考虑到了。

此外,主板BIOS也不是吃素的。主动散热时,BIOS会随着CPU核心温度的升高,同步通过PWM调速风扇来调高转速,以期达到降温的效果;而被动散热的情况下,一旦CPU温度超限,BIOS会控制CPU有意降频;正如驾驶建议里的“让速不让道”,意思是要急刹避祸,不要铤而走险变线导致事故。

说了这么多,Linux下有没有更主动的降频控温方案,让我们助BIOS一臂之力呢?

先查看操作系统(此处是Proxmox VE也即Debian Linux)提供的能源管理选项。

看来支持两个选项,“性能”和“节能”模式。

那么接下来装两个包,前者控制能源管理选项并实时输出cpu频率,后者显示核心温度。

运行 cpufreq-info ,画风是这样的。好家伙,明明没负载的系统,运行频率(3.5GHz)跑过了标称频率(2.6GHz),已经处于“睿频加速”状态了,难怪负载一高,温度就突破天际。

接下来我们要创建一个配置文件 nano /etc/default/cpufrequtils ,用于在系统启动时,把系统切换到“节能”模式。

正常情况下,这就打完收工了,重启检查成果。效果立竿见影,无负载频率从3.5直降到0.8~1.0左右。

反之亦然,如果想把CPU设置在“性能模式”,改动 cpufrequtils文件设到“performance”即可。

 

哦,差点忘记提到怎么查看CPU温度,刚才装过的lm-sensors包派上用场了。

sensors 运行一次,则即时显示多个核心的温度;想要一直显示一直爽,前边加个watch即可。


接下来又有同学提出需求,说powersave模式下,机器比较“懒”,不加足量负载,机器总是表现的很磨叽,调试时明显感觉机器慢。但是切到performance模式吧,又不适合一台软路由长期跑的感觉。确实,对一台路由而言,x86-64处理器其实是蛮强的,只要不跟人类交互,确实1GHz频率完全不会影响路由性能。

因此想让机器设置在powersave模式,但临时在软路由上调试时跑win10或者centos还要够给力。这是典型的“又要马儿跑,又要马儿不吃草”需求。

这样,本地创建一个脚本 nano cpufreq-set-all ,写入如下内容,写好后加上运行权限 chmod +x cpufreq-set-all

然后就操作  ./cpufreq-set-all -g performance  随意切换了(下图点开为动图)。

如此设置仅在本次运行时有效,重启机器后,依然会回到  /etc/default/cpufrequtils 的设置上。


在某些发行版比如ubuntu上,如果重启后发现无法切换电源管理模式,要检查systemd有无一个叫做ondemand(按需调节)的服务,有的话禁用掉即可。

 

原创文章,转载请注明: 转载自渔人小径

本文链接地址: ProxmoxVE软路由的主动降频温控

打赏 PayPal

文章的脚注信息由WordPress的wp-posturl插件自动生成

打赏 赞(0)
微信
支付宝
微信二维码图片

微信扫描二维码打赏

支付宝二维码图片

支付宝扫描二维码打赏

最近文章

分享

发表评论

电子邮件地址不会被公开。 必填项已用*标注