From 0381081c5df79f261a1056b095b3044e7b518e9c Mon Sep 17 00:00:00 2001 From: GPUCode Date: Thu, 26 Jan 2023 22:05:38 +0200 Subject: [PATCH] Revert "vk_scheduler: wait for command processing to complete" * This causes DispatchWork to stall and everything that calls it resulting in noticeable slowdown --- src/video_core/renderer_vulkan/vk_scheduler.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/video_core/renderer_vulkan/vk_scheduler.cpp b/src/video_core/renderer_vulkan/vk_scheduler.cpp index c6138c10f..5c3e5870d 100644 --- a/src/video_core/renderer_vulkan/vk_scheduler.cpp +++ b/src/video_core/renderer_vulkan/vk_scheduler.cpp @@ -79,7 +79,6 @@ void Scheduler::DispatchWork() { void Scheduler::WorkerThread(std::stop_token stop_token) { do { std::unique_ptr work; - bool has_submit{false}; { std::unique_lock lock{work_mutex}; if (work_queue.empty()) { @@ -91,10 +90,9 @@ void Scheduler::WorkerThread(std::stop_token stop_token) { } work = std::move(work_queue.front()); work_queue.pop(); - - has_submit = work->HasSubmit(); - work->ExecuteAll(current_cmdbuf); } + const bool has_submit = work->HasSubmit(); + work->ExecuteAll(current_cmdbuf); if (has_submit) { AllocateWorkerCommandBuffers(); }