https://bugs.winehq.org/show_bug.cgi?id=52660
Bug ID: 52660 Summary: chunk allocator for GL uniform buffers kills performance in World of Warships Product: Wine Version: 7.4 Hardware: x86-64 URL: https://worldofwarships.eu/ OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3d Assignee: wine-bugs@winehq.org Reporter: janbraun@gmx.net Regression SHA1: 86f0ae8efb17ce688986971d24c3e25840a2beef Distribution: ---
I've found and bisected a huge performance regresssion in World Of Warships: With 86f0ae8efb17ce688986971d24c3e25840a2beef "wined3d: Use the chunk allocator for GL uniform buffers." applied, my framerate is around 18-20fps during gameplay. With that patch reverted, it's back at >=60fps. The code moved around in the meantime, but simply commenting out the "case GL_UNIFORM_BUFFER:" in use_buffer_chunk_suballocation() restores performance on wine 7.4 (= current git HEAD) as well.
I have the subjective impression that other games might be affected too (things feel a bit more sluggy), but certainly nowhere as severely as WoWS. I didn't further test/benchmark, however, because WoWS was such a nice reproducer.
Running mesa-21.3.7 on amdgpu. Please holler if you need more info.