Ensure safety of indirect dispatch#5714
Conversation
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
018b23b to
a5bebb0
Compare
This comment was marked as resolved.
This comment was marked as resolved.
ac3f089 to
36281af
Compare
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
b57350e to
e0bd41a
Compare
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
ab03bc6 to
abeb863
Compare
d82ca61 to
2ed3211
Compare
431ca4a to
28bef9d
Compare
There was a problem hiding this comment.
See Atomic issue and other small nits
EDIT from @ErichDonGubler: added a link for atomic issue
3b5533f to
fcb7658
Compare
80e374f to
1624e99
Compare
1624e99 to
ec6f138
Compare
01dab26 to
d30c4b2
Compare
d30c4b2 to
208cc09
Compare
by injecting a compute shader that validates the content of the indirect buffer
208cc09 to
66c1892
Compare
|
I will just squash and merge, losing 6619f3a is not the end of the world. |
|
I'm tracking I'm guessing it's this binding being used on line 288: ...so for some reason in my case |
|
Any plans to allow opting out of this? Maybe by disabling a flag called "extensive validation" or something like that? If that's not planned, I'd at least suggest adding an appropriate label to the compute pass? I was initially very confused about an unnamed dispatch showing up in RenderDoc :D. |
|
I actually checked my renderer, and wasn't seeing any indirect validation dispatches after upgrading to wgpu 23. Not sure why. |
That's odd. I definitely encountered these. After upgrading, my renderer stopped working and I noticed that I had been exceeding the 65k So the feature is definitely useful for development and debugging, but I'd appreciate the option to disable it for some release builds. The performance impact seems quite small, but it may add up for indirect-heavy applications on low-end hardware. |
|
That's great to hear, thanks! |

Ensure safety of indirect dispatch by injecting a compute shader that validates the content of the indirect buffer.
Part of #2431.
Depends on #6318.