[TRACKING] PPD v TLP for AMD Ryzen 7040

Ah you’re the one from the issue! :slight_smile: I’m not sure what is happening on your system, but the balanced profile has existed for a long time (always?). I’m on KDE so maybe gnome didn’t show it to the user, but the support was definitely there in PPD.

My apologies for this issue. This was caused due to the change to Tuned by default, and was caused due to an oversight by me and the change owners.

It should be fixed soon. Feel free to ping me in the future! :slight_smile:

1 Like

No apologies needed. I’m still not sure why my experience was different on F40, but the balanced profile does what I expect. I appreciate the responses from everyone.

1 Like

I’m a bit out of the loop and just skimmed through the last few posts. I’m on Fedora Kinoite 40 and the update for 41 is out. Will this mean worse battery life because it switches from PPD to Tuned? And how do I go back to PPD using rpm-ostree?

You will have to wait a day for power-profiles-daemon-0.23-2 to reach stable. After that you can remove tuned and install ppd like this:

rpm-ostree override remove tuned --install power-profiles-daemon

I think that should work, I’ve never used kinoite. Anyway if you have an issue, just let us know :slight_smile:

2 Likes

@principis ; It would be helpful if we can have a way for them to co-exist without removing tuned pkg as it’s a dependency for a few other things like performance tuning/cockpit and others. Perhaps something in tuned’s configuration for managing power profiles can be disabled?

1 Like

That is possible, but you’ll have to remove tuned-ppd. This will keep tuned installed.

On Fedora:

sudo dnf swap tuned-ppd power-profiles-daemon

Or kinoite:

rpm-ostree override remove tuned-ppd --install power-profiles-daemon
4 Likes

I’ve installed Ubuntu Mate 24.04 and by default it installs “tlp” , it doesn’t install “power-profiles-daemon” or “tuned” .
Looking at official docs at linux-docs/Ubuntu24.04LTS-Setup-amd-fw13.md at main · FrameworkComputer/linux-docs · GitHub it doesn’t mention anything about switching from tlp to ppd or tuned .
So what’s currently the proper setup, since I’m reading one should not use tlp on Ryzen 7040 and should switch to using ppd? Should I keep using tlp or should I remove it and install ppd from Power Profiles Daemon : Mario Limonciello . I doubt Ubuntu Mate installer installs tlp where as Ubuntu official installs ppd , but could be.

“Normal” Ubuntu pre-installed PPD. If a derivative doesn’t, you should switch to that.

Hi all, I tuned with ppd on Fedora Kinoite 41 as advised, but it looks like the power management settings do not work (e.g. the laptop goes to suspend after some minutes even if I set the suspend delay to never). Is it just me?
Thanks!

With some tinkering I found the recommended value of tuning TLP. In /etc/tlp.conf

CPU_SCALING_GOVERNOR_ON_AC=powersave
CPU_SCALING_GOVERNOR_ON_BAT=powersave

powersave is more like adaptive mode so no performance degradation when required, while performance is like running the clock speed high most of the time. The defaults are powersave so you can keep the #.

CPU_ENERGY_PERF_POLICY_ON_AC=balance_performance
CPU_ENERGY_PERF_POLICY_ON_BAT=balance_power

These values control the energy_performance_preference(EPP) I tested these and found that performance increases the CPU clock speed compared to balance_performance, when fully loaded, the clock speed are the same, no performance increase overall. power decreases the clock speed further than balance_power however, the speed is at the lower end of the efficiency curve, which means that the lower clock speed is compensated by higher CPU load and there’s little if any power save than balance_power, in other words, your computer will become laggy without significant power saving. In conclusion, it’s recommended to leave them at their default values balance_performance on AC and balance_power on bat. If you want to change one of them, remove the # and you don’t need to remove the other #. as the default values are:balance_performance (AC), balance_power (BAT)

PLATFORM_PROFILE_ON_AC=performance
PLATFORM_PROFILE_ON_BAT=low-power

These values are important, they control the TDP. The default value is <none> If you dual boot and restart from Windows or another Linux distribution, the power slider from the previous OS will be kept, to prevent this from happening, it’s recommended to remove the # and set the values manually. If the computer boots from a previous shutdown, balanced will be used in /sys/firmware/acpi/platform_profile.
In balanced, the PPT FAST Limit is 51W, PPT SLOW Limit is 33W and APU STAPM Limit is 28W. In performance, the PPT FAST Limit is 53W, PPT SLOW Limit is 35W and APU STAPM Limit is 30W. In low-power, the PPT FAST Limit is 27W, PPT SLOW Limit is 15W.
Since the defaults are <none> you need to set both values for TLP to work properly, otherwise when plugging or unplugging power cord, the previous one will continue in effect rather than change to balanced.

1 Like

Had to write this out with units since I struggled to follow:

(55 W*hr) * 10% = 5.5 W*hr
(5.5 W*hr) * (60 min/hr) = 330 W*min
(330 W*min) / (55 min) = 6 W

1 Like

jwp

Nov 2023

Thanks @Mario_Limonciello ;

adding:

cpufreq.default_governor=powersave initcall_blacklist=cpufreq_gov_userspace_init

to /etc/default/grub kernel args does net the desired behaviour sans any additional software.

Hold on; what is the desired behaviour? That is, what does that boot switch do, please? I apologise if I have overlooked something,

EDIT: oh, the desired behaviour is to make the computer always use the ‘powersave’ profile?

I find that there are udev rules here for anyone who wants ppd to switch profile automatically upon change of power-source.

However, I find - on Linux Mint, which is what I am testing on - that the ‘power-saver’ profile:

(1) lowers the brightness so far that icon colours are distorted;
(2) makes the brightness keyboard buttons behave very weirdly;
(3) still leaves the progam PowerTop reporting that a load of optimisations are disabled.

I’m going back to tlp.

FYI, #1 is the AMD Adaptive Backlight Modulation

Thanks, Leonard. I notice that that page says the following about that function. ‘[S]ince this will impact the display output fidelity, it would be good if this option was something that users could turn on or off.’

It is possible via the amdgpu.abmlevel kernel parameter, see Module Parameters — The Linux Kernel documentation

There are multiple ways to turn it off. How old is your ppd release? Newer ppd releases only turn it on when battery gets low, and also have a way to turn it off totally from ppd instead of relying on kernel command line.

As for your other points, powertop may declare some things as not optimized but please remember not everything in powertop can affect battery negatively on an AMD system. The requirements for low power at runtime are not the same between Intel and AMD.

1 Like

Leonard and Mario: thank you both.

As to version of ppd:

$ apt list ppd* -a
Listing... Done
ppdc/noble-updates,noble-updates,noble-security,noble-security 2:2.0.0-0ubuntu4.1 all
ppdc/noble,noble 2:2.0.0-0ubuntu4 all

power-profiles-daemon, not ppdc. But given that you’re on ubuntu nobel, the answer is probably 0.21.