BTW: Some P4 CPUs will do speedstepping with acpi-cpufreq. I have some Supermicro servers with P4 prescott CPUs in them that do speedstepping using that module. Be aware that frequency detection can be extremely crappy, I disabled powersaving on some servers because acpi-cpufreq would only detect half the clock frequency due to broken BIOS.
]]>This person (http://paulsiu.wordpress.com/2007/06/23 … e-battery/) did a little bit of ad-hoc testing and found that there were no power savings using ODCM (on demand clock modulation).
It looks like whoever patched the p4-clockmod module to bump up the latency to disable ondemand frequency scaling knew what they were doing
EDIT: Found another good article that compares and contrasts different power-saving/frequency modulation methods for Intel processors: http://ixbtlabs.com/articles2/intel-thermal-features/
]]>Hello all,
I'm trying to use the cpufreq daemon to automatically throttle my CPU frequency and save some power. I followed most of the directions on the wiki page for [wiki]cpufrequtils[/wiki] and believe I have everything setup correctly. My problem is that the ondemand governor absolutely will not function correctly. After double checking my settings to make sure I had the daemon and conf files setup correctly, I decided to snoop around in the kernel log, because I knew that the ondemand governor was a kernel module. I came across this troubling error message:
Jul 21 16:05:52 folly kernel: ondemand governor failed, too long transition latency of HW, fallback to performance governor
Has anyone run across this before? I'm running a couple of Intel Pentium-4 3.4 GHz processors (several years old).
Everything I did before discovering the log message:
1. Installed cpufrequtils with pacman -S cpufrequtils
2. Added my processor's cpu-frequency driver (p4-clockmod) and the module for my desired governor (ondemand) to the MODULES array in /etc/rc.conf:
MODULES=( p4-clockmod cpufreq_ondemand !snd-pcsp !snd-hda-intel )
3. Edited /etc/conf.d/cpufreq to use the ondemand governor with no explicit limits on CPU frequency:
#configuration for cpufreq control
# valid governors:
# ondemand, performance, powersave,
# conservative, userspace
governor="ondemand"
# limit frequency range (optional)
# valid suffixes: Hz, kHz (default), MHz, GHz, THz
#min_freq="2.25GHz"
#max_freq="3GHz"
# use freq to set up the exact cpu frequency using it with userspace governor
#freq=
4. Added the cpufreq daemon to the DAEMONS array in /etc/rc.conf:
DAEMONS=(syslog-ng !netfs @crond @hal @net-profiles @alsa @sshd @cpufreq)
5. Rebooted to run the daemon, which runs fine, it just won't switch to ondemand (not even manually using cpufreq-set -g ondemand)
]]>