mirror of
https://github.com/yuzu-emu/yuzu-mainline.git
synced 2024-12-24 16:25:36 +00:00
Merge pull request #3155 from bunnei/fix-asynch-gpu-wait
gpu_thread: Don't spin wait if there are no GPU commands.
This commit is contained in:
commit
33a6b45a6c
|
@ -31,8 +31,7 @@ static void RunThread(VideoCore::RendererBase& renderer, Tegra::DmaPusher& dma_p
|
||||||
|
|
||||||
CommandDataContainer next;
|
CommandDataContainer next;
|
||||||
while (state.is_running) {
|
while (state.is_running) {
|
||||||
while (!state.queue.Empty()) {
|
next = state.queue.PopWait();
|
||||||
state.queue.Pop(next);
|
|
||||||
if (const auto submit_list = std::get_if<SubmitListCommand>(&next.data)) {
|
if (const auto submit_list = std::get_if<SubmitListCommand>(&next.data)) {
|
||||||
dma_pusher.Push(std::move(submit_list->entries));
|
dma_pusher.Push(std::move(submit_list->entries));
|
||||||
dma_pusher.DispatchCalls();
|
dma_pusher.DispatchCalls();
|
||||||
|
@ -49,7 +48,6 @@ static void RunThread(VideoCore::RendererBase& renderer, Tegra::DmaPusher& dma_p
|
||||||
}
|
}
|
||||||
state.signaled_fence.store(next.fence);
|
state.signaled_fence.store(next.fence);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ThreadManager::ThreadManager(Core::System& system) : system{system} {}
|
ThreadManager::ThreadManager(Core::System& system) : system{system} {}
|
||||||
|
|
Loading…
Reference in a new issue