However sometimes the computer takes a very long time (20
seconds to -- I think -- 15 minutes or more) to react to a
change in the load. I have run commands like "stress --cpu 1" or
"stress --cpu 8" and watched i7z. When the governor is
powersave it may stay at 800MHz and when the governor is
performance it may stay between 1000MHz to 1400MHz. If I leave
the stress running long enough it seems like eventually the
frequency will go up to the expected values. Once the CPU
frequency goes up I can keep it up by leaving the stress running
and my applications are responsive. If I kill the stress
process, the system may or may not respond quickly to changes in
load.
I thought that I would give my current best work-around to this
problem for any future googler who has the same problem. This
solution is looking like it is good enough to keep. It is based
on experimentation without any understanding of the underlying
mechanics.
I have put the lines
for i in 0 1 2 3 4 5
do
/usr/bin/cpupower -c 6 idle-set --disable $i
done
/usr/bin/cpupower frequency-set -g powersave
into my rc.local script. I have noticed before that disabling
idle states seems to mean that once the cpu frequency becomes
responsive to cpu load it remains responsive to cpu load. But
without the "-c 6" the machine ran somewhat hot whereas with the
"-c 6" the machine seems to cool down pretty well when it is
idle. I don't think that the powersave line is necessary because
I think that powersave is the default. I am wondering if "-c 0"
would be better but I will experiment with that later.
I also have some other lines in my rc.local suggested by powertop
but I don't think that these lines are making any difference to my
problem:
#
# disable nmi watchdog (powertop)
#
echo '0' > /proc/sys/kernel/nmi_watchdog
#
# VM writeback timeout
#
echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs'
-Timothy
On 11/12/2014 07:52 PM, Timothy Redmond wrote: