[TRACKING] PPD v TLP for AMD Ryzen 7040

I’m going to suspend for 10 minutes once, how should I set these?


How long should suspend cycles last in seconds (default 10)? 
How long to wait in between suspend cycles in seconds (default 4)? 

The time between suspends doesn’t matter for one cycle, you can keep the default.

Once you have two text file reports to compare post them to a gist.

Here’s the script result running PPD 0.13 and PPD 0.21, I’m unable to downgrade to PPD 0.20 as Fedora removed it from it’s official repository.

EDIT: I uploaded PPD 0.20 result but I downloaded the PPD from a third-party website so the result might be inaccurate.

PPD 0.13 doesn’t have AMD changes.

That’s a bit weird; it didn’t do the calculation for you it was supposed to.

Anyway: it looks like:

  • with 0.21 it consumed 3000 uAh.
  • with 0.20 it consumed 5000 uAh.

So to me it looks like 0.21 consumed less.

1 Like

Thanks for explaining this. I guess the bug was not replicable or it happens randomly. Reading from USBC meter confirmed that the consumption was indeed <1W in all 0.13, 0.20 and 0.21 versions of PPD

1 Like

The text at issue - the commit message - could be clearer. Here it that text.

Framework provides expansion cards. For the HDMI and DisplayPort, these benefit power management via enabling auto suspend.

I take it that the ‘these’ in the second sentence means ‘these commits’, i.e., these changes.

One wonders when the changes are liable to make it into various Linux distributions. Still, I guess - I have not checked - that the programs tlp and powertop will if suitably configured already give one the power reducations at issue.

https://fedoraproject.org/wiki/Releases/41/ChangeSet#Make_Tuned_the_Default_Power_Profile_Management_Daemon

Tuned is becoming the default for Fedora 41. Is ppd still the recommended daemon for AMD? If so how should we manually enable it?

1 Like

The two projects are going in different directions. There are some optimizations ported to tuned but not all.

My personal opinion (and of course I’m biased) is that a collection of python scripts that run at critical boot path for power savings is overkill.

3 Likes

Is there a short reference available for gaben’s second question - how to manually enable/configure ppd on Fedora 41 (without trawling back through the previous years worth of posts in this thread :wink:)?

1 Like

It should just be to use dnf to uninstall tuned and then again to install power-profiles-daemon.

Actually, it seems to force tuned-ppd even if you attempt to install power-profiles-daemon. That’s…not cool.

tim@thelina]~% sudo dnf install -y power-profiles-daemon
Updating and loading repositories:
Repositories loaded.
Package                                              Arch          Version                                               Repository                        Size
Installing:
 tuned-ppd                                           noarch        2.24.0-5.fc41                                         updates                        6.3 KiB
Installing dependencies:
 kernel-tools-libs                                   x86_64        6.11.5-300.fc41                                       updates                       34.3 KiB
 libtraceevent                                       x86_64        1.8.2-4.fc41                                          fedora                         1.5 MiB
 python3-linux-procfs                                noarch        0.7.3-6.fc41                                          fedora                        91.7 KiB
 python3-perf                                        x86_64        6.11.5-300.fc41                                       updates                        8.6 MiB
 tuned                                               noarch        2.24.0-5.fc41                                         updates                        1.5 MiB
 virt-what                                           x86_64        1.27-1.fc41                                           fedora                        76.1 KiB
Installing weak dependencies:
 kernel-tools                                        x86_64        6.11.5-300.fc41                                       updates                      895.9 KiB

Transaction Summary:
 Installing:         8 packages

