2023年11月24日发(作者:)

微星主板中如何设置CPU风扇的调整规则

本⼈最近为了实现较⾼的单核性能(AMD R5 3600X的单核性能⾮常⾼(别那么贵的情况下),所以我没选Intel的处理器)+想初步玩⼀玩深度

学习(所以必须是N卡)

3600X是我这个家境贫寒之⼈能够负担得起的单核性能最强的CPU,后来该⽹站改了算法,单核性能排名靠前的变成了

Intel的处理器。。。

组装了⼀台电脑,配置如下:

组件品牌与型号价格(元⼈民币)

CPU+主板AMD R5 3600X;MSI B450M Mortar Max1848.58

散热器利民AS120单风扇109.61

内存ADATA XPG DDR4 3000MHz 8G 2条535.85

显卡Gigabyte Nvidia GeForce GTX 1660 Super Gaming OC 6G1687.25

固态硬盘Plextor M9PeG 256G321.57

组件品牌与型号价格(元⼈民币)

⽆线⽹卡128.36DIEWU TX083(Intel AX200)带散热⽚

机械硬盘267.26WD10EZEX 1T 3.5⼨ 64MB缓存 7200RPM

主机237.7先马塞恩3(赠5个风扇)(其中40元为邮费)

电源340.28振华HX500W

合计5476.46

但是遇到了⼀个问题:

在主板的设置中,需要对CPU风扇设置⼀个转速⾃动调整的规则,以实现静⾳和散热的平衡:

⼀、风扇转速的调节,是怎么个规则

微星的主板允许⽤户设置的规则,是如何根据CPU的温度传感器⽰数(以下简称CPU传感温度)来调节CPU散热风扇的转速。⼀共有连续的四档

CPU传感温度和风扇转速的调节规则绘如下图:

风扇转速规则

经反复测试,规则的设定具有以下限制或特点:

1. 规则是根据传感温度(记为)调节CPU风扇转速(风扇转速的负荷率记为)

2. 转速与温度条线段的斜率为的对应关系,画成函数图像,是⼀条折线,由4条线段和1条射线组成。记从左向右数第

3. ⽤户可以调节的只有图上那4个“×”的位置(即温度-转速数对),记为

4. 最低温那个“×”与原点相连,最⾼温那个“×”的右侧的线是⽔平的。

5. 每个叉之间温度⽅⾯⾄少要相差1度

6. 任何⼀段线均不能是竖直的,即任意

7. 整条线必须是单调不减的,即任意。为了充分利⽤这四个叉,下⽂将要求折线中任意⼀条线段的斜率都⼤于0(即

⼆、直觉下设置的规则

既然默认的是这样,那就⼤概微调⼀下就好了。由于CPU报警的温度是70度,因此我就把最⾼档的温度调整为70度,其他的就没怎么调。

所以,设置这个调节规则,⽬标是:

在CPU发热⼀定的情况下,最优规则能够使风扇的转速很低,且CPU的温度也很低。

2 问题模型化

模型的基本想法是:CPU温度的变化来⾃于⾃⾝发热和风扇的散热。把它翻译成微分⽅程是:

其中表⽰CPU的温度,是CPU发热量,是风扇转速的负荷率,界于0-100%,是CPU风扇的散热系数(此处合理假定风扇转速

与散热量呈正⽐关系)。

另外,温度与风扇转速还满⾜调节规则:

将上式代⼊,得到⼀元常微分⽅程

3 模型的特点

a 当CPU发热量“不太⼤”时,⽅程存在唯⼀且稳定的解

i 存在与唯⼀性

时,⽅程存在唯⼀且稳定的解。

由于连续,且满⾜利普希茨条件(取风扇规则曲线中最⼤的斜率再乘以),因此⽅程存在唯⼀解,记为

ii 稳定性及稳定的状态

当初始温度在第4个叉以上(即)时,为定值100%。若,则此时已达到稳定状态;若

,解得,则温度将随时间⼀路下降⾄第4个叉以下。

当初始温度在第4个叉以下(即)且时,对于稳定解的任意⼩的⼀个邻域外,总有

,且异号,从⽽在有限时间内,将进⼊该邻域。且由于在

,存在邻域中,温度-转速存在连续的负反馈机制,因⽽当温度进⼊该邻域后,不会再跳出该邻域。因此,对于任意⼩的

,当时,成⽴,因此

当初始温度在第4个叉以下(即)且时,,且当在任意⼀个左邻

域外时,有,因此在有限时间内,温度将进⼊该邻域。当温度不会超过进⼊该邻域时,温度

(是上确界,因为不会稳定于任何低于的温度),因此收敛于)。

