升级 gcc 编译器时,核心温度超过阈值 CPU 时钟节流

升级 gcc 编译器时,核心温度超过阈值 CPU 时钟节流

我有一台戴尔笔记本电脑,我正在使用 CentOS 6.9 供个人使用,直到昨天我尝试将默认 gcc 编译器(4.4.7)升级到 4.9.x 版本,它一直运行良好。我已经成功从 gcc 镜像下载了 gcc 包,但是当我尝试使用制作命令,它构建了一些文件,然后自动关机并显示“超过阈值”消息。当我重新启动它时,该消息再次出现,它再次自动关机。要重新启动它,我不得不等待几分钟让笔记本电脑冷却,然后它才能启动。

我不知道为什么现在会发生这种情况。如果这是硬件问题,那么在我尝试升级 gcc 之前就会发生这种情况。但只有在尝试升级 gcc 之后,才出现此问题,并且现在仍在发生。

我检查了消息日志(/var/log/messages)并发现了以下内容:-

kernel: CPU0: Core temperature above threshold, cpu clock throttled     (total events = 1)
kernel: CPU2: Core temperature above threshold, cpu clock throttled     (total events = 1)
kernel: CPU2: Core temperature/speed normal
kernel: CPU0: Core temperature/speed normal
kernel: intel ips 0000:00:1f.6: MCP limit exceeded: Avg temp 9038, limit     9000
kernel: Critical temperature reached (87 C), shutting down.

请帮忙

答案1

使用 进行构建make,可能在多个核心上,显然会使用大量的 CPU,因此它们运行时发热也就不足为奇了。

在笔记本电脑中,根据设计,CPU 可以短时间发热,但之后必须降速降温。其原理是,大多数笔记本电脑的使用情况只需要 CPU 短时间活动,中间有较长的暂停时间,以便 CPU 再次降温。

如果您的笔记本电脑紧急关机(根据您的描述,我不太确定),您需要一些监控 CPU 温度并在温度过高之前对其进行节流的程序。有好几个这样的程序,但我对 CentOS 不熟悉,所以我不能说您使用的是哪个。查找类似thermaldcpupower或 的内容cpufreqd

相关内容