I own a laptop and wanted to know how to lower the CPU frequency.
The CPU is a Core 2 Duo @ 2,2 Ghz.
When in ‘Powersave’ mode, Speedstep lowers the frequency to 800Mhz.
Running
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
outputs
2201000 2200000 1600000 1200000 800000
So it seems that lowest possible frequency is 800Mhz. I wanted to know if (even with some hacks, like recompiling the kernel) I could further lower the frequency (for example to 300Mhz) after boot.
The BIOS has no relevant options, so I wanted a software solution.
You can actually just echo values to the proper /sys directories, you shouldn’t need anything else. However, there are tools such as Manpage of cpufreq-set available as well, though you will have to find the rpms for them.
There may be a minimum set by the CPU. There are hardware reasons why some CPUs are not designed to be clocked below a certain rate, to do with semiconductor physics, charge refresh rates and things like that. So the chipset may not support it.
And you may not necessarily get much more power saving. It all depends. And remember that CPU is only one of the devices on the board consuming power.
Try the powertop program, that can give you some ideas where your power is going, and suggestions.
thanks for the replies, but I still can’t do what I want. However powertop is a good program (I had already used it).
Modifying scaling_setspeed seems to work only if the new value is in scaling_available_frequencies (the values officially supported by speedstep).
Are these hardware constraints (as ken_yap says) or not?
Isn’t undervolting what you are looking for?
BTW, what is your graphics card? It most certainly offers some power saving possibilities, activating these may provide best results with little effort without jeopardizing system stability.
Well, AFAIK underclock (in a reasonable range) should make the system even more stable. Undervolt instead makes it less stable. Said that, I want to do underclock only to save power.
Undervolt is most likely a BIOS setting, I wouldn’t expect linux kernel to do it.
About my graphic card, it’s a Centrino’s “Intel 965 GM” and yes, I am interested if there are some options to lower its power drain (I don’t use neither compiz nor beryl, obviously).