I am wondering what can be done in Linux to reduce CPU power consumption. In Windows, I’m familiar with setting and testing power limits and undervolting using Throttlestop (amazing tool), but to my knowledge no such tool (command line or otherwise) exists for Linux.
I’ve recently acquired an HP Mini G6 with a full fat i7 10700, which came as a surprise as it was advertised as 10700T when I went to pick it up.
I was after the T CPU due to the lower power consumption for an always on home server that sees occasional use (media server, file sharing, image backup, etc)
Also, I don’t actually know if the idle power consumption between the 10700 and the 10700T is actually any different, or if the T only prevents the CPU from boosting as hard - if anyone could clear that up! Cheers.
Install
powertop
. It will allow you to tune the power consumption.deleted by creator
Appreciate the information, thank you.
The biggest impact would probably be changing the CPU scaling governor. This controls how the kernel scales the CPU frequency depending on the work load. It’s per-processor core. An application like tuned can do this for you and make other adjustments automatically, depending on the profile you select.
Most distributions use the ondemand governor. To see available frequency governors you can do something like:
cat /sys/devices/system/cpu/cpufreq/policy0/scaling_available_governors
and change it with:
echo conservative > /sys/devices/system/cpu/cpufreq/policy0/scaling_available_governors
Here’s a link to kernel docs explaining each one.
Thank you. Good amount of reading in there.
Oh, these are both great. Thank you.
There is intel-undervolt which might already do what you need.
There is also the cpupower utility which works with the pstate driver which allows you to tune the frequency.
Very cool. Not updated since 2019, though?