You are not logged in.
I did:
# pacman -S cpufreq acpid
# modprobe p4-clockmod
# modprobe cpufreq-ondemandAlso put p4-clockmod, cpufreq-ondemand, and cpufreq-conservative into MODULES section of /etc/rc.fonf
and included acpid and cpufreq to the DAEMONS array (to see if automatically loading these settings make a difference).
I've got "ondemand" in the /etc/conf.d/cpufreq (but have tried "powersave" and "conservative" as well - the settings do have effect).
cpufreq-inforeturns:
-- snip --
driver: p4-clockmod
-- snip --
current policy: frequency should be within 113 MHz and 900 MHz
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 900 MHz (asserted by call to hardware).Note please, that it says "performance, not "ondemand".
I get the same when I do:
# cpufreq-set -c 0 -g ondemandOnly if do
# cpufreq-set -c 0 -g powersaveI get this reply from cpufreq-info:
-- snip --
The governor "powersave" may decide which speed to use
within this range.
current CPU frequency is 113 MHz (asserted by call to hardware).# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governorsreturns:
userspace conservative ondemand performance# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequenciesgives
112500 225000 450000 562500 675000 787500 900000I can change frequencies manually with (eg.):
# cpufreq-set -c 0 -f 112500, but both ondemand and conservative keep the clock at 900 MHz, whereas powersave keeps everything at 112.5 MHz, no matter what the load is.
I haven't tried to fiddle around with up_threshold and down_threshold settings yet, as I would expect to see cpufreq to scale down at least a little bit on basically 0 load.
Am I missing some critical setting? cpufreq seems to be working, since I can change things manually.
My google-magic has deserted me on this one. Any ideas?
Last edited by JackH79 (2012-06-20 22:56:01)
Offline
Are you sure that the processor actually supports on-demand frequency changing? According to wikipedia, the eeepc 701 has a Celeron M which doesn't support SpeedStep (which afaik is needed for auto scaling).
And btw, since kernel 3.4 the cpu frequency driver (in your case p4-clockmod) is autoloaded, so you shouldn't have to specify it in your MODULES array anymore. Also the ondemand and performance modules are built into the kernel, so you don't have to load these either.
Offline
65kid is correct, the Celeron in the 701 doesn't support frequency scaling. It only does clock modulation, which is a totally different thing. He is wrong about the performance governor though, it's not built into the kernel, so you do need to load it (unless the p4-clockmod module loads it automatically, I'd have to check that).
The purpose of clock modulation is not power saving, it's thermal management. So just load the p4-clockmod and cpufreq_performance modules, and you're done.
Offline
He is wrong about the performance governor though, it's not built into the kernel, so you do need to load it (unless the p4-clockmod module loads it automatically, I'd have to check that).
hm, performance is available on my system without loading the module, and as far as I know (with my addmittedly limited kernel config knowledge) =y means built into the kernel!?
$ zgrep CONFIG_CPU_FREQ_GOV_PERFORMANCE /proc/config.gz
CONFIG_CPU_FREQ_GOV_PERFORMANCE=yOffline
Oops, you're right. I thought only ondemand is built-in. But checking here, both ondemand and performance are built-in. Powersave, userspace and conservative are modules.
Last edited by Gusar (2012-06-20 12:09:36)
Offline
Thanks very much to you both for this clarification. I will do some reading on clock modulation.
Funnily enough, p4-clockmod is not being loaded automatically. (I'm running standard arch kernel 3.4.3 at the mo'.)
When I do put it into /etc/rc.conf, only ondemand and performance are available to cpufreq.
However, I think you've pointed me in the right direction(s). Marking this one as solved for now. I might re-open it later if I hit a snag.
Thanks again.
Last edited by JackH79 (2012-06-20 22:57:50)
Offline