linux下CPU频率调节限制及无风扇温度压力测试
[| 2012/12/18 23:39]
想上无风扇电源,所以调研下电源去掉噪声后其他地方如何降噪。开始拿cpu风扇入手。cpu散热器用的最便宜的超频三青鸟3。cpu是32nm Sandy Bridge 赛扬G550,比较节能。看网络上有些人在尝试G530无风扇工作,不过都比较简单,决定自己试一下。
有很多人是在bios中对cpu进行降频以实现降温的,想了下,感觉这种方法灵活性不足,另外太过高端。决定不采用。还是用软件的cpufreq比较简单灵活。使用sensors工具查看cpu温度。
首先拔掉cpu风扇电源,开机滴滴报警,忽略之,进入系统。看到温度在50度左右。cpu默认工作在1.6G频率下。
写了个死循环程序,先单核跑满,单核心运行在2.6G频率下,温度缓慢上升。慢慢上升到83度左右稳定下来。
然后尝试双核跑满,结果温度迅速冲上90+,我看sensors里提示的温度最高值为102度。急忙停了压力,温度1s内就降到了60+。还是挺快的。
看来默认情况下双核满载单靠散热器是不行的了。下面尝试限制最高频率后的满载测试。
首先限制双核1.6G,满载,温度没什么变化,很正常,cpu本来就在1.6G下跑着,满不满载没啥区别。
2G+1.6G,温度上升至70+
2G+2G,温度缓慢上涨2-3度,看来较低频率情况下,总温度和温度较高那个核的温度相关性大,与发热总核数关系不怎么大。
2.1G+2.1G,温度上升至80+
由于80度就已经算是较高的温度了,所以没有继续往上测试。
当前室温在20度左右。
也就是说2.1G是可以无风扇长时间稳定运行的一个频率。再高就不好说了。以后有需求就搞个自动限频脚本,温度升到指定值就降低频率防止过热。
然后看看频率对性能的影响。在网上随便扒拉了一个算某某值的命令,大致跑了下,1.6G频率下跑完需要40多秒,而2G频率下跑完只要33s,再高频率的就没有试了。看来性能还是有一些影响的。
有很多人是在bios中对cpu进行降频以实现降温的,想了下,感觉这种方法灵活性不足,另外太过高端。决定不采用。还是用软件的cpufreq比较简单灵活。使用sensors工具查看cpu温度。
首先拔掉cpu风扇电源,开机滴滴报警,忽略之,进入系统。看到温度在50度左右。cpu默认工作在1.6G频率下。
写了个死循环程序,先单核跑满,单核心运行在2.6G频率下,温度缓慢上升。慢慢上升到83度左右稳定下来。
然后尝试双核跑满,结果温度迅速冲上90+,我看sensors里提示的温度最高值为102度。急忙停了压力,温度1s内就降到了60+。还是挺快的。
看来默认情况下双核满载单靠散热器是不行的了。下面尝试限制最高频率后的满载测试。
首先限制双核1.6G,满载,温度没什么变化,很正常,cpu本来就在1.6G下跑着,满不满载没啥区别。
2G+1.6G,温度上升至70+
2G+2G,温度缓慢上涨2-3度,看来较低频率情况下,总温度和温度较高那个核的温度相关性大,与发热总核数关系不怎么大。
2.1G+2.1G,温度上升至80+
由于80度就已经算是较高的温度了,所以没有继续往上测试。
当前室温在20度左右。
也就是说2.1G是可以无风扇长时间稳定运行的一个频率。再高就不好说了。以后有需求就搞个自动限频脚本,温度升到指定值就降低频率防止过热。
然后看看频率对性能的影响。在网上随便扒拉了一个算某某值的命令,大致跑了下,1.6G频率下跑完需要40多秒,而2G频率下跑完只要33s,再高频率的就没有试了。看来性能还是有一些影响的。