CPU scaling vs Temperature
John Moser
john.r.moser at gmail.com
Sun Mar 6 16:24:35 UTC 2011
So here's a thought: I can read my fan speed, CPU temp, and CPU
frequency scaling speed.
When my CPU is under extreme load my system shuts down. Okay, I've
noted this. There was a layer of dust caked between the fan and heat
sink... removed it, that helped.
Why not have a user-configurable critical temperature? 'sensors'
reports my CPU's critical is 95C; but my system shuts down if I maintain
above 80C long enough. How about at 75C, CPU frequency scales down to
minimum? This seems sensible. The value can be user-adjustable.
Other interesting ideas are an automatic suspend-to-RAM around the 80C
mark, in which case if you come back out of it above 78C the system
displays a message that says, "System running TOO HOT, will re-enter
suspend mode in 15 seconds! Please wait half an hour for the CPU to
cool off, then save your work and shut down!"
The Linux kernel doesn't have a scheduler scaler, which would be nice.
If the scheduler dedicated X% of CPU time to an infinite loop that runs
HLT (i.e. the system idle process), then you could say, "Run this CPU
under 500MHz," and if your CPU scales to 1GHz (mine has 1.9, 1.8, and
1.0) and you scaled it to 1.0, the kernel would scale to a jittery 50%
CPU idle. This sort of software CPU scaling would probably only find
use in these sorts of emergency cases.
More information about the Ubuntu-devel-discuss
mailing list