如何提高内核过热阈值?

Dim*_*ims 0 cpu temperature linux-kernel

我有自发注销,可能是由过热引起的。我有以下几行syslog

Jul 23 13:44:19 studebaker kernel: [  491.025664] CPU8: Core temperature above threshold, cpu clock throttled (total events = 1)
Jul 23 13:44:19 studebaker kernel: [  491.025665] CPU2: Core temperature above threshold, cpu clock throttled (total events = 1)
Jul 23 13:44:19 studebaker kernel: [  491.025666] CPU4: Package temperature above threshold, cpu clock throttled (total events = 1)
Run Code Online (Sandbox Code Playgroud)

如何查看/更改错误消息中提到的阈值?

Ste*_*itt 7

您应该能够看到 下的阈值/sys/devices/platform/coretemp.?/hwmon/hwmon?。替换问号的值将取决于您的系统;第一个很可能是 0。

你会看到一个编号命名的文件temp?_crittemp?_crit_alarmtemp?_inputtemp?_label,和temp?_max。替换问号的值再次变化,从 1 开始,并增加以覆盖封装和系统中所有(真实)内核的温度。_label告诉您这组值所描述的内容,_input显示当前温度、_max最高温度、_crit临界温度,并_crit_alarm指示临界温度警报是否已触发。

您不能使用内核提供的接口更改这些,它们由 CPU 和/或系统固件设置。您无论如何都不应该尝试更改它们,它们旨在保护 CPU 免受损坏。如果您对过热消息感到困扰,您应该尝试解决过热问题——环境温度可能太高,CPU 的冷却可能被灰尘等阻碍。

内核日志中的消息不反映内核的决定;它们是内核被告知的机器事件的翻译。你的计算机注意到它的 CPU 变得太热了,所以它自己限制了它,并将它告诉内核。