I have Arch linux with kde plasma. Now the problem is, i play Ark survival ascended, and its wery demanding game. But for some reason only 80% of my gpu is used. In cs go 2 its also using 80% of my gpu in game but thats fine because it gives me 300+ fps so i dont complain about not using my gpu to the max. But in menus and settings of cs go it ramps up to 99% usage, while in ark it stays to 80% even in menus before game starts. Pc specs: Radeon rx 6800xt Ryzen 9 5950x Ddr4 64GB 3200MHz Ssd 2TB PS Corsair 1000W


There can be many different reasons. As others have noted, the by far most likely cause is that the game is CPU bottlenecked. Ark is built with Unreal Engine, so that’s a quite likely explanation, given that Unreal’s architecture really likes to put all the game logic on a single CPU core.
Ark exposes Unreal’s
stat unitgraphconsole command. Run that in the in-game console to see what part of the game takes how long for each frame. (See: https://ark.fandom.com/wiki/Console_commands#Stat) If either Game or Draw (or RHI, but I don’t think Ark has an RHI thread, it’s Unreal version is too old afaik) is taking longer than GPU, then you have your explanation, namely that the GPU is waiting for the CPU to catch up.There would also be other possible explanations, for instance CPU/GPU waiting for each other. This can for instance happen if the game uses scene captures. (I don’t play Ark, so I don’t know if they do - typical use-cases for scene captures would be mirrors, or rendered player portraits). The CPU might request a Scene Capture, is then waiting for the GPU to complete it, then does CPU stuff with its result while the GPU is waiting for work, and only later submits the next frame for rendering… I don’t know how to diagnose this in Unreal without having access to a development build though.
What I could also imagine is that the numbers shown by the program you are using aren’t taking every kind of GPU activity into account. Might be that they only show load on Vector/Scalar units, and count stalls caused by (GPU-)memory access as “idle”. But that’s just a guess… With the
radeontopcommand you can get a bit more information. (https://archlinux.org/packages/extra/x86_64/radeontop/). Just make sure to run it on a second screen, or to access it via ssh, such that the game has mouse/keyboard focus - otherwise Unreal might reduce framerate.And last, but not least: There is always the possibility of a driver bottleneck. I have faint memories (but no link any more…) that the AMD Linux drivers bottleneck at very high FPS. I might remember wrong, but iirc the FPS numbers at which that shows were extremely high - way above of what any display could process, and way above what any actual game could realistically deliver.