wgpu
wgpu copied to clipboard
Subgroup quad operations
Wgpu 0.20 landed subgroup operations, but is missing quad operations.
E.g. Fidelity FX's single pass downscaling uses them:
FfxFloat32x4 SpdReduceQuad(FfxFloat32x4 v)
{
FfxFloat32x4 v0 = v;
FfxFloat32x4 v1 = subgroupQuadSwapHorizontal(v);
FfxFloat32x4 v2 = subgroupQuadSwapVertical(v);
FfxFloat32x4 v3 = subgroupQuadSwapDiagonal(v);
return SpdReduce4(v0, v1, v2, v3);
}