Laptop 16 iGPU (780M) stutters horribly when connected to A/C power

Hi there. I’ve been an owner of a Framework Laptop 16 AMD 7940HS for about 2(?) years now, and I’m still very happy with the device. However, there’s been one glaring issue that I’ve overlooked until now, and no matter how I search the web, I can’t seem to find any good answers for it.

For some reason, in the most backwards way, my iGPU performs well on battery power but suffers drastically when connected to A/C power. I’ve tested this consistently across both CachyOS Rolling and Windows 11, and it happens on both operating systems with near-default configurations.

I am using the 240W adapter that released recently, and framework-tools confirms the negotiation in Windows.

PS C:\Users\jonathing\Downloads> .\framework_tool.exe --pdports
USB-C Port 0:
  PD Contract:   No
  Power Role:    Sink
  Data Role:     Ufp
USB-C Port 1:
  PD Contract:   No
  Power Role:    Sink
  Data Role:     Ufp
USB-C Port 2:
  PD Contract:   No
  Power Role:    Source
  Data Role:     Dfp
  VCONN:         Off
  Negotiated:    5.000 V, 1500 mA, 7.500 W
  CC Polarity:   CC1
USB-C Port 3:
  PD Contract:   Yes
  Power Role:    Sink
  Data Role:     Dfp
  VCONN:         Off
  Negotiated:    48.000 V, 5000 mA, 240.0 W
  CC Polarity:   CC1
  Port Partner:  Source
  EPR:           Active (Supported)
  Sink Active:   Yes

I’ll try and get a video later, but the easiest way I can test this is to try and play Spelunky 2. On battery, no stutters. On power, the iGPU struggles tremendously, sometimes to the point where the entire system will freeze for several seconds at a time.

As an additional note, this behavior is not present when using the dGPU, on battery or on power.

Any advice on this would be great.

Did you remove the dGPU when using the iGPU to play games?

Yes. Right now, it is using the Expansion Bay Shell.

Which bios version are you on?

04.05

Use amdgpu_top to observe the iGPU and try to replicate the stutter. What did you find

I have no idea how to properly use amdgpu_top or read results from it, but here are some screenshots of the GUI immediately after playing 30 seconds of Spelunky 2. The massive dip in the graphs was where the worst of it seemed to have happened.

Please scroll down to show the GPU Metrics

Hey there, sorry for the delay. Here’s a screenshot of AMDGPU TOP after playing some Spelunky 2 on battery power.

And here is a screenshot of the metrics after playing some on A/C power, with an additional screenshot showing the throttling log.

I don’t understand how to read these at all, so if you need more screenshots including other pages, let me know.

[PROCHOT_CPU] and [PROCHOT_GPU] are often false positives and may appear even when the CPU is not throttling. [EDC_CPU] means your VRM is overloaded

Is there a reason why this would only be happening when my laptop is plugged in to power? The Steam Deck, for example, doesn’t have this issue, and also uses an APU.

Could be BIOS issue Framework Laptop 16 Ryzen 7040 BIOS 4.03 Release STABLE - #102 by jared_kidd Framework Laptop 16 Ryzen 7040 BIOS 3.07 Release STABLE - #20 by Abilio_Costa
You can probably increase the EDC limit via ryzenadj
Framework Laptop 16 Ryzen 7040 BIOS 4.03 Release STABLE - #33 by Djip

Additionally, since you are using 7940HS you can undervolt to reduce current Edit: this doesn’t help with EDC as it does not reduce current

Edit: The “EDC_CPU” can also mean the VRM is restricting power due to overheating. Check the cooling pads around the CPU die where the VRM components are located