-
Notifications
You must be signed in to change notification settings - Fork 950
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.