Hi all,
I am running Batttlebit on my Linux machine and for the most part performance is good (127v127 = 180fps average). However after I installed MangoHUD to measure some KPIs (like GPU utilization) I realized that the game is barely using all available resources. My GPU (RX 5700 XT) is running at around 70% and its definitly no CPU bottleneck (because my CPU is running at 20 - 25% (AMD R9 3900x)). I have tried many things to find the issue (upgrading to latest Mesa, installing Gamemode, etc.) but it seems like that I cannot iron it out.
What are your observations? What is you GPU utilization? And how many frames do you get by average?
System Information
Linux Backbone:
Zorin OS 16.3
Liquorix Kernel
Proton-GE Custom (only works on Flatpak Version of the Game)
Proton 7.0-6 (only version which is currently working on native Steam)
Steam Native / Steam Flatpak (Tested both)
Latest Mesa Driver (for Native)
Latest oibaf Graphics Driver
Gamemode
Hardware:
AMD R9 3900x
AMD 5700 XT
32 GB Ram
NVME SSD
**Edit: **After some further tests it seems like its a bottleneck issue due to the fact that the game is not capable of using all available cpu cores.
I don't have the game go test, although I've been meaning to give it a try...
It sounds to me like it's limited by CPU single-thread performance, which isn't suprising at those frame rates. Looking at overall CPU usage doesn't tell the whole story. It's likely that some threads on your CPU are active 100% of the time.
You may have some headroom on GPU performance, so you could try increasing quality in a way that isn't likely to impact CPU performance. I'm not sure what options the game has, but some good candidates would be: rendering resolution, texture resolution, anisotropic filtering. If you can do that, and it increases GPU use without dropping overall performance, it more or less confirms the CPU bottleneck.
After some further research this is also my best guess. It looks like the game cannot utilize enough cpu cores. I will try to max out the settings to confirm it. However is there a workaround to utilize more cpu threads?
Okay after testing I can confirm that its definitely an cpu bottleneck. Seemes like the game or the unity engine is not capable of utilizing all cpu cores which is a bummer.. I couldn't find a workaround either. Even "taskset" via terminal does not help since the command shows that already all cores are allocated to the process. However the engine / game does not utilize these.
I'm not sure if the game supports more than one of vulkan/d3d11/d3d12, but those might have different CPU performance. Also you seem to be stuck on an old version of proton. If there's any way to get it working on something newer that might help.