diff options
| author | Nicolas James <nj3ahxac@gmail.com> | 2026-04-08 12:55:29 +1000 |
|---|---|---|
| committer | Nicolas James <nj3ahxac@gmail.com> | 2026-04-08 12:55:29 +1000 |
| commit | 453d5b0052bd17ed74d47570ffff403ffcd9ebb3 (patch) | |
| tree | 14ab71a5ff27d5485faea061f6e8fe26c0e19640 /src/strategies/low_latency2/swapchain_monitor.hh | |
| parent | eb9719cc8b9a308654ccd2c3bce8a7047b6e2a1a (diff) | |
Fix refactor latency regression for VK_NV_LowLatency2 by checking if work has already completed
Diffstat (limited to 'src/strategies/low_latency2/swapchain_monitor.hh')
| -rw-r--r-- | src/strategies/low_latency2/swapchain_monitor.hh | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/strategies/low_latency2/swapchain_monitor.hh b/src/strategies/low_latency2/swapchain_monitor.hh index 837f8e4..a5f8362 100644 --- a/src/strategies/low_latency2/swapchain_monitor.hh +++ b/src/strategies/low_latency2/swapchain_monitor.hh @@ -26,16 +26,13 @@ class SwapchainMonitor final { void signal(const DeviceContext& device) const; }; - // An empty vector here represents our 'no work' state. std::vector<std::unique_ptr<FrameSpan>> pending_frame_spans{}; - // A pairing of semaphore -> submissions. - // If the Submissions completes then signal the bundled semaphore. - struct SemaphoreSpans { + struct PendingSignal { WakeupSemaphore wakeup_semaphore{}; std::vector<std::unique_ptr<FrameSpan>> frame_spans{}; }; - std::optional<SemaphoreSpans> semaphore_spans{}; + std::deque<PendingSignal> pending_signals{}; protected: const DeviceContext& device; |
