diff options
| author | Gangzheng Tong <tonggangzheng@gmail.com> | 2025-05-16 14:51:46 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-05-16 16:51:46 -0500 |
| commit | 8f20632a0ba45c3bfada293842e55129949a2ae9 (patch) | |
| tree | 1c725aa8595780f067f5ad8cf60d6334bd9a1797 /.github | |
| parent | da951e06e7eb8ad1b9c91d6176be8165ea4f2b45 (diff) | |
Enable Windows full debug testsuite in CI (#7085)
* Unify Debug Layer Control Logic and Add Disable Option for Debug Builds
This PR refactors and unifies the debug layer control logic in slang-test.
A new `-disable-debug-layers` option is introduced, allowing debug builds to skip enabling the validation (debug) layer.
This is currently needed to ensure stability in the debug test suite.
Previously, different toggles such as ENABLE_VALIDATION_LAYER, ENABLE_DEBUG_LAYER, and debugLayerEnabled were used inconsistently across different components of slang-test. This PR standardizes the logic by using a single variable, debugLayerEnabled, to control the enabling/disabling of the debug layer internally.
Notes:
By default, the debug/validation layer is enabled in debug builds and is not supported in release builds of slang-test.
Fixes: #7132
* Disable spirv-opt for the DebugFunctionDefinition issue
* Run debug build only in GCP machines
* Fix VUID-vkCmdPipelineBarrier-pBufferMemoryBarriers-02818
dstAcessMask can't include VK_ACCESS_TRANSFER_READ_BIT when stage mask
has VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR
* Set failed retry limit to 32
---------
Co-authored-by: slangbot <ellieh+slangbot@nvidia.com>
Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
Diffstat (limited to '.github')
| -rw-r--r-- | .github/workflows/ci.yml | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e2598cd73..8a4007183 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,7 +61,7 @@ jobs: runs-on: ubuntu-24.04-arm has-gpu: false build-llvm: false - # Self-hosted full gpu build + # Self-hosted full gpu build - release - os: windows config: release compiler: cl @@ -70,6 +70,17 @@ jobs: full-gpu-tests: true runs-on: [Windows, self-hosted] has-gpu: true + server-count: 8 + # Self-hosted full gpu build - debug + - os: windows + config: debug + compiler: cl + platform: x86_64 + test-category: full + full-gpu-tests: true + runs-on: [Windows, self-hosted, "GCP-T4"] + has-gpu: true + server-count: 8 fail-fast: false runs-on: ${{ matrix.runs-on }} @@ -176,12 +187,13 @@ jobs: if [[ "${{matrix.full-gpu-tests}}" == "true" ]]; then "$bin_dir/slang-test" \ -use-test-server \ - -server-count 8 \ + -server-count ${{ matrix.server-count }} \ -category ${{ matrix.test-category }} \ -api all-cpu \ -expected-failure-list tests/expected-failure-github.txt \ -skip-reference-image-generation \ - -show-adapter-info + -show-adapter-info \ + ${{ matrix.config == 'debug' && '-disable-debug-layers' || '' }} elif [[ "${{matrix.has-gpu}}" == "true" ]]; then "$bin_dir/slang-test" \ -use-test-server \ @@ -191,7 +203,8 @@ jobs: -expected-failure-list tests/expected-failure-record-replay-tests.txt \ -expected-failure-list tests/expected-failure-github-runner.txt \ -skip-reference-image-generation \ - -show-adapter-info + -show-adapter-info \ + ${{ matrix.config == 'debug' && '-disable-debug-layers' || '' }} else "$bin_dir/slang-test" \ -use-test-server \ @@ -201,7 +214,8 @@ jobs: -expected-failure-list tests/expected-failure-record-replay-tests.txt \ -expected-failure-list tests/expected-failure-github-runner.txt \ -skip-reference-image-generation \ - -show-adapter-info + -show-adapter-info \ + ${{ matrix.config == 'debug' && '-disable-debug-layers' || '' }} fi - name: Run Slang examples if: steps.filter.outputs.should-run == 'true' && matrix.platform != 'wasm' && matrix.full-gpu-tests @@ -217,13 +231,13 @@ jobs: run: | PATH=$bin_dir:$PATH tools/slangc-test/test.sh - name: Test Slang via glsl - if: steps.filter.outputs.should-run == 'true' && matrix.full-gpu-tests && matrix.platform != 'wasm' + if: steps.filter.outputs.should-run == 'true' && matrix.full-gpu-tests && matrix.platform != 'wasm' && matrix.config != 'debug' run: | export SLANG_RUN_SPIRV_VALIDATION=1 export SLANG_USE_SPV_SOURCE_LANGUAGE_UNKNOWN=1 "$bin_dir/slang-test" \ -use-test-server \ - -server-count 8 \ + -server-count ${{ matrix.server-count }} \ -category ${{ matrix.test-category }} \ -emit-spirv-via-glsl \ -api vk \ |
