![如何选择 CPU 温度上限?](https://linux22.com/image/1369676/%E5%A6%82%E4%BD%95%E9%80%89%E6%8B%A9%20CPU%20%E6%B8%A9%E5%BA%A6%E4%B8%8A%E9%99%90%EF%BC%9F.png)
我刚刚编写了一个脚本来限制一个繁重的数字运算程序,以防止 CPU 过热。我可以设置任何温度上限,并成功地将 CPU 始终保持在该限值以下。(实际上,我的脚本会根据当前和最近的温度提前几秒预测温度,因此它可以在达到阈值之前限制主程序,但这是一个技术细节。)
问题:这个限制应该是多少?选择这个限制时应该考虑哪些因素?
主程序的日常使用总是将 CPU 温度置于 60-70C 范围内。lm-sensors 包中的“sensors”命令显示“临界”温度为 95C。我假设这是阈值,当达到该阈值时,会导致瞬间完全断电。显然,我想远离这个阈值。有多远?我不知道持续温度为 80C 是否合适,或者 88C 是否合适,或者我应该将其保持在 70C 以下,或者其他什么。节流阀限制越低,我的工作流程效率越低,因此我希望将其设置得尽可能高,而不会缩短 CPU 的寿命或冒断电的风险。
SuperUser、SO 和各种 SE 网站以及(我敢说)SO/SE 世界之外的网站上有关温度问题的答案给出了一些正常范围,但显然是针对更悠闲的 CPU。如果我将 CPU 温度保持在 60C 以下,我的程序就无法做很多事情。看来大多数人都不是理论物理学家(摇头,脸上露出茫然的表情)。我的繁重的数字运算程序通常运行一到十五个小时。
顺便说一句,这是一台不错的大型台式机,通风良好。它从未死机过,除非连续 10 到 20 分钟进行数字运算。
附加信息:主板是华硕 M4A78LT-M。
/proc/cpuinfo 提供了大量信息乘以四(四个核心),但重要的信息似乎是:
model name : AMD Athlon(tm) II X4 645 Processor
cpu MHz : 3100.000
cache size : 512 KB