Skip to content

Add shader validation tests on subgroup-size-control - Part II#4648

Open
Jiawei-Shao wants to merge 1 commit into
gpuweb:mainfrom
Jiawei-Shao:subgroup-size-control-2
Open

Add shader validation tests on subgroup-size-control - Part II#4648
Jiawei-Shao wants to merge 1 commit into
gpuweb:mainfrom
Jiawei-Shao:subgroup-size-control-2

Conversation

@Jiawei-Shao
Copy link
Copy Markdown
Collaborator

This patch adds the second part of the shader validation tests on the extension subgroup-size-control:

  • The value of @subgroup_size must be a constant expression or an override expression that resolves to an i32 or an u32.
  • The value of @subgroup_size must be a power of 2.
  • The x-dimension of the entry point's workgroup_size must be a multiple of the @subgroup_size value, or a pipeline creation error occurs

Issue: #4640


Requirements for PR author:

  • [*] All missing test coverage is tracked with "TODO" or .unimplemented().
  • [*] New helpers are /** documented */ and new helper files are found in helper_index.txt.
  • [*] Test behaves as expected in a WebGPU implementation. (If not passing, explain above.)
  • [*] Test have be tested with compatibility mode validation enabled and behave as expected. (If not passing, explain above.)

Requirements for reviewer sign-off:

  • Tests are properly located.
  • Test descriptions are accurate and complete.
  • Tests provide complete coverage (including validation control cases). Missing coverage MUST be covered by TODOs.
  • Tests avoid over-parameterization (see case count report).

When landing this PR, be sure to make any necessary issue status updates.

This patch adds the second part of the shader validation tests on the
extension subgroup-size-control:

- The value of @subgroup_size must be a constant expression or an
  override expression that resolves to an i32 or an u32.
- The value of @subgroup_size must be a power of 2.
- The x-dimension of the entry point's workgroup_size must be a
  multiple of the @subgroup_size value, or a pipeline creation error
  occurs

Issue: gpuweb#4640
@Jiawei-Shao Jiawei-Shao requested review from jrprice and kainino0x May 21, 2026 06:39
@github-actions
Copy link
Copy Markdown

Results for build job (at 0018d19):

+webgpu:shader,validation,extension,subgroup_size_control:subgroup_size_value_must_be_const_or_override_i32_u32:* - 18 cases, 18 subcases (~1/case)
+webgpu:shader,validation,extension,subgroup_size_control:subgroup_size_constant_value_must_be_power_of_2:* - 18 cases, 18 subcases (~1/case)
+webgpu:shader,validation,extension,subgroup_size_control:subgroup_size_override_must_be_power_of_2_at_pipeline_creation:* - 7 cases, 7 subcases (~1/case)
+webgpu:shader,validation,extension,subgroup_size_control:subgroup_size_override_valid_values_no_error:* - 1 cases, 1 subcases (~1/case)
+webgpu:shader,validation,extension,subgroup_size_control:workgroup_size_x_must_be_multiple_of_subgroup_size_at_pipeline_creation:* - 36 cases, 36 subcases (~1/case)
-TOTAL: 281256 cases, 2322907 subcases
+TOTAL: 281336 cases, 2322987 subcases

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant