-
Notifications
You must be signed in to change notification settings - Fork 921
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
Implement Subgroup Ops #1212
Comments
Please see gpuweb/gpuweb#1459 for updated previews (I had to close the previous PR). Thanks. |
Thanks! Updated OP |
Assuming that I have compatible hardware, can I use subgroup ops in wgpu-native with SPIR-V right now? Would it cause the validation layer or anything else to complain? |
We wouldn't complain right now, but we will at a point where the validation grows enough. |
Subgroup ops will only work on Vulkan right now anyway, as our shader pipeline can't handle them for DX12, though they might work on mtl if spirv-cross supports them. Validation would definitely complain though. Now that we have the ability to run at higher vulkan levels, we should be able to support them, someone just needs to put the work in. |
Closing in favor of #4428 |
Is your feature request related to a problem? Please describe.
gpuweb/gpuweb#1459 is the upstream WIP specification, and this is needed to write high-performance shaders.
Describe the solution you'd like
Subgroup ops implemented either exactly as the upstream spec, or a very similar API that can be converted later.
Describe alternatives you've considered
Not having subgroup ops. This makes GPUs sad.
Additional context
Subgroup ops are critical in some of the algorithms for aggressive triangle culling as you're literally trying to beat the rasterizer at culling triangles. It is also useful whenever you're trying to do any kind of culling.
The text was updated successfully, but these errors were encountered: