我如何修复 ksoftirqd 100% cpu

How do i fix ksoftirqd 100% cpu

我什么都不做,ksofttirqd 使用了我 100% 的 cpu 并且我的电脑非常慢。 我查看了我的 /proc/interrupts,发现有很多“本地时间中断”、“热事件中断”。我该如何解决?

(我运行ubuntu18.4)

传感器

iwlwifi-virtual-0
Adapter: Virtual device
temp1:        +44.0°C  

dell_smm-virtual-0
Adapter: Virtual device
fan1:        3893 RPM
fan2:        3916 RPM

acpitz-virtual-0
Adapter: Virtual device
temp1:        +25.0°C  (crit = +107.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Package id 0: +100.0°C  (high = +100.0°C, crit = +100.0°C)
Core 0:        +74.0°C  (high = +100.0°C, crit = +100.0°C)
Core 1:       +100.0°C  (high = +100.0°C, crit = +100.0°C)
Core 2:        +73.0°C  (high = +100.0°C, crit = +100.0°C)
Core 3:        +78.0°C  (high = +100.0°C, crit = +100.0°C)
Core 4:        +73.0°C  (high = +100.0°C, crit = +100.0°C)
Core 5:        +72.0°C  (high = +100.0°C, crit = +100.0°C)
Core 6:        +74.0°C  (high = +100.0°C, crit = +100.0°C)
Core 7:        +71.0°C  (high = +100.0°C, crit = +100.0°C)

pch_cannonlake-virtual-0
Adapter: Virtual device
temp1:        +63.0°C  

正如您从 sensors 输出中看到的那样,您的 CPU 运行 太热了。作为对此的回应,它可能正在疯狂地节流以防止自己融化。奇怪的是似乎只有一个核心太热了,这很不寻常,因为 CPUs 在内部随机调整核心之间的工作负载以平均分配负载。

以下是我建议的调试和修复方法:

  1. 确认 CPU 风扇 运行 正常,
  2. 验证风扇是否正确安装在 CPU 上(无间隙),
  3. 验证 CPU 和风扇之间的导热膏是否足够——根据我的经验,这实际上是最有可能的罪魁祸首

如果这些都没问题,恐怕你的 CPU 坏了,需要更换。

但有一件事是肯定的:这不是软件问题。


PS:我认为你可以忽略大量本地时间中断,因为它们并不罕见。另一方面,热中断是。以下是我在未显示任何问题的系统上的当前值:

           CPU0       CPU1       CPU2       CPU3       
...
LOC:  254543051  255115593  261569855  252995765   Local timer interrupts
...
TRM:          0          0          0          0   Thermal event interrupts