https://bugs.freedesktop.org/show_bug.cgi?id=91880
--- Comment #171 from Thomas DEBESSE dev@illwieckz.net ---
This sounds a lot like what I've been doing manually which sounds nice. Thanks for the input. I honestly would like a solution that doesn't cause my machine to draw an additional 90 watts at idle though.
Unlike the kernel patch above, that systemd service is setting the GPU to "low battery" by default, which is the most energy saving profile. The provided `dpm query` tool allows you to change that at any time. That's what I'm doing: at init, my GPU is set to "low battery" profile, and when I need to do some heavy time, I do that:
dpm-query set all high performance
And then once the heavy task is done, I do that to save energy again:
dpm-query set all low battery
With the default config for the service, you just have to add your own user to the "video" group to have the right to change the profile as user.
So, even if the patch above get merged one day, this service and tool is still useful, it's an easy way to change the default profile, whatever the default is.
Notice that the kernel patch above only set the level to "high", but keep the state to "balanced", so it's still adaptative. What "high balanced" does is setting the shader and memory frequencies to the max, which is drawing more power than default, but you will notice the fan are still idling and stopped if you do nothing because it's still saving a lot of energy. If you set "high performance" the fan will almost instantaneously start because there is no saving anymore. So "high balanced" is less energy saving that "auto balanced", but is still saving a lot of energy because it does not have to cold the chip while doing nothing (meaning the chip does nothing strong enough to get hot).