[Bug 1885730] Re: Bring back ondemand.service or switch kernel default governor for pstate - pstate now defaults to performance governor
Julian Andres Klode
1885730 at bugs.launchpad.net
Wed Jul 22 15:16:35 UTC 2020
The performance governor is the right choice for servers, but it's not
the right choice on non-server platforms, it's also not the default
kernel setting, it was set because we have the ondemand.service in
userspace that can change it back to ondemand (or well we have the
service because of that change in the kernel :D).
Fans do not necessarily spin, and you might not actually notice any
significant changes in power usage, but the expectation of a desktop
user is that the CPU scales its frequencies down, which recent-ish Intel
CPUs (Skylake+) on like a ThinkPad T480s - which manage the pstates in
hardware instead of software like the old MacBook does - don't do.
If we compare this to Red Hat, what they do is
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y in RHEL and
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y in fedora.
Power usage, at 3-6% CPU usage:
Powersave: I see 0.9-1.4W power usage on the cores
Performance, I see 1.6-2.5W
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1885730
Title:
Bring back ondemand.service or switch kernel default governor for
pstate - pstate now defaults to performance governor
Status in linux package in Ubuntu:
Confirmed
Status in systemd package in Ubuntu:
Invalid
Status in linux source package in Groovy:
Confirmed
Status in systemd source package in Groovy:
Invalid
Bug description:
In a recent merge from Debian we lost ondemand.service, meaning all
CPUs now run in Turbo all the time when idle, which is clearly
suboptimal.
The discussion in bug 1806012 seems misleading, focusing on p-state vs
other drivers, when in fact, the script actually set the default
governor for the pstate driver on platforms that use pstate.
Everything below only looks at systems that use pstate.
pstate has two governors: performance and powerstate. performance runs
CPU at maximum frequency constantly, and powersave can be configured
using various energy profiles energy profiles:
- performance
- balanced performance
- balanced power
- power
It defaults to balanced performance, I think, but I'm not sure.
Whether performance governor is faster than powersave governor is not
even clear.
https://www.phoronix.com/scan.php?page=article&item=linux50-pstate-
cpufreq&num=5 benchmarked them, but did not benchmark the individual
energy profiles.
For a desktop/laptop, the expected behavior is the powersave governor
with balanced_performance on AC and balanced_power on battery.
I don't know about servers or VMs, but the benchmark series seems to
indicate it does not really matter much performance wise.
I think most other distributions configure their kernels to use the
powersave governor by default, whereas we configure it to use the
performance governor and then switch it later in the boot to get the
maximum performance during bootup. It's not clear to me that's
actually useful.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1885730/+subscriptions
More information about the foundations-bugs
mailing list