Framework 16 AMD 7040 graphics stuttering

I recently purchased a new Framework 16 with AMD 7040. I installed Fedora 44 and I’m trying to run a few games on Steam and encountering quite poor graphics performance (Satisfactory struggles to maintain 30 FPS at lowest graphics, POE runs OK but has the following issue) and after running a game for a few minutes the graphics begin to stutter as if the FPS is slowing down and then lurching forward constantly. I’m not sure how to troubleshoot these issues so some help would be appreciated. Curious if some other distro has better support for this GPU.

Which Linux distro are you using?

Fedora

Which release version?

fc 44

Which kernel are you using?

7.0.4-200.fc44.x86_64

Which BIOS version are you using?

04.04

Which Framework Laptop 16 model are you using? (AMD Ryzen™ 7040 Series)

AMD Ryzen 7 7840HS

Are you playing with or without a dGPU?

Whatever the setup those 30fps in Satisfactory feel a lot like either running off of the iGPU or the dGPU, but throttled to 40W - I experienced it happening whenever the battery would go down to 30%.

try the “amdgpu_top” program. It might give some indication of what is happening.

It displays status of clocking, power watts, and any throttling that is happening.

Another useful tool is “ectool chargecontrol” and “ectool battery”.
It will give you some details information on whether the battery is charging or not.

There is a whole long thread about it here:

One cause of the game stuttering is this:

  1. In normal gaming the CPU and GPU get the power from a combination of the Power Adapter and the Battery (for peaks that occur above what the Power adapter can provide)
  2. If the battery discharges below a certain amount, the EC will try to charge it again.
    When charging, there is obviously no power from the battery available for games, so the CPU and GPU have to throttle back so as to not exceed what the power adapter can do.
    It is this switching between 1 and 2 that may be causing the stuttering.

Another cause, is just buggy GPU drivers where options like disabling features like panel self refresh etc. may help.

Thank you so much for the help. I don’t have a dGPU attachment – I might consider getting one but if I’m going to be plagued with Linux driver issues I’d rather not waste my money on one if its not going to work properly.

I’ve installed amdgpu_top but frankly I don’t know how to interpret these values. Let me know if there are specific fields that would indicate a problem. It isn’t running out of VRAM or anything like that.

I will look into the battery discharging, thanks for linking that. I attached an image of mangohud and these spikes in the graph correspond to the stuttering I’m experiencing.

I’m reading about issues with thermal and throttling, could this be what I’m running into? It would make sense considering the stuttering doesn’t usually appear until after the game has ran for a few minutes.

Is there physical troubleshooting I can perform on mainboard to confirm this?

When did you purchase/receive your machine? If you purchased your machine prior to December of 2024, you have the old Liquid Metal thermal solution applied on your CPU and it’s likely that you’re suffering cooling issues because of it.

There are a variety of applications you can download and run to monitor your CPU core temperature. If you are seeing hotspots around 100°C, you’re almost definitely experiencing thermal throttling. That doesn’t 100% guarantee that you currently have the Liquid Metal instead of PTM7958 thermal solution installed - you also might just have dust, hair, or other debris in your fans that need to be cleaned out.

I purchased this machine at the beginning of this month. Temperature is between 65-75.

1 Like

Good - we can probably rule out the thermal solution (assuming you didn’t buy the machine used or something).

Was that temperature measurement taken while you were playing a game and you were experiencing problematic game performance?

What type of RAM (and how many GBs) do you have?

Was that temperature measurement taken while you were playing a game and you were experiencing problematic game performance?

Yes

What type of RAM (and how many GBs) do you have?

DDR5-5600 - 32GB (1 x 32GB)

I’m strongly suspecting that this is related to temperature throttling. I haven’t had any success modifying the charging limit. But I did notice that on AC power it heats up faster which reaches some sort of threshold that causes the frame rate to become screwed up like in the picture I posted before.

EDIT: I haven’t seen any of the temperature sensors in software report temps above 80 degrees but I’m not sure if that rules out overheating being the cause. But I’m really not an electrical engineer.

I’m becoming increasingly doubtful that tweaking random settings will fix the issue for me. If this is a unavoidable property of this laptop model I think I’m going to push for getting it refunded while its still on warranty. This performance issue is really bad and I might as well just use my older FW 13 for things like browsing or playing games without 3D graphics.

7040 is first gen, and that definitely had heat problems in combination with the GPU. 2nd gen is apparently better with heat dissipation, but as far as I am aware the battery drain on performance with both a CPU and GPU is unfixable. Balanced is… better? But still has issues.

If you have or can afford a dGPU, keep an eye out for the OcuLink dev kit out later this year, but if hassle-free portability is a concern yeah I would return it. You seem to be a Linux user, and as long as good mobile AMD GPUs remain nonexistent the Framework 16 just isn’t a good portable gaming laptop for Linux (but what is?).

My last laptop (a Dell Precision) had perfectly fine performance for these workloads. Stable frame rate with graphics set higher than bare minimum. The FW16 runs fine at first – then the frame rate goes crazy spiking to ~15 FPS multiple times a second. Extremely odd behavior that I would not expect on any machine, high performance or not.

dGPU was one of the reasons I got FW16 because I was interested in the possibility to upgrade it later. But I’m quite worried that this issue would still occur if I hooked up a dGPU. I am absolutely not going to be spending extra money on this machine unless I can be confident that this issue won’t persist. With the current lack of clarity I’m not willing to take that risk.

have you directly contacted support? if not, you can find the ‘submit support request’ button at the bottom of this page: https://frame.work/support

2 Likes

A couple of things, one is you’re running in single channel memory mode which has a sometimes big effect on iGPU performance. Two I know that satisfactory doesn’t run very well as it is badly on an iGPU.

Have you tried any other games to see if they all suffer from this problem? Another thing it might be but I’m less confident is shader compiling. The only idea I have for checking for this is rather dump and involves staring at a static scene for a while and seeing if the stuttering goes away.

Have you tried a different distro? or maybe even temp install windows and see if it suffers from the same fault. It’s is at least possible that it is a software issue. I’m doubtful that the single channel memory could cause stuttering like that but I suppose it is possible. DDR5 can overheat and throttle and you’re asking a lot of a single stick for bandwidth. (I’m doubtful of this as well but still possible.)

“sometimes” is a huge understatement…

iGPUs are already at a disadvantage over RAM performance and running single channel is cutting the bandwidth in half.

No one doing any gaming on an iGPU should attempt to run single channel RAM. This is 100% the problem, @Milo_Turner you need to run 2 matching SODIMMs to be gaming.

I didn’t even notice they were running single channel memory. That definitely sounds like a culprit.