Hi,

I opened drm/amd#5863 because I am seeing a fairly large and very reproducible power-consumption difference between Linux and Windows on my Lenovo ThinkPad T14 Gen 6 AMD (21QJ0057HV, Ryzen AI 7 PRO 350 / Krackan Point):

https://gitlab.freedesktop.org/drm/amd/-/issues/5863

The problem originally appeared with normal distribution kernels, including the Ubuntu 24.04 OEM kernel. I only started building custom kernels later, because I wanted to understand what was actually keeping the machine at this higher power level.

The short version of the measurements is:

|Screen on / idle Linux, clean multi-user.target: ~7.57 W Windows, normal desktop: ~5.60–5.78 W Internal display off Linux, panel verified powered off: ~5.27–5.45 W Windows, after natural screen-off: ~2.25–2.29 W|

On Linux I can now verify zero DRM streams, an inactive eDP link, backlight and panel power off, all HUBPs power-gated, and actual IPS1/IPS2 entries. Despite this, the machine still remains around 5.3–5.5 W.

During the investigation I also found what looks like a separate DCN35 zero-stream idle-policy issue. With the existing logic, a connected eDP panel with zero streams does not satisfy the headless condition used to reallow idle optimizations.

An experimental change allows IPS2 to work, but the measured improvement is only around 0.1–0.2 W at APU level, so it does not seem to explain the main difference. Active RCG also remains at zero despite long idle-admission windows and quiescent HUBP state.

I am trying to be careful with the Windows comparison because this is a Modern Standby system. The PowerShell measurement process remained runnable with SYSTEM_REQUIRED and EXECUTION_REQUIRED requests, but Windows may still be reaching deeper runtime residency between samples. I therefore do not want to claim that the Linux and Windows states are internally identical.

One thing that makes me hesitant to blame the APU itself is that I have found reports from other Linux users with very similar hardware showing much better efficiency.

A ThinkPad T14s Gen 6 AMD owner with a Ryzen AI 7 350 / Radeon 860M reported roughly 2.1 W idle with the stock TuneD profiles and about 1.5 W after further tuning. I also found a Framework 13 owner with the Ryzen AI 7 350 reporting roughly 10–12 hours of Linux battery life.

I realize these are anecdotal reports from different machines and configurations, so I am not treating them as controlled evidence. Still, they make me think the platform itself should be capable of considerably better Linux power efficiency.

For some practical context, my normal workload is software development and cybersecurity work: VSCodium, Signal/Discord, Spotify, a browser with several tabs, SSH terminals, and usually an RDP session.

With that workload, Linux tends to put the laptop around 10–11 W, while Windows is closer to ~7 W. Unfortunately, Windows does not provide the environment and tooling I normally need, which is why I have been trying quite hard to understand what Linux might be missing here.

At this point I am mostly trying to determine whether Linux is missing some Krackan-specific platform-power transition or initialization involving SMU/PMFW, DF/UMC, ACPI/platform coordination, or another parent power domain.

I may of course be looking in the wrong place, which is why guidance from people familiar with the platform would be extremely useful.

The GitLab issue contains the measurements and the investigation so far.

I have the machine available for testing and can build and test kernels quickly. If there is a diagnostic patch, additional telemetry, firmware trace, or a specific experiment that could help narrow this down, I would be very happy to run it.

Thanks for taking a look.

Regards,

--
_____________________________________
Daniel Ruszin
Software Engineer | Cybersecurity Practitioner | Accountant

Mobile:    +36 20 249-2996   (+Viber, Signal, Telegram, etc.)
E-mail:[email protected]

Reply via email to