Total size of inbound packages is 3 MiB. Need to download 3 MiB.
After this operation, 13 MiB extra will be used (install 13 MiB, remove 0 B).
[1/8] python3-linux-procfs-0:0.7.3-6.fc41.noarch                                                                       100% | 149.6 KiB/s |  36.8 KiB |  00m00s
[2/8] tuned-ppd-0:2.24.0-5.fc41.noarch                                                                                 100% |  73.0 KiB/s |  18.8 KiB |  00m00s
[3/8] virt-what-0:1.27-1.fc41.x86_64                                                                                   100% |   2.1 MiB/s |  40.1 KiB |  00m00s
[4/8] libtraceevent-0:1.8.2-4.fc41.x86_64                                                                              100% |   3.4 MiB/s | 277.7 KiB |  00m00s
[5/8] tuned-0:2.24.0-5.fc41.noarch                                                                                     100% | 905.3 KiB/s | 513.3 KiB |  00m01s
[6/8] kernel-tools-libs-0:6.11.5-300.fc41.x86_64                                                                       100% |   1.7 MiB/s | 195.6 KiB |  00m00s
[7/8] kernel-tools-0:6.11.5-300.fc41.x86_64                                                                            100% | 974.6 KiB/s | 458.1 KiB |  00m00s
[8/8] python3-perf-0:6.11.5-300.fc41.x86_64                                                                            100% |   1.7 MiB/s |   1.6 MiB |  00m01s
---------------------------------------------------------------------------------------------------------------------------------------------------------------
[8/8] Total                                                                                                            100% |   1.8 MiB/s |   3.1 MiB |  00m02s
Running transaction
[ 1/10] Verify package files                                                                                           100% | 800.0   B/s |   8.0   B |  00m00s
[ 2/10] Prepare transaction                                                                                            100% |  35.0   B/s |   8.0   B |  00m00s
[ 3/10] Installing kernel-tools-libs-0:6.11.5-300.fc41.x86_64                                                          100% | 578.7 KiB/s |  34.7 KiB |  00m00s
[ 4/10] Installing libtraceevent-0:1.8.2-4.fc41.x86_64                                                                 100% |  23.2 MiB/s |   1.5 MiB |  00m00s
[ 5/10] Installing python3-perf-0:6.11.5-300.fc41.x86_64                                                               100% | 128.9 MiB/s |   8.6 MiB |  00m00s
[ 6/10] Installing virt-what-0:1.27-1.fc41.x86_64                                                                      100% |  15.2 MiB/s |  78.1 KiB |  00m00s
[ 7/10] Installing python3-linux-procfs-0:0.7.3-6.fc41.noarch                                                          100% |  13.3 MiB/s |  95.3 KiB |  00m00s
[ 8/10] Installing tuned-0:2.24.0-5.fc41.noarch                                                                        100% |  11.1 MiB/s |   1.6 MiB |  00m00s
[ 9/10] Installing tuned-ppd-0:2.24.0-5.fc41.noarch                                                                    100% | 327.0 KiB/s |   7.8 KiB |  00m00s
[10/10] Installing kernel-tools-0:6.11.5-300.fc41.x86_64                                          100% [==================] |  36.7 MiB/s | 901.6 KiB | -00m00s
>>> Running trigger-install scriptlet: glibc-common-0:2.40-3.fc41.x86_64warning: posix.fork(): .fork(), .exec(), .wait() and .redirect2null() are deprecated, use rpm.spawn() or rpm.execute() instead
warning: posix.wait(): .fork(), .exec(), .wait() and .redirect2null() are deprecated, use rpm.spawn() or rpm.execute() instead
[10/10] Installing kernel-tools-0:6.11.5-300.fc41.x86_64                                                               100% |   1.1 MiB/s | 901.6 KiB |  00m01s
Complete!
1 Like

Wtf? That’s awful. Please file a bug.

1 Like

I’m trying the discourse route…F41 and power-profiles-daemon - Fedora Discussion …There’s already a discussion about it, sort of: F41 Change Proposal: Make Tuned the Default Power Profile Management Daemon (System-Wide) - #38 by decathorpe - Fedora Discussion Which leads to the bug comments at 2293628 – Make Tuned the Default Power Profile Management Daemon. Quite the curt response.

2 Likes

I tried forcefully installing it from koji. It installs, but all the nice integrations with gnome are busted. Not sure if it’s even doing what it’s supposed to.

I think you should file another bug, that all sounds really wrong.
Maybe after rebooting does everything come back to life with the force install?

1 Like

I’m wondering what will happen if you uninstall it and install TLP instead? Switch back to ppd when tuned is no longer forced upon users

Mario reported the bug here: 2323331 – Unable to install power-profiles-daemon anymore

Edit: Update for ppd is coming to F41 that should fix the issue.

1 Like

Thanks for the updates over the weekend, I was away or I would have been more proactive. Thanks @Mario_Limonciello for opening the ticket.

I tested the new version. I was able to switch to ppd, however the profiles don’t seem right and the power/batter switch behavior has regressed.

I cut https://bugzilla.redhat.com/show_bug.cgi?id=2323558 with details.