You are not logged in.
As per the wiki, I loaded appropriate module (powernow-k8), didn't change any settings, (so it should be on_demand set to scale up when a cpu reaches 95%). However, when I run "watch grep \"cpu MHz\" /proc/cpuinfo" It shows that each core is constantly jumping back and forth between 800 (min) and 3,200 mhz (max). this would be fine if there were much of a load, but none of my cores are stressed beyond 2%. In fact, I rebooted without X, and ran the command and had pretty much the same results.
Shouldn't all four cores be "chilling" at 800 mhz until I actually run something that challenges the CPU?
Just to be sure, I ran the included script (/etc/rc.d/cpufreq) with these settings:
#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=This didn't seem to change anything. Note that I left the min/max_freq settings commented, as the wiki says that scaling will work fine without it.
To be clear, when I monitor the frequency of each CPU, it shows that each one of them spends about half of it's time at full speed in spite of the fact that the system is under very low load.
Thanks.
Last edited by Convergence (2012-05-15 21:06:14)
It's a very deadly weapon to know what you're doing
--- William Murderface
Offline
@Convergence
You could try conservative governor then. It works like ondemand, but changes frequencies more gradually.
Also, you may want to use cpufreq-info utility that shows cpufreq information. To add cpufreq statistics to it's output you must utilize cpufreq-stats, which is compiled as a module in the archlinux kernel:
# modprobe cpufreq-statsor just add it to the MODULES array of /etc/rc.conf
Looks like this:
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1 2 3
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 800 MHz - 2.20 GHz
available frequency steps: 2.20 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
available cpufreq governors: powersave, ondemand, performance
current policy: frequency should be within 800 MHz and 2.20 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 800 MHz.
cpufreq stats: 2.20 GHz:6.26%, 2.00 GHz:0.14%, 1.90 GHz:0.09%, 1.80 GHz:0.17%, 1.70 GHz:0.23%, 1.60 GHz:0.31%, 1.50 GHz:0.20%, 1.40 GHz:0.21%, 1.30 GHz:0.41%, 1.20 GHz:0.31%, 1.10 GHz:0.29%, 1000 MHz:0.26%, 900 MHz:0.18%, 800 MHz:90.93% (2765)Last edited by ajaxas (2012-05-15 15:26:36)
Offline
Read about the race to idle. What you're seeing is perfectly fine. Going with the conservative governor is not good advice, that one was made for old AMd processors that couldn't do fast switching. But modern processors can do fast switching, so make use of that.
Offline
@ajaxas: After reading Gusar's post, I think I'll stick with ondemand. However you've given me a a new tool to play with. Thanks.
@Gusar: That's really cool. Thanks for pointing that out.
It's a very deadly weapon to know what you're doing
--- William Murderface
Offline