Performance regression from "Replace fence with semaphore" #6067
Description
Description
When at commit 886dc94f5
, running the boids example and clicking inside the window makes nothing happen, as expected. However, if we use the commit after (e5c62fb5b
- "vulkan: Replace fence with semaphore when acquiring surfaces (#4967)") and run the same example, now there is noticeable latency for each click.
Originally discovered in a issue in Bevy: bevyengine/bevy#14303
Another user found which wgpu version was affected and which version wasn't: honehone12/bevy_replicon_bootstrap#47
Based on the versions mentioned in bevy_replicon_bootstrap
I bisected until arriving at the commit introducing the issue, which is e5c62fb
Repro steps
-
git checkout 886dc94f5
-
cargo +nightly run --bin wgpu-examples boids
-
Observe no lag when clicking
-
git checkout e5c62fb5b
(one commit later than886dc94f5
) -
cargo +nightly run --bin wgpu-examples boids
-
Observe lag when clicking
Expected vs observed behavior
Expected no lag on mouse click, observed lag on mouse click.
Extra materials
Videos demonstrating the issue can be found in the Bevy issue: bevyengine/bevy#14303 (comment)
Platform
So far, seems to only happen on Linux + X11 + Nvidia GPU combo.
Output from wgpu-info
Adapter 0:
Backend: Vulkan
Name: NVIDIA GeForce RTX 3090 Ti
VendorID: 0x10DE
DeviceID: 0x2203
Type: DiscreteGpu
Driver: NVIDIA
DriverInfo: 555.58.02
WebGPU Compliant: true
Metadata
Assignees
Labels
Type
Projects
Status
Todo