slow rx 5600 xt fps

Javad Karabi karabijavad at
Mon May 25 01:29:47 UTC 2020

wow, i totally just realized that this is what you meant by talking
about primary gpu, early on in this email chain.
ive come full circle! you were totally right and even knew exactly
what the easiest change was lol.
my bad!

On Sun, May 24, 2020 at 8:03 PM Javad Karabi <karabijavad at> wrote:
> Michel, ah my bad! thank you. sorry, thought it was mutter
> also, one other thing. so i have been messing around with all types of
> xorg configuration blah blah blah, but i just had an epiphany, and it
> works!
> so, all i ever needed to do was add Option "PrimaryGpu" "true" to
> /usr/share/X11/xorg.conf.d/10-amdgpu.conf
> with that _one_ change, i dont need any other xorg configs, and when i
> boot without the amdgpu, it should work just fine, and when the amdgpu
> is present it will automatically become the primary due to the
> outputclass matching it!
> that PrimaryGpu being added was exactly the thing. im so glad it works now
> So, these are my thoughts:
> theres no telling what other graphics cards might be installed, so
> xorg defaults to using whatever linux was booted with as the primary,
> in my case the intel graphics i guess.
> now, on a regular desktop, thats totally fine because the graphics
> card has direct access to ram much easier, and with fancy things like
> dma and whatnot, its no problem at all for a graphics card to act as a
> render offload since the card  can simply dma the results into main
> memory or something
> but when you got the graphics card in an eGPU, across a thunderbolt
> connection, it essentially because NUMA, since that memory access has
> way more latency
> so the fact that the debian package isnt saying "PrimaryGpu" "true" i
> guess makes sense, becuase who knows what you want the primary to be.
> but yea, just thought yall might be interested to know that the
> solution for running an egpu in linux is simply to add "PrimaryGpu" to
> the output class that matches your gpu.
> and when you boot without the gpu, the outputclass wont match, so it
> will default to normal behavior
> also, lets say you have N number of gpus, each of which may or may not
> be present. from what i understand, you can still enforce a level of
> precedence about picking which one to be primary like this:
> "If multiple output devices match an OutputClass section with the
> PrimaryGPU option set, the first one enumerated becomes the primary
> GPU."
> so one can simply define a file in which you define N number of
> outputclasses, in order from highest to lowest precedence for being
> the primary gpu, then simply put Option "PrimaryGpu" "true"
> i realize this isnt an xorg list, and doesnt have much to do with
> amdgpu, but would love to hear yalls thoughts. theres alot of
> discussion online in forums and whatnot, and people coming up with all
> kinds of "automatic xorg configuration startup scripts" and stuff to
> manage egpus, but if my hypothesis is correct, this is the cleanest,
> simplest and most elegant solution
> On Sat, May 23, 2020 at 5:17 AM Michel Dänzer <michel at> wrote:
> >
> > On 2020-05-23 12:48 a.m., Javad Karabi wrote:
> > >
> > > also, the whole thing about "monitor updating once every 3 seconds"
> > > when i close the lid is because mutter will go down to 1fps when it
> > > detects that the lid is closed.
> >
> > Xorg's Present extension code ends up doing that (because it has no
> > support for secondary GPUs), not mutter.
> >
> >
> > --
> > Earthling Michel Dänzer               |     
> > Libre software enthusiast             |             Mesa and X developer

More information about the amd-gfx mailing list