I have a SME server with a E5504 CPU and I like to make it as 'green' as possible. As such I am thinking that throttling the CPU depending on the demand/load of the system would help as maybe a first step?
With some searching I found that SME comes with 'cpuspeed' to handle CPU throttling, but info on it is quite limited (or I could not find it). I did find some SME bug reports discussing some issues with 'cpuspeed' on some CPUs back in 2005 and later some discussions to vote it is turned back on.
So I tried enabling the service with:
config setprop cpuspeed status enabled
and after a reconfigure and reboot I can see that the service is running:
# service cpuspeed status
cpuspeed (pid 8085 8084 8083 8082) is running...
I can also see that the CPU speed seems to be lower:
# cat /proc/cpuinfo
...
model name : Intel(R) Xeon(R) CPU E5504 @ 2.00GHz
cpu MHz : 1596.000
However, I am now a bit at a loss regarding further configuration and where this configuration is supposed to happen.
Some googling indicates that CPU throttling is indicated/configured in:
/sys/devices/system/cpu/cpu0/cpufreq/*
and there I find that apparently the CPU freq steps are: 1995000 1862000 1729000 1596000
Is the 1.5G freq the lowest it can go?
Also the process of speed stepping is apparently controlled by some governor where it appears that the following are available:
ondemand powersave userspace performance
but what configured/active is:
userspace
There is also some indication that some of these governors are handled through loaded kernel modules.
So in summary how do I configure my system properly for ondemand CPU throttling?