Ondemand governor cannot work on Intel Atom D4x0 and D5x0
To my surprise my Intel Atom D410 with max. TDP 10W does not feature
Enhanced Intel SpeedStep technology. The linux kernel reports ondemand
governors, but I am not able to set any of these.
# echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
# dmesg | tail -n 1
ondemand governor failed, too long transition latency of HW, fallback to performance governor
The thing is PowerTop
utility advices to run this command in order to get power consumption down. And it obviously does not work. Therefore I have reported
this behavior last weekend and Jaroslav Škarvada from Red Hat discovered and fixed an issue in Intel's PowerTOP with the long cpuinfo_transition_latency the day after. It will most likely be rolled out in some RHEL 6.X updates and fixed in upstream I guess.
On top of that he recommended to workaround this by using an userspace mode with cpuspeed
utility. If you have this kind Atom I recommend you to do this (example for Fedora/RHEL):
# yum install cpuspeed
# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
208333 416667 625001 833335 1041668 1250002 1458336 1666670
# vim /etc/sysconfig/cpuspeed
# service cpuspeed start
# chkconfig cpuspeed on
I really recommend not to use the lowest possible frequency. My system tend to be little unresponsive when running at 200 MHz. I also recommend to tune the thresholds a bit. The default pair (15/25) is way too much. My setting (20/80) is pretty "conservative" but giving nice results on my system. I'd be pleased for sharing your opinions.
This is same with all D-series Atoms like D410, D425, D510, D525
and also Atom 200, 300
. Other series like N, E or Z have EIST. I have to admit you wont save much with EIST, because Atoms have very low TDP even without it. I am not sure if it worth it at all. Some measurements would be nice. Feel free to comment on that.
Good reading regarding power management is definitely the RHEL 6 Power Management Guide