I have encountered a really weird error/bug with my Prime Radeon drivers using 7970m. I am running League of Legends through wine using PlayOnLinux. My game was dropping frames and lagging at some random times, so I opened a terminal and looked at the GPU usage. What I found out is that the GPU usage actually goes down whenever the FPS goes down... I... I have no clue why this is happening, and I would be very thankful for anyone who could help me.
Here is a video of it happening, whenever FPS goes down, GPU usage goes down: https://vid.me/FI42
If you are considering its because of the CPU, its 3rd gen i7 and nothing else is running, so I extremely highly doubt that.
The GPU is also not overheating, I would feel it, considering it's a laptop.
It's probably your CPU. No matter how fast you make it, if you throw considerable work at them they need time and wine is translating D3D to OpenGL (exception here is gallium nine) and the D3D bytecode has to be translated to GLSL and then compiled. So whenever the game is loading a shader in the D3D code or is doing a state change which requires a new shader variant a new GLSL program gets compiled, which will require CPU time, which leads to a drop in FPS.
This is one of the reasons why you really should be using gallium nine if you can. Hopefully we'll get a D3D9 implementation with Vulkan, soon, so this won't be limited to the mesa driver.
Well, my big problem with using Gallium nine is that I have muxless graphics, so I am completely limited to using Prime. Is there any other way I can speed it up?
Well, as far as I know, you cant have Prime and Gallium Nine running at the same time. If you can, please correct me, and I would really like to know how.
What OS do you have, what version of wine are you using, and what drivers do you have. This has nothing to do with CPU or any of that crap, so ignore them.
Hey, I am currently running 4.2.0-18-lowlatency kernel and for running League, I am using wine version 1.7.52-LeagueOfLegends5, which I am guessing is patched by PlayOnLinux special for League.
You should choose whether you're using AMD or NVidia. If it's a laptop get rid of everything that has absolutely nothing to do with your card specifically as the kernel may hang and crash from loading 2 kernel mods at once.
If you have AMD and want to use it, only install either radeon or AMDGPU. Mach64 is for GPU's from ATI in the 90's, r128 is for like an ati 9800 or a 3d rage 128, the rest you could figure out. Siliconmotion I have no clue but it'll be old.
One of the first things to try is replacing the directx9 packages in your wineprefix in play on linux. Click on league in POL, go to configure, install components, directx9. You should also check if your processor has any microcodes it will need. If not it doesn't matter, but you should keep on that. It doesn't play a major role most of the time unless there are major performance hits everywhere.
1: Clear out all those drivers and use ONE. 2: Replace directx9.
If it comes back saying adobe air is missing you can open the winecfg window in play on linux for your wineprefix and delete all the components in there (HIT APPLY WHEN DONE) and then do directxfullinstall in install components. If you want to install adobe air then do it before fullinstall. Then it should work.
If all else fails after all of that then check the archwiki.
Also make sure you test in a custom and not on the rift.
It seems like the combination of installing directx9, removing the useless drivers and un-blacklisting the microcodes have made some impact, but there are still really weird drops. I tried uninstalling the gpu drivers one by one to find which one actually works, and it seems like I require xserver-xorg-video-ati, which sadly has really really old dependencies.
I am guessing that is due to the fact that the amdgpu drivers don't support muxless graphics yet or ever, which is quite sad.
On topic: League really runs like shit on most hardware when using wine. You can either spend hours on google to tinker with it for getting better performance. Upgrade your hardware or game on windows.
If you run disgusting things like wine and lol, installing windows wont drag you down further.
I've gotten down a pattern for getting it running it's just that recent updates to league made the graphics engine a lot heavier. That's the main issue with it expecially on AMD. On NV it is a lot easier to run at high FPS but crashes are more common.