summaryrefslogtreecommitdiffstats
path: root/source/a/sysvinit-scripts/scripts/rc.cpufreq
diff options
context:
space:
mode:
Diffstat (limited to 'source/a/sysvinit-scripts/scripts/rc.cpufreq')
-rw-r--r--source/a/sysvinit-scripts/scripts/rc.cpufreq8
1 files changed, 8 insertions, 0 deletions
diff --git a/source/a/sysvinit-scripts/scripts/rc.cpufreq b/source/a/sysvinit-scripts/scripts/rc.cpufreq
index cafcb66a..24adb8d9 100644
--- a/source/a/sysvinit-scripts/scripts/rc.cpufreq
+++ b/source/a/sysvinit-scripts/scripts/rc.cpufreq
@@ -29,6 +29,14 @@
# also provides information about the recent load.
SCALING_GOVERNOR=ondemand
+# For CPUs using intel_pstate, always use the performance governor. This also
+# provides power savings on Intel processors while avoiding the ramp-up lag
+# present when using the powersave governor (which is the default if ondemand
+# is requested on these machines):
+if [ "$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver)" = "intel_pstate" ]; then
+ SCALING_GOVERNOR="performance"
+fi
+
# If rc.cpufreq is given an option, use it for the CPU scaling governor instead:
if [ ! -z "$1" -a "$1" != "start" ]; then
SCALING_GOVERNOR=$1