Module: vkd3d Branch: master Commit: 206fd23afea6793cce0aba05a680607fc6f2d628 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=206fd23afea6793cce0aba05...
Author: Józef Kucia jkucia@codeweavers.com Date: Thu Jun 13 13:47:35 2019 +0200
vkd3d: Avoid busy-waiting in fence worker thread.
This might delay updating a d3d12_fence when a fence enqueued later than other fences is signaled before them. On the other hand, it significantly reduces CPU usage. I haven't found a program negatively impacted by this change so far.
Signed-off-by: Józef Kucia jkucia@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
libs/vkd3d/command.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/vkd3d/command.c b/libs/vkd3d/command.c index 7634e71..75556f5 100644 --- a/libs/vkd3d/command.c +++ b/libs/vkd3d/command.c @@ -362,7 +362,7 @@ static void vkd3d_wait_for_gpu_fences(struct vkd3d_fence_worker *worker) return;
vr = VK_CALL(vkWaitForFences(device->vk_device, - worker->fence_count, worker->vk_fences, VK_FALSE, 0)); + worker->fence_count, worker->vk_fences, VK_FALSE, ~(uint64_t)0)); if (vr == VK_TIMEOUT) return; if (vr != VK_SUCCESS)