1
0
Fork 0

latency-performance: enable performance governor

This commit is contained in:
Jan Vcelak 2010-07-13 15:05:40 +02:00
parent 34a8129ea8
commit 1d32fcb0e7

View file

@ -0,0 +1,100 @@
#!/bin/sh
VAR_SUBSYS_KTUNE="/var/lock/subsys/ktune"
CPUSPEED_SAVE_FILE="/var/run/tuned/ktune-cpuspeed.save"
CPUSPEED_ORIG_GOV="/var/run/tuned/ktune-cpuspeed-governor.save"
CPUSPEED_CFG="/etc/sysconfig/cpuspeed"
CPUSPEED_INIT="/etc/init.d/cpuspeed"
CPUS="/sys/devices/system/cpu*/cpufreq"
start() {
# Save currently enabled governor and/or cpuspeed config
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor > $CPUSPEED_ORIG_GOV
if [ ! -e $CPUSPEED_SAVE_FILE -a -e $CPUSPEED_CFG ]; then
cp -p $CPUSPEED_CFG $CPUSPEED_SAVE_FILE
sed -e 's/^GOVERNOR=.*/GOVERNOR=performance/g' $CPUSPEED_SAVE_FILE > $CPUSPEED_CFG
fi
# Enable performance governor (best for maximum i/o throughput in most cases)
if [ -e $CPUSPEED_INIT ]; then
/sbin/service cpuspeed restart > /dev/null 2>&1
else
for cpu in $CPUS; do
echo performance > $cpu/scaling_governor
done
fi
return 0
}
stop() {
# Restore previous cpuspeed config
if [ -e $CPUSPEED_SAVE_FILE ]; then
cp -fp $CPUSPEED_SAVE_FILE $CPUSPEED_CFG
rm -f $CPUSPEED_SAVE_FILE
fi
# Re-enable previous governor
if [ -e $CPUSPEED_INIT ]; then
/sbin/service cpuspeed restart > /dev/null 2>&1
elif [ -e $CPUSPEED_ORIG_GOV ]; then
for cpu in $CPUS; do
echo $(cat $CPUSPEED_ORIG_GOV) > $cpu/scaling_governor
done
else
for cpu in $CPUS; do
echo userspace > $cpu/scaling_governor
cat $cpu/cpuinfo_max_freq > $cpu/scaling_setspeed
done
fi
if [ -e $CPUSPEED_ORIG_GOV ]; then
rm -f $CPUSPEED_ORIG_GOV
fi
return 0
}
reload() {
start
}
status() {
return 0
}
case "$1" in
start)
[ -f "$VAR_SUBSYS_KTUNE" ] && exit 0
start
RETVAL=$?
;;
stop)
[ -f "$VAR_SUBSYS_KTUNE" ] || exit 0
stop
RETVAL=$?
;;
reload)
[ -f "$VAR_SUBSYS_KTUNE" ] && reload
RETVAL=$?
;;
restart|force-reload)
[ -f "$VAR_SUBSYS_KTUNE" ] && stop
start
RETVAL=$?
;;
condrestart|try-restart)
[ -f "$VAR_SUBSYS_KTUNE" ] || exit 0
stop
start
RETVAL=$?
;;
status)
status
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
RETVAL=2
;;
esac