AMD has been on a roll over the past year making significant strides in power management across the Linux stack.

Most of this work is centered around support for p-state.

To take advantage you should run a newer Linux kernel. Here are some of the improvements from each recent release:

Use power-profiles-daemon 0.20+ which sets the appropriate p-state driver based on the selected battery profile.

Upcoming changes:

Kudos to AMD principal engineer Mario Limonciello for driving these changes across the board!

This is one advantage of increased competition (e.g. from the Apple M series); the entire ecosystem is pushed forward.

I am personally benefiting immensely from these improvements on my new Thinkpad t14s with AMD 7840U (battery life going from 4-5 hours to easily 10+ hours).

Finally we don’t have to settle anymore for underwhelming battery life on Linux laptops :)

  • @[email protected]
    link
    fedilink
    2710 months ago

    Agreed! On a Lenovo Yoga Slim 7 X, I also had a big, big boost of battery life. It’s really great how far it came in comparison to a few months ago!

  • Pasta Dental
    link
    fedilink
    2210 months ago

    I also noticed the fans spin less often and that the low power profile doesn’t make the computer noticeably slower and “stutterier” to use like it used to.

  • @[email protected]
    link
    fedilink
    English
    21
    edit-2
    10 months ago

    I have recently bought the P14s Gen 4 and except for some WiFi issues it has been pretty smooth sailing (definitely a loot better then the last notebook I had with nvidia dgpu).

  • @Molecular0079
    link
    English
    1710 months ago

    I am so happy power-profiles-daemon now sets the CPU driver instead of only setting the platform_driver when it is present. It was a big pain point of mine.

  • @[email protected]OP
    link
    fedilink
    English
    1110 months ago

    Also want to appreciate the idle efficiency improvements! My AMD laptop only loses a few % of battery life after idling overnight (with the default s2idle sleep mode). A huge improvement to my older work Intel ThinkPad which loses over 25% overnight…

    • @[email protected]OP
      link
      fedilink
      English
      5
      edit-2
      10 months ago

      Yes, Zen 2 and above support p-states! You might need to update your bios and enable CPPC if p-state is not showing up.

      You can confirm by running $ powerprofilesctl and seeing if CpuDriver is amd_pstate.

      • @[email protected]
        link
        fedilink
        410 months ago

        Thx, I will try that. When configuring my kernel I saw it and left it in the default config “active” (I was upgrading to the latest LTS kernel today). I did not check how I can interact with it as a user, yet.

    • @[email protected]OP
      link
      fedilink
      English
      5
      edit-2
      10 months ago

      PPD comes default on most distros (I can at least confirm for Debian, Ubuntu and Fedora on the GNOME variant). I am not sure about KDE variants but they should support it too even if it’s not pre-installed.

      You can check if it’s running with the following command:

      $ powerprofilesctl

      However as the 0.20 release which supports p-state just released recently most fixed point release distros won’t have the newer version. In this case you would need to update it manually.

      I am running Debian testing and it has the new version while stable does not.

      https://packages.debian.org/trixie/power-profiles-daemon