htop
htop copied to clipboard
Missing temperature reports on Intel Alder Lake Processor cores
I have a Lenovo Yoga 9 14IAP7
with an Intel Core i5-1240P
.
htop
only shows temperatures for the 0, 4, 8 & 12 cores.
The temperatures tempX
from sensors -u coretemp-isa-0000
seem to correspond to the cpu id
rather than the processor
of a core in /proc/cpuinfo
.
Is this a new quirk of Alder Lake chips (e.g. due tho the big-little design)?
See #806 and #856 …
htop
relies on libsensors
to provide reasonable values.
Unfortunately libsensors
is not reasonable enough …
The issue might be that sensors indexes by core id, and these have a strange mapping to processors. For some reason core id increments by 4, with two processors per core (hyperthreading). That's for P-cores. For E-cores there is one core id per processor. These match between sensors and cpuinfo. Should htop be tying sensor values to cpuinfo core id?
Here is an abbreviated demonstration:
$ sensors
Core 0: +39.0°C (high = +100.0°C, crit = +100.0°C)
Core 4: +41.0°C (high = +100.0°C, crit = +100.0°C)
Core 8: +42.0°C (high = +100.0°C, crit = +100.0°C)
... etc ...
$ grep 'core id' /proc/cpuinfo
core id : 0
core id : 0
core id : 4
core id : 4
core id : 8
core id : 8