I'm running the latest Arch Linux on my ThinkPad t420 laptop, and am having an intermittent heat problem where my temp will rise from the typical ~45°C to ~75-90°C, and stay there until I reboot.
I've run several diagnostic tools, including the obvious
htop and others that googling has suggested, including
iostats, and surely others I don't recall. So far I've come up with no obvious issues, and ostensibly no differences in readouts whether my machine is running normally or in this hot state.
I've also killed most suspicious processes one by one (databases and other daemons), hoping to find the hidden culprit, to no avail.
Beyond these attempts, I don't know where to begin troubleshooting. I'm hoping someone could point me in the right direction to begin looking for the deeper issue.
To be precise, my question is not how to cool my machine, but rather what could cause a consistent 30+ degree heat change in a system where (reportedly) CPU and load is normal? And what tools/practices could I use to diagnose it?
Some notes that might be helpful:
- I can cool the system (e.g. by disengaging the fan control completely), but it immediately heats up again if left alone. This seems to suggest that heat retention is not an issue, but rather something is continually generating heat.
- CPU usage and load are reported by
htopas normal after entering this hot state. This includes kernel threads. According to
htop, the system is essentially idle (1-2% sytem wide CPU usage, a load of 0.10).
- My machine uses Intel HD integrated graphics, and has no other graphics card. An nVidia card was an option for this model, as noted by @braiam; I did not opt for it.
- @terdon brought up the CPU governor settings. My CPUs are set to
- My specific processor is a 2.7GHz Core i7-2620M.
Edit: At the time of writing this question, my fancontrol was not functioning properly and ran continually at a middle RPM range (3900 RPMs), even at high temps. At the suggestion of @Alex and @JustDanyul, this has been fixed. The underlying problem, however, still remains.