From 41c8651c0dacffa7e8b163ec6b95265ef537714c Mon Sep 17 00:00:00 2001 From: YC Yen-Ching Tseng Date: Wed, 18 Mar 2026 09:01:51 +0800 Subject: [PATCH] Revert "[AMD] CI - skip tests on mi325 (#20660)" (#20802) --- .github/workflows/pr-test-amd.yml | 122 ++++++++++++++++++++++++++---- 1 file changed, 108 insertions(+), 14 deletions(-) diff --git a/.github/workflows/pr-test-amd.yml b/.github/workflows/pr-test-amd.yml index cceb529ed..246d294a3 100644 --- a/.github/workflows/pr-test-amd.yml +++ b/.github/workflows/pr-test-amd.yml @@ -159,7 +159,15 @@ jobs: # =============================================== sgl-kernel ==================================================== sgl-kernel-unit-test-amd: needs: [check-changes] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',sgl-kernel-unit-test-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + needs.check-changes.outputs.sgl_kernel == 'true' + ) + ) strategy: fail-fast: false matrix: @@ -198,7 +206,15 @@ jobs: sgl-kernel-unit-test-2-gpu-amd: needs: [check-changes] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',sgl-kernel-unit-test-2-gpu-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + needs.check-changes.outputs.sgl_kernel == 'true' + ) + ) strategy: fail-fast: false matrix: @@ -232,7 +248,16 @@ jobs: stage-a-test-1-amd: needs: [check-changes] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',stage-a-test-1-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + (!failure() && !cancelled()) && + ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) + ) + ) strategy: fail-fast: false matrix: @@ -263,7 +288,15 @@ jobs: jit-kernel-unit-test-amd: needs: [check-changes] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',jit-kernel-unit-test-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + needs.check-changes.outputs.jit_kernel == 'true' + ) + ) strategy: fail-fast: false matrix: @@ -294,7 +327,16 @@ jobs: stage-b-test-small-1-gpu-amd: needs: [check-changes, stage-a-test-1-amd] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',stage-b-test-small-1-gpu-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + (!failure() && !cancelled()) && + ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) + ) + ) strategy: fail-fast: false matrix: @@ -325,7 +367,16 @@ jobs: stage-b-test-small-1-gpu-amd-nondeterministic: needs: [check-changes, stage-a-test-1-amd] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',stage-b-test-small-1-gpu-amd-nondeterministic,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + (!failure() && !cancelled()) && + ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) + ) + ) strategy: fail-fast: false matrix: @@ -354,7 +405,7 @@ jobs: bash scripts/ci/amd/amd_ci_exec.sh -w "/sglang-checkout/test" python3 run_suite.py --hw amd --suite stage-b-test-small-1-gpu-amd-nondeterministic --timeout-per-file 1800 ${{ inputs.continue_on_error && '--continue-on-error' || '' }} stage-b-test-small-1-gpu-amd-mi35x: - needs: [check-changes, call-gate] + needs: [check-changes, stage-a-test-1-amd] if: | always() && ( @@ -394,7 +445,16 @@ jobs: stage-b-test-large-1-gpu-amd: needs: [check-changes, stage-a-test-1-amd] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',stage-b-test-large-1-gpu-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + (!failure() && !cancelled()) && + ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) + ) + ) strategy: fail-fast: false matrix: @@ -425,7 +485,16 @@ jobs: stage-b-test-large-2-gpu-amd: needs: [check-changes, stage-a-test-1-amd] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',stage-b-test-large-2-gpu-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + (!failure() && !cancelled()) && + ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) + ) + ) strategy: fail-fast: false matrix: @@ -456,7 +525,15 @@ jobs: multimodal-gen-test-1-gpu-amd: needs: [check-changes] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',multimodal-gen-test-1-gpu-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + needs.check-changes.outputs.multimodal_gen == 'true' + ) + ) strategy: fail-fast: false max-parallel: 1 # Run one at a time to avoid eviction from resource exhaustion during AITER kernel JIT @@ -576,7 +653,15 @@ jobs: multimodal-gen-test-2-gpu-amd: needs: [check-changes] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',multimodal-gen-test-2-gpu-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + needs.check-changes.outputs.multimodal_gen == 'true' + ) + ) strategy: fail-fast: false max-parallel: 1 # Run one at a time to avoid eviction from resource exhaustion during AITER kernel JIT @@ -695,7 +780,16 @@ jobs: stage-c-test-large-8-gpu-amd: needs: [check-changes, call-gate, stage-b-test-small-1-gpu-amd, stage-b-test-large-2-gpu-amd] - if: false + if: | + always() && + ( + (contains(format(',{0},', inputs.target_stage || inputs.target_stage_select), ',stage-c-test-large-8-gpu-amd,')) || + ( + !(inputs.target_stage || inputs.target_stage_select) && + (!failure() && !cancelled()) && + ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) + ) + ) env: RUNNER_LABELS: linux-mi325-8gpu-sglang strategy: @@ -733,7 +827,7 @@ jobs: bash scripts/ci/amd/amd_ci_exec.sh -w "/sglang-checkout/test" python3 run_suite.py --hw amd --suite stage-c-test-large-8-gpu-amd --auto-partition-id ${{ matrix.part }} --auto-partition-size 3 --timeout-per-file 3600 ${{ inputs.continue_on_error && '--continue-on-error' || '' }} stage-c-test-large-8-gpu-amd-mi35x: - needs: [check-changes, call-gate] + needs: [check-changes, call-gate, stage-b-test-small-1-gpu-amd, stage-b-test-large-2-gpu-amd] if: | always() && ( @@ -774,7 +868,7 @@ jobs: # =============================================== Disaggregation ==================================================== stage-b-test-large-8-gpu-35x-disaggregation-amd: - needs: [check-changes, call-gate] + needs: [check-changes, stage-a-test-1-amd] if: | always() && (