const_array_elements limit test: split into MAX, MAX/8, MAX/64 cases (#4497)

The MAX const array size is 2047.

The driver compiler can take a long time compiling the MAX case.
For example a laptop with an Intel Gen12 LP GPU with the Mesa
driver can take 28s to compile the shader.  This exceeds Chrome's GPU
watchdog timeout (10s) and the test will fail.

Instead of completely disabling the test, split it into cases
for MAX, MAX/8, and MAX/64 elements.  This lets us skip the very
largest cases, but still attempt smaller bug significant array
sizes. That lets us get some signal that the large-ish const
arrays are viable.

The additional runtime for the new cases are insignificant
compared to the full case.

Fixed: #4496
1 file changed
tree: d54e51341d3282780dd789887aecf04672df5cbb
  1. .github/
  2. .vscode/
  3. docs/
  4. src/
  5. standalone/
  6. tools/
  7. .eslint-resolver.js
  8. .eslintignore
  9. .eslintrc.json
  10. .gitattributes
  11. .gitignore
  12. babel.config.js
  13. CONTRIBUTING.md
  14. cts.code-workspace
  15. deploy_key.enc
  16. Gruntfile.js
  17. LICENSE.txt
  18. node.tsconfig.json
  19. package-lock.json
  20. package.json
  21. prettier.config.js
  22. README.md
  23. tsconfig.json
  24. w3c.json
README.md

WebGPU Conformance Test Suite

This is the conformance test suite for WebGPU. It tests the behaviors defined by the WebGPU specification.

The contents of this test suite are considered normative; implementations must pass them to be WebGPU-conformant. Mismatches between the specification and tests are bugs.

This test suite can be embedded inside WPT or run in standalone.

Launch the standalone CTS runner / test plan viewer

Contributing

Please read the introductory guidelines before contributing. Other documentation may be found in docs/ and in the helper index (source).

Read CONTRIBUTING.md on licensing.

For realtime communication about WebGPU spec and test, join the #WebGPU:matrix.org room on Matrix.