Dolphin, the GameCube and Wii emulator - Forums
Homebrew Channel Vulkan performance - Printable Version

+- Dolphin, the GameCube and Wii emulator - Forums (https://forums.dolphin-emu.org)
+-- Forum: Dolphin Emulator Discussion and Support (https://forums.dolphin-emu.org/Forum-dolphin-emulator-discussion-and-support)
+--- Forum: Development Discussion (https://forums.dolphin-emu.org/Forum-development-discussion)
+--- Thread: Homebrew Channel Vulkan performance (/Thread-homebrew-channel-vulkan-performance)



Homebrew Channel Vulkan performance - Miksel12 - 06-14-2019

Today I tested the Homebrew Channel to see of some of the issues mentioned on the wiki were still occuring. In my testing I tested all the video backends and found these results:
DX12: 1020fps
DX11: 930fps
OpenGL: 666fps
Vulkan: 510fps
What I don't understand is how Vulkan, which should have low overhead, has the least performance. The Homebrew Channel is clearly not very gpu intensive which would mean that the api's with the least overhead should clearly more performant than api with more overhead, which is the case for DX12 compared to 11. But even OpenGL beats Vulkan with DX11 almost doubling performance.
I was wondering if anyone knows why Vulkan is performing so much worse in this case.


RE: Homebrew Channel Vulkan performance - mstreurman - 06-17-2019

(06-14-2019, 10:42 AM)Miksel12 Wrote: Today I tested the Homebrew Channel to see of some of the issues mentioned on the wiki were still occuring. In my testing I tested all the video backends and found these results:
DX12: 1020fps
DX11: 930fps
OpenGL: 666fps
Vulkan: 510fps
What I don't understand is how Vulkan, which should have low overhead, has the least performance. The Homebrew Channel is clearly not very gpu intensive which would mean that the api's with the least overhead should clearly more performant than api with more overhead, which is the case for DX12 compared to 11. But even OpenGL beats Vulkan with DX11 almost doubling performance.
I was wondering if anyone knows why Vulkan is performing so much worse in this case.

Not a dev here, but my guess would be: you need a lot of overhead to see the difference, since there are few drawcalls on the homebrew menu there is nothing to parallelize (if that is a word) and thus you won't see much increase or, in this case, a decrease because of the way Dolphin uses Vulkan? This is just a guess, I have no real clue whatsoever just trying to let my logic do some of the work.

Then there is the issue with nVidia drivers and how Vulkan/OpenGL is implemented into it e.g. Metroid Prime on Vulkan/OGL using Ubershaders (Async or sync) still give stutters because of some sort of locking, which also could explain the huge discrepancy you are seeing between DX derivates and the OGL derivates.