综上所述,

1. 当CPU发热刚好等于风扇散热的能⼒

1.1 当初始温度时,最终温度将稳定在

1.2 当初始温度时,温度将不再改变,稳定在

2. 当CPU发热时(多数情况),不论初始温度处于何值,最终都将趋于稳定,其中风扇转速稳定于,温度稳⼩于风扇散热的能⼒

定于,满⾜

b CPU温度稳定时,风扇转速不随规则⽽改变

当CPU温度稳定时,,从⽽有,即

四、模型告诉了我什么

嗯,模型告诉我们,CPU发热⼀定的情况下,风扇的噪⾳与你设置的规则⼏乎⽆关!

所以,根据模型来看,将第1个叉拉到(室温+1,100%转速),其他叉放到100%转速,应当为最优的解,即规则曲线应尽可能地“上凸”。由

于风扇转速(即噪⾳)只取决于风扇的散热性能(固定)和CPU的发热量,因此只要调速规则能够达到100%的转速,那么CPU最终的噪⾳都是

⼀样的,⽆论规则如何设置。⽽且,这样还能使CPU保持在最低的温度。

但是,实际中还有以下问题:

CPU的温度测量存在误差

也就是说,如果真的直接将第1个叉拉到(室温+1,100%)的话,由于CPU温度传感器存在测量上的误差,那风扇其实绝⼤多数时候就⼀直在以

100%的速度运⾏。反⽽噪⾳更⼤。如果将四个叉的位置摆放得开⼀些,能够容纳下测量误差的话,即可实现最优的配置(让CPU的温度尽可能地

降低)。

第⼀列为室温+2n个测量误差,第⼆列为由0%起⾄100%的各个档位。

所以设置的时候就⾮常好设置了:

第1个叉:(室温,0%)

第2个叉:(上表最后⼀项温度值68℃,100%)

第3、4个叉:100%

2 参数的设置

上述举例中,涉及到3个参数:

CPU温度传感器的测量误差

想让风扇有多少个档位

室温

a CPU温度传感器的测量误差

这个如果能找到⼚家直接问到的话,最好。找不到的话,那就只好⾃⼰测了。测量的⽅法是:先将CPU风扇功率调⾄恒定值,然后给出恒定负荷

的CPU计算量(通常是⽤烤机软件),查看温度在多少的范围内变动。范围上限减范围下限再除以2,即为CPU温度传感器的误差。需要注意的

是,这需要让CPU稳定在不同温度下进⾏测试,以获取平均值。如果各个温度下温度传感器的测量误差不同且存在⼀定规律性,则需要根据这个

⾄于如何测量,可以到BIOS⾥⾃⼰去试,⼀档⼀档地试。由于⼤多数CPU风扇都是PWM调节模式的,因此对于精确度的把握应当是⼗分准确

的,不像DC调节的风扇那样不准确。

c 室温

其实,这个温度更贴切的讲法,应该是风扇的启动温度。由于⼀般⼈⽤的散热最终⽬标是接近室温(有⼀些⽤液氮的另说。。。),因此当CPU

低于室温时,开启风扇反⽽会使其加热,因此不太建议将此温度设定得过低,如18度(除⾮你家室温能达到18度。。。);建议设置为家中室温

波动的上限,如28度~30度。