On Fri Dec 2 16:22:01 2022 +0000, Jacek Caban wrote:
In a Vulkan sample that I previously used to measure the impact on command buffers, I can see a really nice improvement. If I disable all direct calls, overhead drops from __wine_syscall_dispatcher ~8% (measured in Wine without your recent patches) to 1.05% (and <0.2% for __wine_syscall_dispatcher, so not related to winevulkan). That compares to 0.6% for direct Unix calls. FPS differences roughly match that. It looks promising.
[ret.diff](/uploads/4cc909db6cfc3d4029b8a8bcec669de5/ret.diff)
This should help a bit more, does it make a difference for you?
On 12/2/22 10:42, Alexandre Julliard (@julliard) wrote:
On Fri Dec 2 16:22:01 2022 +0000, Jacek Caban wrote:
In a Vulkan sample that I previously used to measure the impact on command buffers, I can see a really nice improvement. If I disable all direct calls, overhead drops from __wine_syscall_dispatcher ~8% (measured in Wine without your recent patches) to 1.05% (and <0.2% for __wine_syscall_dispatcher, so not related to winevulkan). That compares to 0.6% for direct Unix calls. FPS differences roughly match that. It looks promising.
[ret.diff](/uploads/4cc909db6cfc3d4029b8a8bcec669de5/ret.diff)
This should help a bit more, does it make a difference for you?
I should note that having return address in rcx on syscall exit was added intentionally to help some anticheats, changing that will break them. This doesn't matter for __wine_unix_call_dispatcher of course.