buffer_view CTS#4652
Conversation
|
Results for build job (at 0857a08): +webgpu:api,validation,dispatch:shader_required_buffer_size:* - 23 cases, 92 subcases (~4/case)
+webgpu:api,validation,min_buffer_binding_size:compute,shader_required_buffer_size:* - 23 cases, 92 subcases (~4/case)
+webgpu:api,validation,min_buffer_binding_size:render,shader_required_buffer_size:* - 4 cases, 16 subcases (~4/case)
+webgpu:shader,execution,expression,call,builtin,bufferArrayView:array_length:* - 78 cases, 832 subcases (~11/case)
+webgpu:shader,execution,expression,call,builtin,bufferArrayView:array_length,functions:* - 78 cases, 1560 subcases (~20/case)
+webgpu:shader,execution,expression,call,builtin,bufferArrayView:read_layout:* - 35 cases, 604 subcases (~17/case)
+webgpu:shader,execution,expression,call,builtin,bufferArrayView:write_layout:* - 35 cases, 604 subcases (~17/case)
+webgpu:shader,execution,expression,call,builtin,bufferArrayView:read:* - 4 cases, 744 subcases (~186/case)
+webgpu:shader,execution,expression,call,builtin,bufferArrayView:write:* - 4 cases, 1224 subcases (~306/case)
+webgpu:shader,execution,expression,call,builtin,bufferLength:sized_buffer:* - 5 cases, 120 subcases (~24/case)
+webgpu:shader,execution,expression,call,builtin,bufferLength:unsized_buffer:* - 5 cases, 80 subcases (~16/case)
+webgpu:shader,execution,expression,call,builtin,bufferLength:max_size_buffer:* - 6 cases, 6 subcases (~1/case)
+webgpu:shader,execution,expression,call,builtin,bufferView:array_length:* - 78 cases, 832 subcases (~11/case)
+webgpu:shader,execution,expression,call,builtin,bufferView:array_length,functions:* - 78 cases, 2056 subcases (~26/case)
+webgpu:shader,execution,expression,call,builtin,bufferView:read_layout:* - 35 cases, 604 subcases (~17/case)
+webgpu:shader,execution,expression,call,builtin,bufferView:write_layout:* - 35 cases, 604 subcases (~17/case)
+webgpu:shader,execution,expression,call,builtin,bufferView:read:* - 4 cases, 856 subcases (~214/case)
+webgpu:shader,execution,expression,call,builtin,bufferView:write:* - 4 cases, 1224 subcases (~306/case)
[snip - full report in action logs]
-TOTAL: 283854 cases, 2329266 subcases
+TOTAL: 285236 cases, 2346080 subcases |
dneto0
left a comment
There was a problem hiding this comment.
Finished reviewing. This is a very impressive suite. Thanks for creating it!
I also suggest adding additional validation test cases for arrayLength, i.e. in src/webgpu/shader/validation/expression/call/arrayLength. Sized and unsized buffer types should be tested.
* Validation of buffer type and related builtin functions
* Tests for * bufferLength * bufferView * bufferArrayView
dneto0
left a comment
There was a problem hiding this comment.
You've addressed all my feedback.
Please add a test case (that you mentioned offline) for dispatch validation:
- in a render pipeline, when vertex and fragment use the same unsized buffer, the min size is the larger of the two uses.
I looked for it in webgpu:api,validation,dispatch:shader_required_buffer_size but it's fine for it to be in a new test, to avoid complicating that one.
I've added some simple tests for this. I moved them all to a new file. There's no point checking uniform since it must be sized and that will take precedence. |
dneto0
left a comment
There was a problem hiding this comment.
LGTM! Thank you.
(with one nit)
Spec: gpuweb/gpuweb#6291 CTS: gpuweb/cts#4652 Both were approved and landed. Bug: 506523117 Change-Id: I7a6ad45f4b3a637eb4f7cf015c5729f4ac38f5ea Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8086445 Commit-Queue: Alan Baker <alanbaker@google.com> Reviewed-by: Kai Ninomiya <kainino@chromium.org> Cr-Commit-Position: refs/heads/main@{#1662578}
buffer_view validation and execution CTS tests.
Issue: #
Requirements for PR author:
.unimplemented()./** documented */and new helper files are found inhelper_index.txt.Requirements for reviewer sign-off:
When landing this PR, be sure to make any necessary issue status updates.