Running the WebGPU CTS against WARP, I see failures in:
- webgpu:shader,execution,expression,call,builtin,quadSwap:compute,split:predicate="lower_half";wgSize=[4,1,1]
- webgpu:shader,execution,expression,call,builtin,quadSwap:compute,split:predicate="lower_half";wgSize=[1,4,1]
- webgpu:shader,execution,expression,call,builtin,quadSwap:compute,split:predicate="lower_half";wgSize=[1,1,4]
- webgpu:shader,execution,expression,call,builtin,quadSwap:compute,split:predicate="upper_half";wgSize=[4,1,1]
- webgpu:shader,execution,expression,call,builtin,quadSwap:compute,split:predicate="upper_half";wgSize=[1,4,1]
- webgpu:shader,execution,expression,call,builtin,quadSwap:compute,split:predicate="upper_half";wgSize=[1,1,4]
- webgpu:shader,execution,expression,call,builtin,quadBroadcast:compute,split:predicate="lower_half";wgSize=[4,1,1]
- webgpu:shader,execution,expression,call,builtin,quadBroadcast:compute,split:predicate="lower_half";wgSize=[1,4,1]
- webgpu:shader,execution,expression,call,builtin,quadBroadcast:compute,split:predicate="lower_half";wgSize=[1,1,4]
- webgpu:shader,execution,expression,call,builtin,quadBroadcast:compute,split:predicate="upper_half";wgSize=[4,1,1]
- webgpu:shader,execution,expression,call,builtin,quadBroadcast:compute,split:predicate="upper_half";wgSize=[1,4,1]
- webgpu:shader,execution,expression,call,builtin,quadBroadcast:compute,split:predicate="upper_half";wgSize=[1,1,4]
As far as I can tell, these test cases split the work group in half, with half of the lanes active, and half inactive. The description of the quad tests includes the wording:
Quad operations require a fully active quad to operate correctly so several of the predication filters are skipped.
But the test cases that WARP fails clearly fall into a not-fully-active quad, since it's a group size of 4 (one quad) which is half active. I believe these are test bugs and these cases should be skipped.
Running the WebGPU CTS against WARP, I see failures in:
As far as I can tell, these test cases split the work group in half, with half of the lanes active, and half inactive. The description of the quad tests includes the wording:
But the test cases that WARP fails clearly fall into a not-fully-active quad, since it's a group size of 4 (one quad) which is half active. I believe these are test bugs and these cases should be skipped.