https://bugs.winehq.org/show_bug.cgi?id=54223
Bug ID: 54223 Summary: [Wine 8.0-rc2] [Severe Performance Regression] [Unigine Heaven Benchmark 4.0] Wine DirectX11 to OpenGL Severely Low FPS Product: Wine Version: 8.0-rc2 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: CHECK_1234543212345@protonmail.com Distribution: ---
⬤ System Information:
OS: Ubuntu 22.10 Kernel: 6.1.0 CPU: Ryzen 7 1700 GPU: XFX RX580 4GB Window Manager: OpenBox Compositor: No Compositor, Xorg TearFree Disabled
⬤ Issue:
Wine's DirectX11 to OpenGL was the fastest on Wine 6.0, but then got a little slower on Wine 7.0 and got severely more slower when I tested with Wine 7.22 before I installed Wine 8.0-rc2.
⬤ Settings:
RX580 locked to 300Mhz core clock and 300Mhz memory clock Quality: Low Resolution: 1280x720 Fullscreen: Unchecked
⬤ Information:
Lutris was used to easily switch between Wine versions.
Scene 2 is where the screen was moving across the bridge looking at the boat.
You can switch scenes with in the Unigine Benchmark by using the "Backspace" and "Enter" keyboard keys.
Unigine Heaven Benchmark 4.0 Results:
--------------------
Wine staging 8.0-rc2 DX11 to OpenGL Scene 2: 41 FPS (41 FPS with WINEDEBUG=-all) Scene 3: 24 FPS (24 FPS with WINEDEBUG=-all)
Wine staging 8.0-rc2 DX11 to Vulkan (winetricks renderer=vulkan) Scene 2: 26 FPS (with WINEDEBUG=-all) Scene 3: 15 FPS (with WINEDEBUG=-all)
Wine staging 8.0-rc2 DX11 to Vulkan (DXVK 2.0) (./setup_dxvk.sh install) Scene 2: 84 FPS (with WINEDEBUG=-all) Scene 3: 104 FPS (with WINEDEBUG=-all)
-
Wine staging 8.0-rc2 DX9 to OpenGL Scene 2: 90 FPS (with WINEDEBUG=-all) Scene 3: 97 FPS (with WINEDEBUG=-all)
Wine staging 8.0-rc2 DX9 to Vulkan (winetricks renderer=vulkan) CRASHES with an error dialog when starting benchmark
Wine staging 8.0-rc2 DX9 to Vulkan (DXVK 2.0) (./setup_dxvk.sh install) Scene 2: 57 FPS (with WINEDEBUG=-all) Scene 3: 67 FPS (with WINEDEBUG=-all)
-
Wine staging 8.0-rc2 OpenGL to OpenGL Scene 2: 91 FPS (with WINEDEBUG=-all) Scene 3: 105 FPS (with WINEDEBUG=-all)
--------------------
Wine staging 7.22 DX11 to OpenGL Same performance problem as wine 8.0-rc2
--------------------
Wine staging 7.0 DX11 to OpenGL Scene 2: 61 FPS (74 FPS with WINEDEBUG=-all) Scene 3: 32 FPS (61 FPS with WINEDEBUG=-all)
-
Wine staging 7.0 DX9 to OpenGL Scene 2: 88 FPS (with WINEDEBUG=-all) Scene 3: 83 FPS (with WINEDEBUG=-all)
--------------------
Wine staging 6.0 DX11 to OpenGL Scene 2: 88 FPS (88 FPS with WINEDEBUG=-all) Scene 3: 48 FPS (71 FPS with WINEDEBUG=-all)
-
Wine staging 6.0 DX9 to OpenGL Scene 2: 88 FPS (with WINEDEBUG=-all) Scene 3: 78 FPS (with WINEDEBUG=-all)
--------------------
Wine staging 5.1 DX11 to OpenGL Scene 2: 71 FPS (71 FPS with WINEDEBUG=-all) Scene 3: 48 FPS (55 FPS with WINEDEBUG=-all)
--------------------
Wine staging 4.0 DX11 to OpenGL Scene 2: 75 FPS (84 FPS with WINEDEBUG=-all) Scene 3: 41 FPS (64 FPS with WINEDEBUG=-all)
--------------------
Wine staging 3.0 DX11 to OpenGL Scene 2: 48 FPS (61 FPS with WINEDEBUG=-all) Scene 3: 27 FPS (44 FPS with WINEDEBUG=-all)
The Unigine Benchmark Launcher opened very quickly with wine 3.0
--------------------
⬤ Information:
I had "Output debugging info" "Enabled" in Lutris at first with the DX11 to OpenGL tests and retested with "Output debugging info" "Disabled (default)" in Lutris, which just added the "WINEDEBUG=-all" environmental variable.
The Wine 32-bit staging versions 7.0 to 3.0 was downloaded from: https://www.playonlinux.com/wine/binaries/phoenicis/staging-linux-x86/
The Unigine Heaven Benchmark Launcher was closed after starting each benchmark because the Unigine Heaven Benchmark Launcher was decreasing the FPS.
⬤ Conclusion:
DirectX11 to OpenGL was the fastest in Wine 6.0
Somewhere between Wine 6.0 and Wine 7.0, Wine's DirectX11 to OpenGL became a bit more slower.
Somewhere between Wine 7.0 and Wine 7.22, Wine's DirectX11 to OpenGL became severely more slower.
Wine's OpenGL to OpenGL is currently faster than: DXVK (DXVK 2.0) (./setup_dxvk.sh install) Wine's DirectX9/DirectX11 to OpenGL (renderer=gl). Wine's DirectX9/DirectX11 to Vulkan (winetricks renderer=vulkan)
Unigine Heaven Benchmark crashes when using DirectX9 to Vulkan (winetricks renderer=vulkan) but not with DXVK's DirectX9 to Vulkan (DXVK 2.0) (./setup_dxvk.sh install).
Wine 3.0 Opens the Unigine Heaven Benchmark launcher very quickly. But then with Wine 4.0 and above, the Unigine Heaven Benchmark launcher opens more slower than Wine 3.0. I am using a HDD.
⬤ Warning if not fixed before Wine 8.0 stable gets released:
It would be good if this problem is fixed before Wine 8.0 stable get released because Steam's Proton uses stable versions of Wine.
If this problem is not fixed by the time Wine 8.0 stable gets released and proton updates to Wine 8.0. anyone using "PROTON_USE_WINED3D=1" on a DirectX11 Steam game can have severely Low FPS while Wine 7.0's DirectX11 to OpenGL is only a little bit more slower than Wine 6.0's DirectX11 to OpenGL right now.
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |Ubuntu Keywords| |performance, regression
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |d3d
https://bugs.winehq.org/show_bug.cgi?id=54223
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de Keywords| |download URL| |https://assets.unigine.com/ | |d/Unigine_Heaven-4.0.exe
--- Comment #1 from Fabian Maurer dark.shadow4@web.de --- Tested "Quality: Low, Resolution: 1280x720, Fullscreen: No" Closed launcher after benchmark start. Benchmarked still start of scene 3
wine-7.22: 132 FPS wine-7.0: 96 FPS wine-6.0: 96 FPS
I have a Radeon RX 5700. Not regression for me, the opposite.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #2 from CHECK_1234 CHECK_1234543212345@protonmail.com --- (In reply to Fabian Maurer from comment #1)
Tested "Quality: Low, Resolution: 1280x720, Fullscreen: No" Closed launcher after benchmark start. Benchmarked still start of scene 3
wine-7.22: 132 FPS wine-7.0: 96 FPS wine-6.0: 96 FPS
I have a Radeon RX 5700. Not regression for me, the opposite.
Update 1: Two CPU cores reaching nearly 100% but FPS is low
⬤ System Informatiom:
OS: Ubuntu 22.10 Kernel: 6.0.11 CPU: i7-4710HQ GPU: Intel HD 4600 Window Manager: OpenBox
⬤ Issue:
I am also having this same performance issue with Wine 7.22 on a different computer with i7-4710HQ. In which a CPU Bottleneck was causing this low FPS performance regression with Wine's DirectX11 to OpenGL this whole time.
⬤ Settings:
CPU Clock Speed Capped to: 1.5Ghz Quality: Low Resolution: 960x540 Fullscreen: Unchecked
Unigine Heaven Benchmark 4.0 Results:
--------------------
Wine staging 7.22 DX11 to OpenGL (Two CPU cores reaching nearly 100% but FPS is low according to htop) Scene 2: 40 FPS (with WINEDEBUG=-all) Scene 3: 18 FPS (with WINEDEBUG=-all)
Wine staging 7.22 DX9 to OpenGL (Two CPU cores reaching nearly 100% CPU usage but FPS is good according to htop) Scene 2: 61 FPS (with WINEDEBUG=-all) Scene 3: 34 FPS (with WINEDEBUG=-all)
Wine staging 7.22 OpenGL to OpenGL (No CPU cores reaching 99% CPU usage but FPS is good according to htop) Scene 2: 65 FPS (with WINEDEBUG=-all) Scene 3: 60 FPS (with WINEDEBUG=-all)
--------------------
Wine staging 6.0 DX11 to OpenGL (Two CPU cores reaching nearly 100% CPU usage but FPS is good according to htop) Scene 2: 56 FPS (with WINEDEBUG=-all) Scene 3: 33 FPS (with WINEDEBUG=-all)
Wine staging 6.0 DX9 to OpenGL (Two CPU cores reaching nearly 100% CPU usage but FPS is good according to htop) Scene 2: 61 FPS (with WINEDEBUG=-all) Scene 3: 38 FPS (with WINEDEBUG=-all)
Wine staging 6.0 OpenGL to OpenGL (No CPU cores reaching 99% CPU usage but FPS is good according to htop) Scene 2: 65 FPS (with WINEDEBUG=-all) Scene 3: 64 FPS (with WINEDEBUG=-all)
--------------------
⬤ Conclusion:
Something seems to be causing 7.22's DirectX11 to OpenGL to use more CPU usage, which was causing a CPU Bottleneck, which was causing this low FPS performance regression with Wine's DirectX11 to OpenGL this whole time.
If you were to limit you CPU Clock Speed to something low and disable PBO/Turbo Boost, would you be able to have this performance regression?
With my Ryzen 7 1700, I had an undervolt with PBO off, in which the max clock speed was set 2.5Ghz at 0.768V while I was testing.
Thanks for testing this so that this problem can be solved!
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #3 from CHECK_1234 CHECK_1234543212345@protonmail.com --- Created attachment 73766 --> https://bugs.winehq.org/attachment.cgi?id=73766 Unigine Heaven Benchmark, Wine Staging 8.0-rc2, DirectX11 to OpenGL, One CPU Core Reaching 100% but FPS is Low
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #73766|Unigine Heaven Benchmark, |Ryzen 7 1700 at 2.5Ghz, description|Wine Staging 8.0-rc2, |Unigine Heaven Benchmark, |DirectX11 to OpenGL, One |Wine Staging 8.0-rc2, |CPU Core Reaching 100% but |DirectX11 to OpenGL, One |FPS is Low |CPU Core Reaching 100% but | |FPS is Low
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #73766|Ryzen 7 1700 at 2.5Ghz, |Retested again Ryzen 7 1700 description|Unigine Heaven Benchmark, |at 2.5Ghz, Unigine Heaven |Wine Staging 8.0-rc2, |Benchmark, Wine Staging |DirectX11 to OpenGL, One |8.0-rc2, DirectX11 to |CPU Core Reaching 100% but |OpenGL, One CPU Core |FPS is Low |Reaching 100% but FPS is | |Low
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #73766|Retested again Ryzen 7 1700 |Retested again Ryzen 7 1700 description|at 2.5Ghz, Unigine Heaven |at 2.5Ghz, Unigine Heaven |Benchmark, Wine Staging |Benchmark, Wine Staging |8.0-rc2, DirectX11 to |8.0-rc2, DirectX11 to |OpenGL, One CPU Core |OpenGL, One CPU Core |Reaching 100% but FPS is |Reaching 100% but FPS is |Low |Low, other CPU Cores not | |being used alot
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #4 from CHECK_1234 CHECK_1234543212345@protonmail.com --- Created attachment 73767 --> https://bugs.winehq.org/attachment.cgi?id=73767 Ryzen 7 1700 at 2.5Ghz, Unigine Heaven Benchmark, Wine Staging 8.0-rc2, DirectX9 to OpenGL, CPU Load being split across other CPU Cores, Good FPS
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #73766|Retested again Ryzen 7 1700 |Retested again Ryzen 7 1700 description|at 2.5Ghz, Unigine Heaven |at 2.5Ghz, Unigine Heaven |Benchmark, Wine Staging |Benchmark, Wine Staging |8.0-rc2, DirectX11 to |8.0-rc2, DirectX11 to |OpenGL, One CPU Core |OpenGL, One CPU Core |Reaching 100% but FPS is |Reaching 100%, other CPU |Low, other CPU Cores not |Cores not being used alot, |being used alot |FPS severely Low
https://bugs.winehq.org/show_bug.cgi?id=54223
Béla Gyebrószki gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gyebro69@gmail.com
--- Comment #5 from Béla Gyebrószki gyebro69@gmail.com --- Could you please perform a regression test to find out which commit is to blame? https://wiki.winehq.org/Regression_Testing
I can reproduce the performance drop between 7.0 and 8.0-rc2 on Nvidia drivers 525.47.04. Using the method described in comment #0 I'm experiencing ~35% drop in FPS in Unigine Heaven when comparing Wine-7.0 to 8.0-rc2 (Quality: Low, Resolution: 1280x720,Fullscreen: Unchecked).
OS: Arch Linux Kernel: linux-zen 6.1.1.zen1-1 CPU: Ryzen 5 5600X GPU: GTX 1660S 6 GB GPU driver: NVIDIA 525.47.04 Window Manager: XFCE 4.18 Compositor: disabled
In my case the performance drop is due to commit 7c844cd3c9c465bdeaf3d98d6da5f2f5e460e650 Also mentioned in bug #53408.
I also noticed that the performance penalty in recent Wine occurs when cpu frequency-scaling is enabled in the OS. When the cpu is set to a constant frequency, instead of dynamically changing, then current Wine 8.0-rc2 scores better in Unigine Heaven than 7.0 does.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #6 from CHECK_1234 CHECK_1234543212345@protonmail.com --- (In reply to Béla Gyebrószki from comment #5)
Could you please perform a regression test to find out which commit is to blame? https://wiki.winehq.org/Regression_Testing
I can reproduce the performance drop between 7.0 and 8.0-rc2 on Nvidia drivers 525.47.04. Using the method described in comment #0 I'm experiencing ~35% drop in FPS in Unigine Heaven when comparing Wine-7.0 to 8.0-rc2 (Quality: Low, Resolution: 1280x720,Fullscreen: Unchecked).
OS: Arch Linux Kernel: linux-zen 6.1.1.zen1-1 CPU: Ryzen 5 5600X GPU: GTX 1660S 6 GB GPU driver: NVIDIA 525.47.04 Window Manager: XFCE 4.18 Compositor: disabled
In my case the performance drop is due to commit 7c844cd3c9c465bdeaf3d98d6da5f2f5e460e650 Also mentioned in bug #53408.
I also noticed that the performance penalty in recent Wine occurs when cpu frequency-scaling is enabled in the OS. When the cpu is set to a constant frequency, instead of dynamically changing, then current Wine 8.0-rc2 scores better in Unigine Heaven than 7.0 does.
Update 2:(In reply to Béla Gyebrószki from comment #5)
Could you please perform a regression test to find out which commit is to blame? https://wiki.winehq.org/Regression_Testing
I can reproduce the performance drop between 7.0 and 8.0-rc2 on Nvidia drivers 525.47.04. Using the method described in comment #0 I'm experiencing ~35% drop in FPS in Unigine Heaven when comparing Wine-7.0 to 8.0-rc2 (Quality: Low, Resolution: 1280x720,Fullscreen: Unchecked).
OS: Arch Linux Kernel: linux-zen 6.1.1.zen1-1 CPU: Ryzen 5 5600X GPU: GTX 1660S 6 GB GPU driver: NVIDIA 525.47.04 Window Manager: XFCE 4.18 Compositor: disabled
In my case the performance drop is due to commit 7c844cd3c9c465bdeaf3d98d6da5f2f5e460e650 Also mentioned in bug #53408.
I also noticed that the performance penalty in recent Wine occurs when cpu frequency-scaling is enabled in the OS. When the cpu is set to a constant frequency, instead of dynamically changing, then current Wine 8.0-rc2 scores better in Unigine Heaven than 7.0 does.
Update 2: commit 86f0ae8efb17ce688986971d24c3e25840a2beef ( https://gitlab.winehq.org/wine/wine/-/commit/7c844cd3c9c465bdeaf3d98d6da5f2f... ) caused this performance regression according to git bisect
⬤ System Information:
OS: Ubuntu 22.10 Kernel: 6.1.0 CPU: Ryzen 7 1700 GPU: XFX RX580 4GB Window Manager: OpenBox Compositor: No Compositor, Xorg TearFree Disabled
⬤ Commit that caused this performance regression found!
I decided to do the git bisect and compile wine following that "Regression Testing - WineHQ Wiki" guide.
I noticed that when I stopped doing ./configure in between "git bisect good" or "git bisect good", wine compiled faster.
When it finished bisecting, this commit caused this severe performance regression
------------------------------------------------------------------- commit 86f0ae8efb17ce688986971d24c3e25840a2beef (refs/bisect/bad) Author: Zebediah Figura zfigura@codeweavers.com Date: Tue Feb 8 20:34:03 2022 -0600
wined3d: Use the chunk allocator for GL uniform buffers.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org -------------------------------------------------------------------
Wow, you were right about commit 86f0ae8efb17ce688986971d24c3e25840a2beef ( https://gitlab.winehq.org/wine/wine/-/commit/7c844cd3c9c465bdeaf3d98d6da5f2f... ) causing this severe performance regression! Thanks for helping to solve this problem!
⬤ Conclusion
Hopefully someone can fix this severe performance regression caused by commit 86f0ae8efb17ce688986971d24c3e25840a2beef ( https://gitlab.winehq.org/wine/wine/-/commit/7c844cd3c9c465bdeaf3d98d6da5f2f... )
If this problem is not fixed by the time Wine 8.0 stable gets released and proton updates to Wine 8.0. anyone using "PROTON_USE_WINED3D=1" on a DirectX11 Steam game might have this severe performance regression. Hopefully this can get fixed quickly before Wine 8.0 stable gets released.
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |86f0ae8efb17ce688986971d24c | |3e25840a2beef CC| |z.figura12@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #7 from CHECK_1234 CHECK_1234543212345@protonmail.com --- Update 3: Accidentally linked to wrong commit
The commit that was causing this performance regression was 86f0ae8efb17ce688986971d24c3e25840a2beef located at https://gitlab.winehq.org/wine/wine/-/commit/86f0ae8efb17ce688986971d24c3e25...
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #8 from CHECK_1234 CHECK_1234543212345@protonmail.com --- Update 4: Custom compiled with performance regression fixed
I changed dlls/wined3d/device.c I changed the code from:
-------------------------------------------------------------------------------
static bool use_buffer_chunk_suballocation(struct wined3d_device_gl *device_gl, const struct wined3d_gl_info *gl_info, GLenum binding) { switch (binding) { case GL_ARRAY_BUFFER: case GL_ATOMIC_COUNTER_BUFFER: case GL_DRAW_INDIRECT_BUFFER: case GL_PIXEL_UNPACK_BUFFER: case GL_UNIFORM_BUFFER: return true;
case GL_ELEMENT_ARRAY_BUFFER: /* There is no way to specify an element array buffer offset for * indirect draws in OpenGL. */ return device_gl->d.wined3d->flags & WINED3D_NO_DRAW_INDIRECT || !gl_info->supported[ARB_DRAW_INDIRECT];
case GL_TEXTURE_BUFFER: return gl_info->supported[ARB_TEXTURE_BUFFER_RANGE];
default: return false; } }
-------------------------------------------------------------------------------
to
-------------------------------------------------------------------------------
static bool use_buffer_chunk_suballocation(struct wined3d_device_gl *device_gl, const struct wined3d_gl_info *gl_info, GLenum binding) { switch (binding) { case GL_ARRAY_BUFFER: case GL_ATOMIC_COUNTER_BUFFER: case GL_DRAW_INDIRECT_BUFFER: case GL_PIXEL_UNPACK_BUFFER: case GL_UNIFORM_BUFFER: return false;
case GL_ELEMENT_ARRAY_BUFFER: /* There is no way to specify an element array buffer offset for * indirect draws in OpenGL. */ return false;
case GL_TEXTURE_BUFFER: return false;
default: return false; } }
-------------------------------------------------------------------------------
I had to use grep -r 'case GL_UNIFORM_BUFFER:' to find "case GL_UNIFORM_BUFFER:" which was the main one causing the performance regression because I did not find "case GL_UNIFORM_BUFFER:" at "dlls/wined3d/context_gl.c" according to the git bisect.
I recompiled and Wine DirectX11 to OpenGL performance regression gets fixed, but there there might be another performance regression with DirectX11 to OpenGL because scene 3's FPS is lower compared to Wine Staging 6.0.
⬤ Settings:
RX580 locked to 300Mhz core clock and 300Mhz memory clock Quality: Low Resolution: 1280x720 Fullscreen: Unchecked MAX CPU CLOCK SPEED: 2.5Ghz at 0.768V
⬤ Unigine Heaven Custom Wine 8.0-rc2 DX11 to OpenGL vs Wine Staging 6.0 DX11 to OpenGL
--------------------
Performance Regression Fixed Custom Wine 8.0-rc2 DX11 to OpenGL
Scene 2: Up to 100 FPS Scene 3: 67 FPS
Performance Regression Fixed Custom Custom Wine 8.0-rc2 DX9 to OpenGL
Scene 2: Up to 100 FPS Scene 3: 82 FPS
--------------------
Wine Staging 6.0 DX11 to OpenGL
Scene 2: 92 FPS Scene 3: 78 FPS
Wine Staging 6.0 DX9 to OpenGL
Scene 2: 92 FPS Scene 3: 80 FPS
--------------------
⬤ Conclusion
The "Performance Regression Fixed Custom Wine 8.0-rc2" DX11 to OpenGL might still have another performance regression because the FPS at scene 3 seems to lower than Wine Staging 6.0.
Hopefully this DirectX11 to OpenGL performance regression can be fully fixed by Wine 8.0 Stable.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #9 from CHECK_1234 CHECK_1234543212345@protonmail.com --- Update 5: Wine Staging 8.0-rc2 with DirectX11 to OpenGL performance regression vs Wine 8.0-rc2 with DirectX11 to OpenGL Performance Regression Fixed/Wine renderer=vulkan vs DXVK 2.0
To fix DirectX11 to OpenGL performance, I edited "dlls/wined3d/device.c" and I changed this code from:
-------------------------------------------------------------------------------
static bool use_buffer_chunk_suballocation(struct wined3d_device_gl *device_gl, const struct wined3d_gl_info *gl_info, GLenum binding) { switch (binding) { case GL_ARRAY_BUFFER: case GL_ATOMIC_COUNTER_BUFFER: case GL_DRAW_INDIRECT_BUFFER: case GL_PIXEL_UNPACK_BUFFER: case GL_UNIFORM_BUFFER: return true;
case GL_ELEMENT_ARRAY_BUFFER: /* There is no way to specify an element array buffer offset for * indirect draws in OpenGL. */ return device_gl->d.wined3d->flags & WINED3D_NO_DRAW_INDIRECT || !gl_info->supported[ARB_DRAW_INDIRECT];
case GL_TEXTURE_BUFFER: return gl_info->supported[ARB_TEXTURE_BUFFER_RANGE];
default: return false; } }
-------------------------------------------------------------------------------
to
-------------------------------------------------------------------------------
static bool use_buffer_chunk_suballocation(struct wined3d_device_gl *device_gl, const struct wined3d_gl_info *gl_info, GLenum binding) { switch (binding) { case GL_ARRAY_BUFFER: case GL_ATOMIC_COUNTER_BUFFER: case GL_DRAW_INDIRECT_BUFFER: case GL_PIXEL_UNPACK_BUFFER: case GL_UNIFORM_BUFFER: return false;
case GL_ELEMENT_ARRAY_BUFFER: /* There is no way to specify an element array buffer offset for * indirect draws in OpenGL. */ return false;
case GL_TEXTURE_BUFFER: return false;
default: return false; } }
-------------------------------------------------------------------------------
"case GL_UNIFORM_BUFFER:" was the main one causing this DirectX11 to OpenGL Performance regession.
⬤ Settings:
RX580 locked to 300Mhz core clock and 300Mhz memory clock (By using echo "low"
/sys/class/drm/card0/device/power_dpm_force_performance_level
Quality: Low Resolution: 1280x720 Fullscreen: Unchecked MAX CPU CLOCK SPEED: 2.5Ghz at 0.768V Color Depth: 24 (Was using color depth 16 on the comment #8, that was why performance was higher in comment #8, mesa needs to add support for color depth 16 to make vulkan work at color depth 16 because color depth 16 increases performance)
⬤ Unigine Heaven 4.0 Benchmark Results:
-------------------------------------------------------------------
Default Wine 8.0-rc2 OpenGL to OpenGL:
Scene 2: 92 FPS Scene 3: 105 FPS
Default Wine 8.0-rc2 DirectX11 to OpenGL:
Scene 2: 40 FPS Scene 3: 24 FPS
Default Wine 8.0-rc2 DirectX9 to OpenGL:
Scene 2: 90 FPS Scene 3: 97 FPS (FPS Changing fast, someimes reaching over 100FPS)
Default Wine 8.0-rc2 DirectX11 to Vulkan (winetricks renderer=vulkan):
Scene 2: 24 FPS Scene 3: 15 FPS
Default Wine 8.0-rc2 DirectX11 to Vulkan (DXVK 2.0) (./setup_dxvk.sh install)
Scene 2: 91 FPS Scene 3: 105 FPS
-------------------------------------------------------------------
Performance Regression Fixed Custom Wine 8.0-rc2 OpenGL to OpenGL:
Scene 2: 91 FPS Scene 3: 105 FPS
Performance Regression Fixed Custom Wine 8.0-rc2 DirectX11 to OpenGL:
Scene 2: Reaching over 90 FPS (FPS Changing too fast) Scene 3: 63 FPS
Performance Regression Fixed Custom Wine 8.0-rc2 DirectX9 to OpenGL:
Scene 2: Reaching over 90 FPS (FPS Changing too fast) Scene 3: 77 FPS
Performance Regression Fixed Custom Wine 8.0-rc2 DirectX11 to Vulkan (winetricks renderer=vulkan):
Error box when click "RUN" button, maybe because of the way I compiled the wine.
Performance Regression Fixed Custom Wine 8.0-rc2 to Vulkan (DXVK 2.0) (./setup_dxvk.sh install):
Error box when click "RUN" button, maybe because of the way I compiled the wine.
-------------------------------------------------------------------
⬤ Conclusion:
Hopefully this patch can be applied to the official wine repository fixing DirectX11 to OpenGL performance caused by commit 86f0ae8efb17ce688986971d24c3e25840a2beef located at https://gitlab.winehq.org/wine/wine/-/commit/86f0ae8efb17ce688986971d24c3e25...
https://bugs.winehq.org/show_bug.cgi?id=54223
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|[Wine 8.0-rc2] [Severe |Unigine Heaven Benchmark |Performance Regression] |4.0 Severely Low FPS |[Unigine Heaven Benchmark | |4.0] Wine DirectX11 to | |OpenGL Severely Low FPS |
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #10 from Zeb Figura z.figura12@gmail.com --- Does the patch from https://bugs.winehq.org/show_bug.cgi?id=53408#c7 help?
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #11 from Zeb Figura z.figura12@gmail.com --- (In reply to Zeb Figura from comment #10)
Does the patch from https://bugs.winehq.org/show_bug.cgi?id=53408#c7 help?
Which is upstream as part of 8.0-rc4.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #12 from CHECK_1234 CHECK_1234543212345@protonmail.com --- (In reply to Zeb Figura from comment #10)
Does the patch from https://bugs.winehq.org/show_bug.cgi?id=53408#c7 help?
(In reply to Zeb Figura from comment #11)
(In reply to Zeb Figura from comment #10)
Does the patch from https://bugs.winehq.org/show_bug.cgi?id=53408#c7 help?
Which is upstream as part of 8.0-rc4.
⬤ Update 7: DirectX11 to OpenGL Performance Regression Happening Still with Wine-rc4
I manually compiled wine 8.0-rc4 because WineHQ-staging wine repository for Ubuntu in was still in Wine-Staging-rc3.
⬤ Settings:
RX580 locked to 300Mhz core clock and 300Mhz memory clock (By using echo "low"
/sys/class/drm/card0/device/power_dpm_force_performance_level
Quality: Low Resolution: 1280x720 Fullscreen: Unchecked MAX CPU CLOCK SPEED: 2.5Ghz at 0.768V Color Depth: 16 (Increases performance compared to using the Color Depth of "24")
Unigine Heaven Benchmark 4.0 Results:
-------------------------------------------------------------------
Compiled Wine 8.0-rc4 DX11 to OpenGL: Scene 2: 41 FPS Scene 3: 24 FPS
Then at "dlls/wined3d/device.c" I manually removed "case GL_UNIFORM_BUFFER:" and recompiled Wine 8.0-rc4:
Custom Compiled Wine 8.0-rc4 with "case GL_UNIFORM_BUFFER:" Removed, DX11 to OpenGL Scene 2: Around 95 FPS (FPS changing too fast: FPS Reaching over 100 FPS!!!) Scene 3: Around 72 FPS (FPS changing too fast!!!) (This scene seems to be getting worser performance with DirectX11 to OpenGL compared to using DirectX9 to OpenGL for some reason (hopefully this performance regression can be fixed too))
-------------------------------------------------------------------
⬤ Conclusion
I guess this "case GL_UNIFORM_BUFFER:" is causing this DirectX11 to OpenGL Performance Regression and also maybe even wine's default DirectX11 to Vulkan according to comment #0 (winetricks renderer=vulkan, custom compiled wine not working with vulkan for some reason, maybe the way I compiled wine) Performance Regression caused by commit 86f0ae8efb17ce688986971d24c3e25840a2beef https://gitlab.winehq.org/wine/wine/-/commit/86f0ae8efb17ce688986971d24c3e25... for Unigine Heaven Benchmark 4.0.
Sorry for taking too long to test that wine-rc4 was just released, hopefully this performance regression can be fixed by Wine-rc5 for Unigine Heaven 4.0???
⬤ Unigine Heaven 4.0 with DirectX9 to Vulkan (winetricks renderer=vulkan) needing to be fixed???
Also maybe hoping for wine's DirectX9 to Vulkan (winetricks renderer=vulkan) to be fixed (Gives an error box when clicking "RUN" button on "Unigine Heaven Benchmark 4.0" Launcher). But DXVK 2.0's DirectX9 to Vulkan works but there seems to be a performance regression with DXVK 2.0's DirectX9 to Vulkan causing wine's DirectX9 to OpenGL to be faster than DXVK 2.0's Direct X9 to Vulkan according to comment #0.
⬤ Workaround to fix DirectX11 to OpenGL and wine's DirectX11 to Vulkan (winetricks renderer=vulkan) Performance Regression???
I dont know what this "case GL_UNIFORM_BUFFER:" from "dlls/wined3d/device.c" does, but for some reason it is causing this performance regression with DirectX11 to OpenGL (maybe even causing this performance regression with wine's default DirectX11 to Vulkan (winetricks renderer=vulkan) according to comment #0) in Unigine Heaven 4.0 Benchmark.
Maybe a workaround might be maybe removing "case GL_UNIFORM_BUFFER:" from "dlls/wined3d/device.c" entirely from the official wine source code??? Or maybe making it so that "case GL_UNIFORM_BUFFER:" from "dlls/wined3d/device.c" would no be used with OpenGL to DirectX11 or wine's DirectX11 to Vulkan (winetricks renderer=vulkan).
⬤ Hopefully this could be fixed easily!!!
Hopefully this could be fixed easily before wine 8.0 stable gets released. Also maybe hoping for wine's DirectX9 to Vulkan (winetricks renderer=vulkan) to be fixed (Gives an error box when clicking "RUN" button on "Unigine Heaven Benchmark 4.0" Launcher).
-------------------------------------------------------------------
⬤ GOOD NEWS!!!: UPDATE ABOUT COMMENT #8 AND COMMENT #9: USING VULKAN WITH THE COLOR DEPTH OF "16" (PERFORMANCE BOOST!!!) TO BE FIXED IN MESA SO THAT VULKAN NOW WORKS WITH THE COLOR DEPTH OF "16" (PERFORMANCE BOOST!!!) TO INCREASE PERFORMANCE
I MADE AN ISSUE WHERE VULKAN WAS NOT WORKING WITH THE COLOR DEPTH OF "16" AT: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7846
NOW VULKAN WITH COLOR DEPTH OF "16" (PERFORMANCE BOOST!!!) IS NOW GOING TO BE FIXED IN MESA WITH THIS MERGE REQUEST!!!: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20673
SEE THE PERFORMANCE BOOST OF USING THE COLOR DEPTH OF "16" (PERFORMANCE BOOST!!!) WITH VULKAN WITH THIS MERGE REQUEST WHEN I TESTED MSI KOMBUSTOR "(VK) FurMark-MSI" WITH wine-staging 8.0-rc2 COMPARING THE PERFORMANCE OF:
???? Color of Depth "30" (121 FPS) ???? VS ???? Color of Depth "24" (124 FPS) ???? VS ???? Color of Depth "16" (PERFORMANCE BOOST!!!) (144FPS)????
WITH THE COMMENT THAT I MADE AT!!!: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7846#note_1720383
SO PREPARE TO BE ABLE TO IMPROVE PERFORMANCE WITH VULKAN NOW BY BEING ABLE USE THE COLOR DEPTH OF "16" FOR VULKAN!!!
USING THE COLOR DEPTH OF "16" (PERFORMANCE BOOST!!!) EVEN BEATS WINDOWS 10 VULKAN PERFORMANCE ACCORDING TO MY TESTING WITH "Wine-staging 8.0-rc2" MSI KOMBUSTOR "(VK) FurMark-MSI" BENCHMARK!!!:
???? Windows 10: 131 FPS (8 bpc) ???? VS ???? Linux: 124 FPS (Color of Depth "24") VS ????Linux: 144 FPS (Color Depth "16") (PERFORMANCE BOOST!!!) ????
WITH THE OLDER COMMENT THAT I MADE AT: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7846#note_1717152
I CURRENTLY HAVE NO OPTION TO USE THE COLOR DEPTH OF "16" IN WINDOWS 10 TO GET THIS PERFORMANCE BOOST!!!
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #13 from Zeb Figura z.figura12@gmail.com --- Béla, you were able to reproduce this before; is it still an issue in upstream Wine?
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #14 from Béla Gyebrószki gyebro69@gmail.com --- (In reply to Zeb Figura from comment #13)
Béla, you were able to reproduce this before; is it still an issue in upstream Wine?
I don't see the slightest improvement with current wine-8.21-252-gd37f0892bee compared to Wine-8.0-rc2 (what was current when the bug report was opened). Essentially I get the same fps values with both versions when using the DirectX11 renderer in Unigine Heaven 4.0.
Before the regression (Wine-7.1) I have more than 30% higher score.
The OpenGL and DirectX9 benchmarks are not affected by this regression.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #15 from Zeb Figura z.figura12@gmail.com --- (In reply to Béla Gyebrószki from comment #14)
(In reply to Zeb Figura from comment #13)
Béla, you were able to reproduce this before; is it still an issue in upstream Wine?
I don't see the slightest improvement with current wine-8.21-252-gd37f0892bee compared to Wine-8.0-rc2 (what was current when the bug report was opened). Essentially I get the same fps values with both versions when using the DirectX11 renderer in Unigine Heaven 4.0.
Before the regression (Wine-7.1) I have more than 30% higher score.
The OpenGL and DirectX9 benchmarks are not affected by this regression.
Does WINE_D3D_CONFIG=cb_access_map_w=1 help (and if so how much)?
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #16 from Béla Gyebrószki gyebro69@gmail.com --- (In reply to Zeb Figura from comment #15)
Does WINE_D3D_CONFIG=cb_access_map_w=1 help (and if so how much)?
Quite the contrary. This results in a further ~40% reduction in the DX11 benchmark score for me.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #17 from Zeb Figura z.figura12@gmail.com --- Okay, I am sure I tried to reproduce this before on an AMD machine, but I just tried now on a different machine and I can reproduce the performance difference.
The constant buffers used by the application are *all* small (mostly < 256 bytes, some 1536 and 3072 bytes), GPU-only, uploaded with UpdateSubResource().
I don't think the buffer chunk triggers any different logic in wined3d. In every case we're using glBufferSubData() and glBindBufferRange() with the size of the buffer.
Do drivers just not like these GPU-only buffers to be suballocated? Since they're not mappable we don't get anything out of it, so maybe that's the right call. But I'd kind of like to know why.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #18 from Zeb Figura z.figura12@gmail.com --- https://gitlab.winehq.org/wine/wine/-/merge_requests/4821 is essentially a partial revert, and it restores performance for me on iris.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #19 from Béla Gyebrószki gyebro69@gmail.com --- (In reply to Zeb Figura from comment #18)
https://gitlab.winehq.org/wine/wine/-/merge_requests/4821 is essentially a partial revert, and it restores performance for me on iris.
Well, I'm not seeing any improvement with the patch in the DX11 benchmark on Nvidia 535.43.22. Maybe OR has more luck with that. @CHECK_1234: could you please try https://gitlab.winehq.org/wine/wine/-/merge_requests/4821 ?
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #20 from Zeb Figura z.figura12@gmail.com --- (In reply to Béla Gyebrószki from comment #19)
(In reply to Zeb Figura from comment #18)
https://gitlab.winehq.org/wine/wine/-/merge_requests/4821 is essentially a partial revert, and it restores performance for me on iris.
Well, I'm not seeing any improvement with the patch in the DX11 benchmark on Nvidia 535.43.22. Maybe OR has more luck with that. @CHECK_1234: could you please try https://gitlab.winehq.org/wine/wine/-/merge_requests/4821 ?
That's bizarre. If reverting 86f0ae8e helps then that patch should do the same thing. What am I missing?
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #21 from Béla Gyebrószki gyebro69@gmail.com --- (In reply to Zeb Figura from comment #20)
That's bizarre. If reverting 86f0ae8e helps then that patch should do the same thing. What am I missing?
Sorry, I was not clear enough: I didn't claim that reverting 86f0ae mitigates the problem. In comment #5 I made the remark that it is commit 7c844cd3c9c465bdeaf3d98d6da5f2f5e460e650 that introduced the problem for me. Then OR did his own regression test and set 86f0ae8e as the offending commit. Which is probably correct on his behalf I just can't confirm that on Nvidia. Apart from that, your MR4821 might be good enough. It just doesn't fix the problem for me on Nvidia (neither helps when using nouveau/Mesa 23.3.2.)
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #22 from CHECK_1234 CHECK_1234543212345@protonmail.com --- Created attachment 75860 --> https://bugs.winehq.org/attachment.cgi?id=75860 ⬤
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75860|⬤ |⬤Wine 9.0-rc4 unpatched description| |FPS: 40 | |"radeontop" GPU | |USAGE: 100% | |GPU Power | |Usage: 13 Watts
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #23 from CHECK_1234 CHECK_1234543212345@protonmail.com --- Created attachment 75861 --> https://bugs.winehq.org/attachment.cgi?id=75861 ⬤Wine 9.0-rc4 unpatched FPS: 40 "radeontop" GPU USAGE: 100% GPU Power Usage: 13 Watts
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75861|⬤Wine 9.0-rc4 unpatched |⬤ Wine 9.0-rc4 patched with description|FPS: 40 "radeontop" GPU |Merge Request: |USAGE: 100% GPU Power |https://gitlab.winehq.org/w |Usage: 13 Watts |ine/wine/-/merge_requests/4 | |821 | |FPS: 95 | |"radeontop" GPU | |USAGE: 100% | |GPU Power | |Usage: 25 Watts
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75860|⬤Wine 9.0-rc4 unpatched |⬤ Wine 9.0-rc4 unpatched description|FPS: 40 |FPS: 40 |"radeontop" GPU |"radeontop" GPU |USAGE: 100% |USAGE: 100% |GPU Power |GPU Power |Usage: 13 Watts |Usage: 13 Watts
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75860|⬤ Wine 9.0-rc4 unpatched |⬤ Unigine Heaven DirectX11 description|FPS: 40 |to OpenGL, Wine 9.0-rc4 |"radeontop" GPU |unpatched FPS TEST |USAGE: 100% | |GPU Power |FPS: 40 |Usage: 13 Watts |"radeontop" GPU USAGE: 100% | |GPU Power Usage: 13 Watts
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75861|⬤ Wine 9.0-rc4 patched with |⬤ Unigine Heaven DirectX11 description|Merge Request: |to OpenGL, Wine 9.0-rc4 |https://gitlab.winehq.org/w |patched with Merge Request: |ine/wine/-/merge_requests/4 |https://gitlab.winehq.org/w |821 |ine/wine/-/merge_requests/4 |FPS: 95 |821 |"radeontop" GPU | |USAGE: 100% |FPS: 95 |GPU Power |"radeontop" |Usage: 25 Watts |GPU USAGE: 100% | |GPU Power | |Usage: 25 Watts
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75860|⬤ Unigine Heaven DirectX11 |⬤ Unigine Heaven DirectX11 description|to OpenGL, Wine 9.0-rc4 |to OpenGL, Wine 9.0-rc4 |unpatched FPS TEST |unpatched FPS TEST | | |FPS: 40 |FPS: 40 |"radeontop" GPU USAGE: 100% |"radeontop" GPU USAGE: 100% |GPU Power Usage: 13 Watts |GPU Power Usage: 13 Watts | |GPU Clock and GPU Memory | |Clock locked to: 300MHZ | |(using echo "low" > | |/sys/class/drm/card0/device | |/power_dpm_force_performanc | |e_level)
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75860|⬤ Unigine Heaven DirectX11 |⬤ Unigine Heaven DirectX11 description|to OpenGL, Wine 9.0-rc4 |to OpenGL, Wine 9.0-rc4 |unpatched FPS TEST |unpatched FPS TEST | | |FPS: 40 |FPS: 40 |"radeontop" GPU USAGE: 100% |"radeontop" GPU USAGE: 100% |GPU Power Usage: 13 Watts |GPU Power Usage: 13 Watts |GPU Clock and GPU Memory |GPU Clock and GPU Memory |Clock locked to: 300MHZ |Clock locked to: 300MHZ |(using echo "low" > |(using echo "low" > |/sys/class/drm/card0/device |/sys/class/drm/card0/device |/power_dpm_force_pe |/power_dpm_force_performanc | |e_level)
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75860|⬤ Unigine Heaven DirectX11 |⬤ Unigine Heaven DirectX11 description|to OpenGL, Wine 9.0-rc4 |to OpenGL, Wine 9.0-rc4 |unpatched FPS TEST |unpatched FPS TEST | | |FPS: 40 |FPS: 40 |"radeontop" GPU USAGE: 100% |"radeontop" GPU USAGE: 100% |GPU Power Usage: 13 Watts |GPU Power Usage: 13 Watts |GPU Clock and GPU Memory |GPU Clock and GPU Memory |Clock locked to: 300MHZ |Clock locked to: 300MHZ |(using echo "low" > | |/sys/class/drm/card0/device | |/power_dpm_force_pe |
https://bugs.winehq.org/show_bug.cgi?id=54223
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|dark.shadow4@web.de |
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75860|⬤ Unigine Heaven DirectX11 |⬤ Unigine Heaven DirectX11 description|to OpenGL, Wine 9.0-rc4 |to OpenGL, Wine 9.0-rc4 |unpatched FPS TEST |unpatched FPS TEST | |━ GPU |FPS: 40 |Clock and GPU Memory Clock |"radeontop" GPU USAGE: 100% |locked to: 300MHZ |GPU Power Usage: 13 Watts |FPS: 40 |GPU Clock and GPU Memory |"radeontop" GPU USAGE: 100% |Clock locked to: 300MHZ |GPU Power Usage: 13 Watts
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75861|⬤ Unigine Heaven DirectX11 |⬤ Unigine Heaven DirectX11 description|to OpenGL, Wine 9.0-rc4 |to OpenGL, Wine 9.0-rc4 |patched with Merge Request: |patched with Merge Request: |https://gitlab.winehq.org/w |https://gitlab.winehq.org/w |ine/wine/-/merge_requests/4 |ine/wine/-/merge_requests/4 |821 |821 | |━ GPU Clock and GPU |FPS: 95 |Memory Clock locked to: |"radeontop" |300MHZ |GPU USAGE: 100% |FPS: 95 |GPU Power |"radeontop" |Usage: 25 Watts |GPU USAGE: 100% | |GPU Power | |Usage: 25 Watts
https://bugs.winehq.org/show_bug.cgi?id=54223
CHECK_1234 CHECK_1234543212345@protonmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #75861|⬤ Unigine Heaven DirectX11 |⬤ Unigine Heaven DirectX11 description|to OpenGL, Wine 9.0-rc4 |to OpenGL, Wine 9.0-rc4 |patched with Merge Request: |patched with Merge Request: |https://gitlab.winehq.org/w |https://gitlab.winehq.org/w |ine/wine/-/merge_requests/4 |ine/wine/-/merge_requests/4 |821 |821 |━ GPU Clock and GPU |━ GPU Clock and Memory |Memory Clock locked to: |Clock locked to: 300MHZ |300MHZ |FPS: 95 |FPS: 95 |"radeontop" GPU |"radeontop" |USAGE: 100% |GPU USAGE: 100% |GPU Power |GPU Power |Usage: 25 Watts |Usage: 25 Wat |
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #24 from CHECK_1234 CHECK_1234543212345@protonmail.com --- ⬤ Merge Request: https://gitlab.winehq.org/wine/wine/-/merge_requests/4821 successfully fixed the DirectX11 to OpenGL low FPS in Unigine Heaven 4.0 for me on AMD RX580 GPU
Thanks for successfully fixing the DirectX11 to OpenGL low FPS in Unigine Heaven 4.0 for me on AMD RX580 GPU!
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #25 from Zeb Figura z.figura12@gmail.com --- (In reply to Béla Gyebrószki from comment #21)
(In reply to Zeb Figura from comment #20)
That's bizarre. If reverting 86f0ae8e helps then that patch should do the same thing. What am I missing?
Sorry, I was not clear enough: I didn't claim that reverting 86f0ae mitigates the problem. In comment #5 I made the remark that it is commit 7c844cd3c9c465bdeaf3d98d6da5f2f5e460e650 that introduced the problem for me.
Ooops, that was my fault, sorry I forgot you mentioned a different commit.
What settings are you using for the benchmark? I'm not getting any indirect draws, so that commit being the regression is a bit odd.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #26 from Béla Gyebrószki gyebro69@gmail.com --- (In reply to Zeb Figura from comment #25)
Ooops, that was my fault, sorry I forgot you mentioned a different commit.
What settings are you using for the benchmark? I'm not getting any indirect draws, so that commit being the regression is a bit odd.
I did all my testings with the settings what the bug reporter posted in comment #0 : Quality: low Fullscreen: unchecked Resolution: 1280X720
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #27 from Zeb Figura z.figura12@gmail.com --- (In reply to Béla Gyebrószki from comment #26)
(In reply to Zeb Figura from comment #25)
Ooops, that was my fault, sorry I forgot you mentioned a different commit.
What settings are you using for the benchmark? I'm not getting any indirect draws, so that commit being the regression is a bit odd.
I did all my testings with the settings what the bug reporter posted in comment #0 : Quality: low Fullscreen: unchecked Resolution: 1280X720
Hrm, and the other settings (tessellation, ambient occlusion, refraction, etc)?
Can you please attach a brief log with +d3d11,+d3d? I don't need more than a few frames.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #28 from Béla Gyebrószki gyebro69@gmail.com --- Created attachment 75874 --> https://bugs.winehq.org/attachment.cgi?id=75874 +d3d11,+d3d brief log (uncompressed 385 MB)
(In reply to Zeb Figura from comment #27)
(In reply to Béla Gyebrószki from comment #26)
(In reply to Zeb Figura from comment #25)
Ooops, that was my fault, sorry I forgot you mentioned a different commit.
What settings are you using for the benchmark? I'm not getting any indirect draws, so that commit being the regression is a bit odd.
I did all my testings with the settings what the bug reporter posted in comment #0 : Quality: low Fullscreen: unchecked Resolution: 1280X720
Hrm, and the other settings (tessellation, ambient occlusion, refraction, etc)?
All of the above are disabled.
Can you please attach a brief log with +d3d11,+d3d? I don't need more than a few frames.
Even though only the first few frames were rendered the generated log file is almost 400 MB.
https://bugs.winehq.org/show_bug.cgi?id=54223
--- Comment #29 from Zeb Figura z.figura12@gmail.com --- Oh right, there's no indirect draw buffers, but 7c844cd3c was the first and introduced the whole allocator infrastructure, so it was probably some unrelated change that broke things.
Would you mind filing a separate bug for that then?
https://bugs.winehq.org/show_bug.cgi?id=54223
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED Fixed by SHA1| |bed2495e50a1aa8505663f64bd1 | |ac27db67cbd4d
--- Comment #30 from Zeb Figura z.figura12@gmail.com --- Fixed upstream by https://source.winehq.org/git/wine.git/commitdiff/bed2495e50a1aa8505663f64bd1ac27db67cbd4d.
https://bugs.winehq.org/show_bug.cgi?id=54223
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #31 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 9.1.