How to change CPU scaling governor

I’m using Bazzite (Desktop version) on my PC with AMD Ryzen CPU. I see that default scaling governor is set to powersave:

$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
powersave

There is additionally performance governor available, but nothing more:

$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_governors
performance powersave

I tried to change /etc/tuned/ppd.conf file like here (commented-out lines are these that I have actually changed):

[main]
# The default PPD profile
#default=balanced
#battery_detection=true
default=performance
battery_detection=false

[profiles]
# PPD = TuneD
power-saver=powersave
balanced=balanced-bazzite
performance=throughput-performance-bazzite

[battery]
# PPD = TuneD
balanced=balanced-battery-bazzite

and restarting, but that didn’t do anything, at least to /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor - it’s still on powersave.
My PC is hooked up to a UPS, so just to be sure, I disabled battery detection there to prevent any performance limits that could be applied by tuned.

How to change default scaling governor? For example, Is it possible to have the ondemand governor with current Bazzite image?

Just rpm-ostree kargs --append "cpufreq.default_governor=ondemand" no?

This didn’t solve it for me - after reboot, the governor is still powersave

What does cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors return? If it doesn’t list ondemand then the cpufreq_ondemand module isn’t loaded for some reason. If that’s the case, you should probably file a bug in main

https://wiki.archlinux.org/title/CPU_frequency_scaling#Autonomous_frequency_scaling

The most important feature of active governing is that only two governors appear available, powersave and performance. They do not work at all like their normal counterpart, however: these levels are translated into an Energy Performance Preference hint for the CPU’s internal governor. As a result, they both provide dynamic scaling, similar to the schedutil or ondemand generic governors respectively, differing mostly in latency.

So my guess is that you either change entirely the scaling driver, the operating mode of amd_pstate, or ideally leave it as it is, since in that default mode it already operates in a similar way to vintage ondemand or schedutil already.

kuba@bazzite:~$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
performance powersave

Done ondemand governor not available · Issue #1169 · ublue-os/main · GitHub

Maybe try using tlp and tlp-ui