ci: migrate RL tests to test/registered/rl/ (#16417)

This commit is contained in:
Alison Shao
2026-01-05 22:13:13 -08:00
committed by GitHub
parent 6ffe1fc02f
commit 861a35fb6e
10 changed files with 76 additions and 17 deletions
+40
View File
@@ -224,6 +224,45 @@ jobs:
run: | run: |
bash scripts/ci/amd_ci_exec.sh -w "/sglang-checkout/test" python3 run_suite.py --hw amd --suite stage-b-test-small-1-gpu --auto-partition-id ${{ matrix.part }} --auto-partition-size 4 bash scripts/ci/amd_ci_exec.sh -w "/sglang-checkout/test" python3 run_suite.py --hw amd --suite stage-b-test-small-1-gpu --auto-partition-id ${{ matrix.part }} --auto-partition-size 4
stage-b-test-large-2-gpu-amd:
needs: [check-changes, stage-a-test-1-amd]
if: |
always() &&
(
(inputs.target_stage == 'stage-b-test-large-2-gpu-amd') ||
(
!inputs.target_stage &&
(!failure() && !cancelled()) &&
((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true'))
)
)
strategy:
fail-fast: false
matrix:
runner: [linux-mi325-gpu-2]
runs-on: ${{matrix.runner}}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ inputs.pr_head_sha || inputs.ref || github.sha }}
- name: Ensure VRAM is clear
run: bash scripts/ensure_vram_clear.sh rocm
- name: Start CI container
run: bash scripts/ci/amd_ci_start_container.sh
env:
GITHUB_WORKSPACE: ${{ github.workspace }}
- name: Install dependencies
run: bash scripts/ci/amd_ci_install_dependency.sh
- name: Run test
timeout-minutes: 30
run: |
bash scripts/ci/amd_ci_exec.sh -w "/sglang-checkout/test" python3 run_suite.py --hw amd --suite stage-b-test-large-2-gpu-amd
multimodal-gen-test-1-gpu-amd: multimodal-gen-test-1-gpu-amd:
needs: [check-changes] needs: [check-changes]
if: needs.check-changes.outputs.multimodal_gen == 'true' if: needs.check-changes.outputs.multimodal_gen == 'true'
@@ -884,6 +923,7 @@ jobs:
stage-a-test-1-amd, stage-a-test-1-amd,
stage-b-test-small-1-gpu-amd, stage-b-test-small-1-gpu-amd,
stage-b-test-large-2-gpu-amd,
unit-test-backend-1-gpu-amd, unit-test-backend-1-gpu-amd,
unit-test-backend-2-gpu-amd, unit-test-backend-2-gpu-amd,
unit-test-backend-8-gpu-amd, unit-test-backend-8-gpu-amd,
+1
View File
@@ -178,6 +178,7 @@ def handle_rerun_stage(
"sgl-kernel-unit-test-amd", "sgl-kernel-unit-test-amd",
"stage-a-test-1-amd", "stage-a-test-1-amd",
"stage-b-test-small-1-gpu-amd", "stage-b-test-small-1-gpu-amd",
"stage-b-test-large-2-gpu-amd",
"unit-test-backend-1-gpu-amd", "unit-test-backend-1-gpu-amd",
"unit-test-backend-2-gpu-amd", "unit-test-backend-2-gpu-amd",
"unit-test-backend-8-gpu-amd", "unit-test-backend-8-gpu-amd",
@@ -1,3 +1,8 @@
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
register_cuda_ci(est_time=9, suite="stage-b-test-small-1-gpu")
register_amd_ci(est_time=15, suite="stage-b-test-small-1-gpu")
import unittest import unittest
from types import SimpleNamespace from types import SimpleNamespace
from unittest.mock import patch from unittest.mock import patch
@@ -1,3 +1,10 @@
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
register_cuda_ci(est_time=19, suite="stage-b-test-large-2-gpu")
register_amd_ci(
est_time=19, suite="stage-b-test-large-2-gpu-amd", disabled="see #11127"
)
import os import os
import traceback import traceback
import unittest import unittest
@@ -1,3 +1,7 @@
from sglang.test.ci.ci_register import register_cuda_ci
register_cuda_ci(est_time=180, suite="stage-c-test-large-4-gpu")
import asyncio import asyncio
import logging import logging
import unittest import unittest
@@ -1,3 +1,8 @@
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
register_cuda_ci(est_time=210, suite="stage-b-test-small-1-gpu", disabled="see #14021")
register_amd_ci(est_time=210, suite="stage-b-test-small-1-gpu", disabled="see #14021")
import json import json
import random import random
import time import time
@@ -1,3 +1,8 @@
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
register_cuda_ci(est_time=103, suite="stage-b-test-large-2-gpu")
register_amd_ci(est_time=103, suite="stage-b-test-large-2-gpu-amd")
"""Test distributed weight updates. """Test distributed weight updates.
This test suite simulates a distributed training environment to ensure This test suite simulates a distributed training environment to ensure
@@ -1,3 +1,7 @@
from sglang.test.ci.ci_register import register_cuda_ci
register_cuda_ci(est_time=195, suite="stage-b-test-small-1-gpu")
import gc import gc
import json import json
import random import random
+5 -1
View File
@@ -18,7 +18,11 @@ HW_MAPPING = {
# Per-commit test suites (run on every PR) # Per-commit test suites (run on every PR)
PER_COMMIT_SUITES = { PER_COMMIT_SUITES = {
HWBackend.CPU: ["default", "stage-a-cpu-only"], HWBackend.CPU: ["default", "stage-a-cpu-only"],
HWBackend.AMD: ["stage-a-test-1", "stage-b-test-small-1-gpu"], HWBackend.AMD: [
"stage-a-test-1",
"stage-b-test-small-1-gpu",
"stage-b-test-large-2-gpu-amd",
],
HWBackend.CUDA: [ HWBackend.CUDA: [
"stage-a-test-1", "stage-a-test-1",
"stage-b-test-small-1-gpu", "stage-b-test-small-1-gpu",
-16
View File
@@ -28,10 +28,6 @@ suites = {
TestFile("openai_server/validation/test_openai_server_ignore_eos.py", 6), TestFile("openai_server/validation/test_openai_server_ignore_eos.py", 6),
TestFile("openai_server/validation/test_request_length_validation.py", 38), TestFile("openai_server/validation/test_request_length_validation.py", 38),
TestFile("ops/test_repeat_interleave.py", 60), TestFile("ops/test_repeat_interleave.py", 60),
# quant tests moved to test/registered/quant/
TestFile("rl/test_fp32_lm_head.py", 9),
# TestFile("rl/test_update_weights_from_disk.py", 210), # Temporarily disabled, see https://github.com/sgl-project/sglang/pull/13998
TestFile("rl/test_update_weights_from_tensor.py", 195),
TestFile("dllm/test_llada2_mini.py", 520), TestFile("dllm/test_llada2_mini.py", 520),
TestFile("test_abort.py", 131), TestFile("test_abort.py", 131),
TestFile("test_chunked_prefill.py", 312), TestFile("test_chunked_prefill.py", 312),
@@ -84,12 +80,10 @@ suites = {
TestFile("hicache/test_hicache_storage_mooncake_backend.py", 300), TestFile("hicache/test_hicache_storage_mooncake_backend.py", 300),
TestFile("models/test_kimi_linear_models.py", 90), TestFile("models/test_kimi_linear_models.py", 90),
TestFile("models/test_nvidia_nemotron_nano_v2.py", 132), TestFile("models/test_nvidia_nemotron_nano_v2.py", 132),
TestFile("rl/test_update_weights_from_distributed.py", 103),
TestFile("test_data_parallelism.py", 73), TestFile("test_data_parallelism.py", 73),
TestFile("test_disaggregation_basic.py", 400), TestFile("test_disaggregation_basic.py", 400),
TestFile("test_dp_attention.py", 350), TestFile("test_dp_attention.py", 350),
TestFile("test_load_weights_from_remote_instance.py", 72), TestFile("test_load_weights_from_remote_instance.py", 72),
TestFile("test_patch_torch.py", 19),
], ],
"per-commit-4-gpu": [ "per-commit-4-gpu": [
TestFile("models/test_qwen3_next_models.py", 650), TestFile("models/test_qwen3_next_models.py", 650),
@@ -97,7 +91,6 @@ suites = {
TestFile("test_multi_instance_release_memory_occupation.py", 64), TestFile("test_multi_instance_release_memory_occupation.py", 64),
TestFile("test_pp_single_node.py", 500), TestFile("test_pp_single_node.py", 500),
TestFile("test_epd_disaggregation.py", 150), TestFile("test_epd_disaggregation.py", 150),
TestFile("rl/test_return_routed_experts.py", 300),
], ],
"per-commit-8-gpu-h200": [ "per-commit-8-gpu-h200": [
TestFile("test_deepseek_v3_basic.py", 275), TestFile("test_deepseek_v3_basic.py", 275),
@@ -146,9 +139,6 @@ suites = {
"__not_in_ci__": [ "__not_in_ci__": [
TestFile("test_release_memory_occupation.py", 200), # Temporarily disabled TestFile("test_release_memory_occupation.py", 200), # Temporarily disabled
TestFile("models/test_dummy_grok_models.py"), TestFile("models/test_dummy_grok_models.py"),
TestFile(
"rl/test_update_weights_from_disk.py"
), # Temporarily disabled, see https://github.com/sgl-project/sglang/pull/13998
TestFile("test_bench_one_batch.py"), TestFile("test_bench_one_batch.py"),
TestFile("test_bench_serving.py"), TestFile("test_bench_serving.py"),
TestFile("test_eval_accuracy_large.py"), TestFile("test_eval_accuracy_large.py"),
@@ -191,9 +181,6 @@ suite_amd = {
TestFile("openai_server/validation/test_openai_server_ignore_eos.py", 85), TestFile("openai_server/validation/test_openai_server_ignore_eos.py", 85),
TestFile("openai_server/validation/test_request_length_validation.py", 31), TestFile("openai_server/validation/test_request_length_validation.py", 31),
TestFile("ops/test_repeat_interleave.py", 75), TestFile("ops/test_repeat_interleave.py", 75),
# quant tests moved to test/registered/quant/
TestFile("rl/test_fp32_lm_head.py", 15),
# TestFile("rl/test_update_weights_from_disk.py", 210), # Temporarily disabled, see https://github.com/sgl-project/sglang/pull/13998
TestFile("rotary_embedding/test_mrope.py", 15), TestFile("rotary_embedding/test_mrope.py", 15),
TestFile("test_abort.py", 51), TestFile("test_abort.py", 51),
TestFile("test_bench_typebaseddispatcher.py", 10), TestFile("test_bench_typebaseddispatcher.py", 10),
@@ -242,11 +229,8 @@ suite_amd = {
TestFile("test_gpt_oss_1gpu.py", 750), TestFile("test_gpt_oss_1gpu.py", 750),
], ],
"per-commit-2-gpu-amd": [ "per-commit-2-gpu-amd": [
# TestFile("lora/test_lora_tp.py", 116), # Disabled temporarily, see https://github.com/sgl-project/sglang/issues/13107. Moved to test/registered/lora/
TestFile("rl/test_update_weights_from_distributed.py", 103),
TestFile("test_data_parallelism.py", 73), TestFile("test_data_parallelism.py", 73),
TestFile("test_load_weights_from_remote_instance.py", 72), TestFile("test_load_weights_from_remote_instance.py", 72),
# TestFile("test_patch_torch.py", 19), # Disabled temporarily, see https://github.com/sgl-project/sglang/issues/11127
], ],
"per-commit-4-gpu-amd": [ "per-commit-4-gpu-amd": [
TestFile("test_pp_single_node.py", 150), TestFile("test_pp_single_node.py", 150),