diff --git a/.github/workflows/pr-test.yml b/.github/workflows/pr-test.yml index f4e195a74..f983fff4a 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/pr-test.yml @@ -595,110 +595,13 @@ jobs: ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) ) ) - runs-on: 1-gpu-runner - env: - RUNNER_LABELS: 1-gpu-runner - strategy: - fail-fast: false - max-parallel: ${{ fromJson(needs.check-changes.outputs.max_parallel) }} - matrix: - partition: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] - steps: - - name: Checkout code - uses: actions/checkout@v4 - with: - ref: ${{ inputs.pr_head_sha || inputs.ref || github.sha }} - - - name: Download artifacts - if: needs.check-changes.outputs.sgl_kernel == 'true' - uses: actions/download-artifact@v4 - with: - path: sgl-kernel/dist/ - merge-multiple: true - pattern: wheel-python3.10-cuda12.9 - - - name: Install dependencies - timeout-minutes: 10 - run: | - CUSTOM_BUILD_SGL_KERNEL=${{needs.check-changes.outputs.sgl_kernel}} bash scripts/ci/ci_install_dependency.sh - - - name: Run test - timeout-minutes: 30 - run: | - cd test/ - CONTINUE_ON_ERROR_FLAG="" - if [[ "${{ needs.check-changes.outputs.continue_on_error }}" == "true" ]]; then - CONTINUE_ON_ERROR_FLAG="--continue-on-error" - fi - python3 run_suite.py --hw cuda --suite stage-b-test-small-1-gpu --auto-partition-id ${{ matrix.partition }} --auto-partition-size 14 $CONTINUE_ON_ERROR_FLAG - - stage-b-test-large-1-gpu: - needs: [check-changes, call-gate, stage-a-test-1, sgl-kernel-build-wheels] - if: | - always() && - ( - (inputs.target_stage == 'stage-b-test-large-1-gpu') || - ( - !inputs.target_stage && - (github.event_name == 'schedule' || (!failure() && !cancelled())) && - ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) - ) - ) - runs-on: 1-gpu-runner - env: - RUNNER_LABELS: 1-gpu-runner - steps: - - name: Checkout code - uses: actions/checkout@v4 - with: - ref: ${{ inputs.pr_head_sha || inputs.ref || github.sha }} - - - name: Download artifacts - if: needs.check-changes.outputs.sgl_kernel == 'true' - uses: actions/download-artifact@v4 - with: - path: sgl-kernel/dist/ - merge-multiple: true - pattern: wheel-python3.10-cuda12.9 - - - name: Install dependencies - timeout-minutes: 10 - run: | - CUSTOM_BUILD_SGL_KERNEL=${{needs.check-changes.outputs.sgl_kernel}} bash scripts/ci/ci_install_dependency.sh - - - name: Run test - timeout-minutes: 30 - run: | - cd test/ - CONTINUE_ON_ERROR_FLAG="" - if [[ "${{ needs.check-changes.outputs.continue_on_error }}" == "true" ]]; then - CONTINUE_ON_ERROR_FLAG="--continue-on-error" - fi - python3 run_suite.py --hw cuda --suite stage-b-test-large-1-gpu $CONTINUE_ON_ERROR_FLAG - - # 5090 dry run stage - only runs on scheduled CI or when explicitly targeted via /rerun-stage - # Used to validate 5090 compatibility before full integration - stage-b-test-small-1-gpu-5090: - needs: [check-changes, call-gate, stage-a-test-1, sgl-kernel-build-wheels] - if: | - always() && - ( - (inputs.target_stage == 'stage-b-test-small-1-gpu-5090') || - ( - !inputs.target_stage && - github.event_name == 'schedule' && - (!failure() && !cancelled()) && - ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) - ) - ) runs-on: 1-gpu-5090 - continue-on-error: true env: RUNNER_LABELS: 1-gpu-5090 IS_BLACKWELL: "1" strategy: fail-fast: false - max-parallel: 8 + max-parallel: 4 matrix: partition: [0, 1, 2, 3, 4, 5, 6, 7] steps: @@ -726,7 +629,61 @@ jobs: run: | source /etc/profile.d/sglang-ci.sh cd test/ - python3 run_suite.py --hw cuda --suite stage-b-test-small-1-gpu-5090 --auto-partition-id ${{ matrix.partition }} --auto-partition-size 8 --continue-on-error + CONTINUE_ON_ERROR_FLAG="" + if [[ "${{ needs.check-changes.outputs.continue_on_error }}" == "true" ]]; then + CONTINUE_ON_ERROR_FLAG="--continue-on-error" + fi + python3 run_suite.py --hw cuda --suite stage-b-test-small-1-gpu --auto-partition-id ${{ matrix.partition }} --auto-partition-size 8 $CONTINUE_ON_ERROR_FLAG + + # Runs on H200 (80GB, SM90) - tests that don't pass on 5090 (FA3, FP8, high VRAM, etc.) + stage-b-test-large-1-gpu: + needs: [check-changes, call-gate, stage-a-test-1, sgl-kernel-build-wheels] + if: | + always() && + ( + (inputs.target_stage == 'stage-b-test-large-1-gpu') || + ( + !inputs.target_stage && + (github.event_name == 'schedule' || (!failure() && !cancelled())) && + ((needs.check-changes.outputs.main_package == 'true') || (needs.check-changes.outputs.sgl_kernel == 'true')) + ) + ) + runs-on: 1-gpu-runner + env: + RUNNER_LABELS: 1-gpu-runner + strategy: + fail-fast: false + max-parallel: ${{ fromJson(needs.check-changes.outputs.max_parallel) }} + matrix: + partition: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + ref: ${{ inputs.pr_head_sha || inputs.ref || github.sha }} + + - name: Download artifacts + if: needs.check-changes.outputs.sgl_kernel == 'true' + uses: actions/download-artifact@v4 + with: + path: sgl-kernel/dist/ + merge-multiple: true + pattern: wheel-python3.10-cuda12.9 + + - name: Install dependencies + timeout-minutes: 10 + run: | + CUSTOM_BUILD_SGL_KERNEL=${{needs.check-changes.outputs.sgl_kernel}} bash scripts/ci/ci_install_dependency.sh + + - name: Run test + timeout-minutes: 30 + run: | + cd test/ + CONTINUE_ON_ERROR_FLAG="" + if [[ "${{ needs.check-changes.outputs.continue_on_error }}" == "true" ]]; then + CONTINUE_ON_ERROR_FLAG="--continue-on-error" + fi + python3 run_suite.py --hw cuda --suite stage-b-test-large-1-gpu --auto-partition-id ${{ matrix.partition }} --auto-partition-size 10 $CONTINUE_ON_ERROR_FLAG stage-b-test-large-2-gpu: needs: [check-changes, call-gate, stage-a-test-1, sgl-kernel-build-wheels] diff --git a/scripts/ci/slash_command_handler.py b/scripts/ci/slash_command_handler.py index 453e1588b..18b6e04f5 100644 --- a/scripts/ci/slash_command_handler.py +++ b/scripts/ci/slash_command_handler.py @@ -227,7 +227,6 @@ def handle_rerun_stage( "stage-a-cpu-only", "stage-b-test-small-1-gpu", "stage-b-test-large-1-gpu", - "stage-b-test-small-1-gpu-5090", "stage-b-test-large-2-gpu", "stage-c-test-large-4-gpu", "stage-c-test-large-4-gpu-b200", diff --git a/test/registered/attention/test_create_kvindices.py b/test/registered/attention/test_create_kvindices.py index 0928dbfbc..881e68d6e 100644 --- a/test/registered/attention/test_create_kvindices.py +++ b/test/registered/attention/test_create_kvindices.py @@ -9,7 +9,6 @@ from sglang.test.test_utils import CustomTestCase # Triton kernel unit test for KV indices creation register_cuda_ci(est_time=10, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=10, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/attention/test_mamba_unittest.py b/test/registered/attention/test_mamba_unittest.py index 2ff89c346..76c9c7918 100644 --- a/test/registered/attention/test_mamba_unittest.py +++ b/test/registered/attention/test_mamba_unittest.py @@ -16,7 +16,6 @@ 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=9, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu-5090") class TestMamba(unittest.TestCase): diff --git a/test/registered/attention/test_radix_attention.py b/test/registered/attention/test_radix_attention.py index a9871adba..5931a0921 100644 --- a/test/registered/attention/test_radix_attention.py +++ b/test/registered/attention/test_radix_attention.py @@ -15,7 +15,6 @@ from sglang.test.test_utils import ( # RadixAttention server integration tests register_cuda_ci(est_time=100, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=79, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=100, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/attention/test_radix_cache_unit.py b/test/registered/attention/test_radix_cache_unit.py index ff9af95d6..9408fd513 100644 --- a/test/registered/attention/test_radix_cache_unit.py +++ b/test/registered/attention/test_radix_cache_unit.py @@ -22,7 +22,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci # CPU-based unit test, runs quickly on any GPU runner register_cuda_ci(est_time=5, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=5, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu-5090") import time import unittest diff --git a/test/registered/attention/test_swa_unittest.py b/test/registered/attention/test_swa_unittest.py index 1a808417c..49891dbd5 100644 --- a/test/registered/attention/test_swa_unittest.py +++ b/test/registered/attention/test_swa_unittest.py @@ -9,7 +9,7 @@ from sglang.srt.mem_cache.swa_memory_pool import SWAKVPool, SWATokenToKVPoolAllo from sglang.srt.mem_cache.swa_radix_cache import SWARadixCache from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci -register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=8, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=10, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/attention/test_torch_native_attention_backend.py b/test/registered/attention/test_torch_native_attention_backend.py index 5abbef881..2e6bc256d 100644 --- a/test/registered/attention/test_torch_native_attention_backend.py +++ b/test/registered/attention/test_torch_native_attention_backend.py @@ -19,7 +19,6 @@ from sglang.test.test_utils import ( # Torch native attention backend integration test with MMLU eval register_cuda_ci(est_time=169, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=120, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=150, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/attention/test_triton_attention_backend.py b/test/registered/attention/test_triton_attention_backend.py index 8f4c748d6..dd5bd5b48 100644 --- a/test/registered/attention/test_triton_attention_backend.py +++ b/test/registered/attention/test_triton_attention_backend.py @@ -20,7 +20,7 @@ from sglang.test.test_utils import ( ) # Triton attention backend integration test with latency benchmark and MMLU eval -register_cuda_ci(est_time=200, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=200, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=1110, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/attention/test_triton_attention_kernels.py b/test/registered/attention/test_triton_attention_kernels.py index 9b73e84ce..80fc86d2e 100644 --- a/test/registered/attention/test_triton_attention_kernels.py +++ b/test/registered/attention/test_triton_attention_kernels.py @@ -23,7 +23,7 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase, is_in_amd_ci # Triton attention kernel unit tests (decode, extend, prefill) -register_cuda_ci(est_time=30, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=30, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=30, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/attention/test_triton_sliding_window.py b/test/registered/attention/test_triton_sliding_window.py index 73e8dadfe..628ef93b6 100644 --- a/test/registered/attention/test_triton_sliding_window.py +++ b/test/registered/attention/test_triton_sliding_window.py @@ -15,7 +15,7 @@ from sglang.test.test_utils import ( ) # Sliding window attention with Triton backend (Gemma-3 model) -register_cuda_ci(est_time=100, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=100, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=100, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/backends/test_torch_compile.py b/test/registered/backends/test_torch_compile.py index cd92f92b2..3e4454313 100644 --- a/test/registered/backends/test_torch_compile.py +++ b/test/registered/backends/test_torch_compile.py @@ -16,7 +16,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=144, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=144, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=1100, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/constrained_decoding/test_constrained_decoding.py b/test/registered/constrained_decoding/test_constrained_decoding.py index 899080aae..cf74f2d2d 100644 --- a/test/registered/constrained_decoding/test_constrained_decoding.py +++ b/test/registered/constrained_decoding/test_constrained_decoding.py @@ -1,12 +1,7 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -register_cuda_ci(est_time=111, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=76, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=179, suite="stage-b-test-small-1-gpu-amd") - import unittest from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.kits.ebnf_constrained_kit import TestEBNFConstrainedMixin from sglang.test.kits.json_constrained_kit import TestJSONConstrainedMixin from sglang.test.kits.regex_constrained_kit import TestRegexConstrainedMixin @@ -18,6 +13,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=111, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=179, suite="stage-b-test-small-1-gpu-amd") + class ServerWithGrammar(CustomTestCase): backend = "xgrammar" diff --git a/test/registered/core/test_deterministic.py b/test/registered/core/test_deterministic.py index 02fed7296..e087c990a 100644 --- a/test/registered/core/test_deterministic.py +++ b/test/registered/core/test_deterministic.py @@ -15,7 +15,7 @@ from sglang.test.test_deterministic_utils import ( TestDeterministicBase, ) -register_cuda_ci(est_time=278, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=278, suite="stage-b-test-large-1-gpu") class TestFlashinferDeterministic(TestDeterministicBase): diff --git a/test/registered/core/test_gpt_oss_1gpu.py b/test/registered/core/test_gpt_oss_1gpu.py index 47c698013..05b708541 100644 --- a/test/registered/core/test_gpt_oss_1gpu.py +++ b/test/registered/core/test_gpt_oss_1gpu.py @@ -3,7 +3,7 @@ import unittest from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.gpt_oss_common import BaseTestGptOss -register_cuda_ci(est_time=519, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=519, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=750, suite="stage-b-test-small-1-gpu-amd-mi35x") diff --git a/test/registered/core/test_hidden_states.py b/test/registered/core/test_hidden_states.py index 873d409e9..5ddbf17c8 100644 --- a/test/registered/core/test_hidden_states.py +++ b/test/registered/core/test_hidden_states.py @@ -10,7 +10,6 @@ from sglang.test.test_utils import DEFAULT_SMALL_MODEL_NAME_FOR_TEST, CustomTest register_cuda_ci(est_time=55, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=55, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=31, suite="stage-b-test-small-1-gpu-5090") _is_hip = is_hip() if _is_hip: diff --git a/test/registered/core/test_input_embeddings.py b/test/registered/core/test_input_embeddings.py index 0ad440f07..bf80328f8 100644 --- a/test/registered/core/test_input_embeddings.py +++ b/test/registered/core/test_input_embeddings.py @@ -17,7 +17,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=38, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=40, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=38, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/core/test_io_struct.py b/test/registered/core/test_io_struct.py index ac7b8c990..037a93e57 100644 --- a/test/registered/core/test_io_struct.py +++ b/test/registered/core/test_io_struct.py @@ -9,7 +9,7 @@ from sglang.test.test_utils import ( CustomTestCase, ) -register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=8, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=8, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/core/test_model_hooks.py b/test/registered/core/test_model_hooks.py index 5caaeceb6..ae14a2abd 100644 --- a/test/registered/core/test_model_hooks.py +++ b/test/registered/core/test_model_hooks.py @@ -10,7 +10,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase register_cuda_ci(est_time=6, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=5, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=10, suite="stage-b-test-small-1-gpu-amd") HOOK_CALLS = [] diff --git a/test/registered/core/test_page_size.py b/test/registered/core/test_page_size.py index 2b5c8c69e..b28bd3c7d 100644 --- a/test/registered/core/test_page_size.py +++ b/test/registered/core/test_page_size.py @@ -14,7 +14,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=60, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=62, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=60, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/core/test_request_queue_validation.py b/test/registered/core/test_request_queue_validation.py index 21a1b5d3a..c76e006ca 100644 --- a/test/registered/core/test_request_queue_validation.py +++ b/test/registered/core/test_request_queue_validation.py @@ -18,7 +18,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=47, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=49, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=70, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/core/test_score_api.py b/test/registered/core/test_score_api.py index 6bf3c034c..465d9d233 100644 --- a/test/registered/core/test_score_api.py +++ b/test/registered/core/test_score_api.py @@ -7,7 +7,7 @@ from sglang.srt.entrypoints.engine import Engine from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.test_utils import DEFAULT_SMALL_MODEL_NAME_FOR_TEST, CustomTestCase -register_cuda_ci(est_time=260, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=260, suite="stage-b-test-large-1-gpu") TEST_MODEL_NAME = DEFAULT_SMALL_MODEL_NAME_FOR_TEST diff --git a/test/registered/core/test_server_args.py b/test/registered/core/test_server_args.py index 2df9f730a..91e90a3e4 100644 --- a/test/registered/core/test_server_args.py +++ b/test/registered/core/test_server_args.py @@ -7,7 +7,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase register_cuda_ci(est_time=9, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=1, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/core/test_srt_endpoint.py b/test/registered/core/test_srt_endpoint.py index 4b9ee0800..92aeff84c 100644 --- a/test/registered/core/test_srt_endpoint.py +++ b/test/registered/core/test_srt_endpoint.py @@ -28,7 +28,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=127, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=122, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=130, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/core/test_srt_engine.py b/test/registered/core/test_srt_engine.py index e4227669a..eb988a7ea 100644 --- a/test/registered/core/test_srt_engine.py +++ b/test/registered/core/test_srt_engine.py @@ -22,7 +22,7 @@ from sglang.test.test_utils import ( CustomTestCase, ) -register_cuda_ci(est_time=252, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=252, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=261, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/cuda_graph/test_piecewise_cuda_graph_small_1_gpu.py b/test/registered/cuda_graph/test_piecewise_cuda_graph_small_1_gpu.py index a6f5047ba..1789b1080 100644 --- a/test/registered/cuda_graph/test_piecewise_cuda_graph_small_1_gpu.py +++ b/test/registered/cuda_graph/test_piecewise_cuda_graph_small_1_gpu.py @@ -21,7 +21,7 @@ from sglang.test.test_utils import ( ) # CI Registration - Small 1-GPU tests (24GB GPU sufficient) -register_cuda_ci(est_time=539, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=539, suite="stage-b-test-large-1-gpu") class TestPiecewiseCudaGraphCorrectness(CustomTestCase): diff --git a/test/registered/debug_utils/test_tensor_dump_forward_hook.py b/test/registered/debug_utils/test_tensor_dump_forward_hook.py index c66f0a6fe..8ed8de03b 100644 --- a/test/registered/debug_utils/test_tensor_dump_forward_hook.py +++ b/test/registered/debug_utils/test_tensor_dump_forward_hook.py @@ -1,9 +1,3 @@ -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_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=15, suite="stage-b-test-small-1-gpu-amd") - import unittest import torch @@ -21,6 +15,18 @@ from sglang.srt.layers.linear import LinearBase from sglang.srt.models.qwen2 import Qwen2MLP from sglang.srt.server_args import ServerArgs, set_global_server_args_for_scheduler from sglang.srt.utils import add_prefix +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", + disabled="Test uses pytest-style function without TestCase class - see #17145", +) +register_amd_ci( + est_time=15, + suite="stage-b-test-small-1-gpu-amd", + disabled="Test uses pytest-style function without TestCase class - see #17145", +) TEST_HIDDEN_SIZE = 32 diff --git a/test/registered/dllm/test_llada2_mini.py b/test/registered/dllm/test_llada2_mini.py index d497c9d3a..2696b88f3 100644 --- a/test/registered/dllm/test_llada2_mini.py +++ b/test/registered/dllm/test_llada2_mini.py @@ -1,6 +1,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci -register_cuda_ci(est_time=181, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=181, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=330, suite="stage-b-test-small-1-gpu-amd") import unittest diff --git a/test/registered/dllm/test_llada2_mini_amd.py b/test/registered/dllm/test_llada2_mini_amd.py index 8a4858711..88309a48e 100644 --- a/test/registered/dllm/test_llada2_mini_amd.py +++ b/test/registered/dllm/test_llada2_mini_amd.py @@ -1,7 +1,3 @@ -from sglang.test.ci.ci_register import register_amd_ci - -register_amd_ci(est_time=520, suite="stage-b-test-small-1-gpu-amd") - """ Test LLaDA2 (Diffusion Language Model) on AMD GPUs. @@ -12,6 +8,7 @@ import unittest from types import SimpleNamespace from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci from sglang.test.few_shot_gsm8k import run_eval as run_eval_few_shot_gsm8k from sglang.test.send_one import BenchArgs, send_one_prompt from sglang.test.test_utils import ( @@ -23,6 +20,8 @@ from sglang.test.test_utils import ( write_github_step_summary, ) +register_amd_ci(est_time=520, suite="stage-b-test-small-1-gpu-amd") + class TestLLaDA2MiniAMD(CustomTestCase): @classmethod diff --git a/test/registered/hicache/test_hicache_storage.py b/test/registered/hicache/test_hicache_storage.py index c4b829e19..77a6ed326 100644 --- a/test/registered/hicache/test_hicache_storage.py +++ b/test/registered/hicache/test_hicache_storage.py @@ -2,7 +2,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=96, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=300, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=96, suite="stage-b-test-small-1-gpu-5090") import time import unittest diff --git a/test/registered/hicache/test_hicache_variants.py b/test/registered/hicache/test_hicache_variants.py index 5a7207b8a..57e6edbbd 100644 --- a/test/registered/hicache/test_hicache_variants.py +++ b/test/registered/hicache/test_hicache_variants.py @@ -1,6 +1,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci -register_cuda_ci(est_time=524, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=524, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=524, suite="stage-b-test-small-1-gpu-amd") """ Consolidated HiCache variant tests. diff --git a/test/registered/kernels/test_fp4_moe.py b/test/registered/kernels/test_fp4_moe.py index 74233d0c0..a72e1e4b8 100644 --- a/test/registered/kernels/test_fp4_moe.py +++ b/test/registered/kernels/test_fp4_moe.py @@ -4,10 +4,6 @@ from typing import Callable import pytest import torch from flashinfer import fp4_quantize, scaled_fp4_grouped_quantize - -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=300, suite="nightly-4-gpu-b200", nightly=True) from flashinfer.fused_moe import cutlass_fused_moe as flashinfer_cutlass_fused_moe from sgl_kernel import scaled_fp4_quant, silu_and_mul from torch.nn import functional as F @@ -15,6 +11,9 @@ from torch.nn import functional as F from sglang.srt.layers.moe.cutlass_moe import cutlass_moe_fp4 from sglang.srt.layers.moe.cutlass_moe_params import CutlassMoEParams, CutlassMoEType from sglang.srt.layers.moe.topk import TopKConfig, select_experts +from sglang.test.ci.ci_register import register_cuda_ci + +register_cuda_ci(est_time=300, suite="nightly-4-gpu-b200", nightly=True) if torch.cuda.get_device_capability() < (10, 0): pytest.skip( diff --git a/test/registered/kernels/test_nsa_indexer.py b/test/registered/kernels/test_nsa_indexer.py index 426f398b4..87d11439b 100644 --- a/test/registered/kernels/test_nsa_indexer.py +++ b/test/registered/kernels/test_nsa_indexer.py @@ -4,11 +4,8 @@ from unittest.mock import MagicMock, patch import torch -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=2, suite="nightly-1-gpu", nightly=True) - from sglang.srt.layers import dp_attention as _dp_attn +from sglang.test.ci.ci_register import register_cuda_ci # Patch DP-attention globals before importing backends _dp_attn.get_attention_tp_size = lambda: 1 # TP size = 1 for unit test @@ -27,6 +24,8 @@ from sglang.srt.model_executor.forward_batch_info import ForwardBatch, ForwardMo from sglang.srt.server_args import ServerArgs, set_global_server_args_for_scheduler from sglang.test.test_utils import CustomTestCase +register_cuda_ci(est_time=2, suite="nightly-1-gpu", nightly=True) + # Global configuration for all indexer tests DEFAULT_CONFIG = { "device": "cuda", diff --git a/test/registered/layers/mamba/test_causal_conv1d.py b/test/registered/layers/mamba/test_causal_conv1d.py index 98ba6e513..953ba4488 100644 --- a/test/registered/layers/mamba/test_causal_conv1d.py +++ b/test/registered/layers/mamba/test_causal_conv1d.py @@ -2,7 +2,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=25, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=25, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=3, suite="stage-b-test-small-1-gpu-5090") # Adapted from https://github.com/vllm-project/vllm/blob/main/tests/kernels/mamba/test_causal_conv1d.py diff --git a/test/registered/layers/mamba/test_mamba2_mixer.py b/test/registered/layers/mamba/test_mamba2_mixer.py index 7c06bc9a8..1bac53aca 100644 --- a/test/registered/layers/mamba/test_mamba2_mixer.py +++ b/test/registered/layers/mamba/test_mamba2_mixer.py @@ -1,7 +1,3 @@ -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=50, suite="stage-b-test-large-2-gpu") - # Adapted from https://github.com/vllm-project/vllm/blob/2c58742dff8613a3bd7496f2008ce927e18d38d1/tests/kernels/mamba/test_mamba_mixer2.py @@ -17,6 +13,9 @@ from sglang.srt.distributed.parallel_state import ( init_distributed_environment, initialize_model_parallel, ) +from sglang.test.ci.ci_register import register_cuda_ci + +register_cuda_ci(est_time=50, suite="stage-b-test-large-2-gpu") NUM_GPUS = 2 diff --git a/test/registered/layers/mamba/test_mamba_ssm.py b/test/registered/layers/mamba/test_mamba_ssm.py index 488827e28..e2532e9c6 100644 --- a/test/registered/layers/mamba/test_mamba_ssm.py +++ b/test/registered/layers/mamba/test_mamba_ssm.py @@ -2,7 +2,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=20, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=5, suite="stage-b-test-small-1-gpu-5090") # Adapted from https://github.com/vllm-project/vllm/blob/633f943e30a4444d890d26b81850f7217736f840/tests/kernels/mamba/test_mamba_ssm_ssd.py diff --git a/test/registered/layers/mamba/test_mamba_ssm_ssd.py b/test/registered/layers/mamba/test_mamba_ssm_ssd.py index 6cd7e0c3b..43a4f1f47 100644 --- a/test/registered/layers/mamba/test_mamba_ssm_ssd.py +++ b/test/registered/layers/mamba/test_mamba_ssm_ssd.py @@ -2,7 +2,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=13, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=30, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu-5090") # Adapted from https://github.com/vllm-project/vllm/blob/633f943e30a4444d890d26b81850f7217736f840/tests/kernels/mamba/test_mamba_ssm_ssd.py diff --git a/test/registered/lora/test_lora_backend.py b/test/registered/lora/test_lora_backend.py index e4447905d..0cc2aca9b 100644 --- a/test/registered/lora/test_lora_backend.py +++ b/test/registered/lora/test_lora_backend.py @@ -30,7 +30,6 @@ from sglang.test.lora_utils import ( from sglang.test.test_utils import CustomTestCase, is_in_ci register_cuda_ci(est_time=200, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=137, suite="stage-b-test-small-1-gpu-5090") register_amd_ci( est_time=200, suite="stage-b-test-small-1-gpu-amd", diff --git a/test/registered/lora/test_lora_eviction.py b/test/registered/lora/test_lora_eviction.py index 4b8505437..4404d11ec 100644 --- a/test/registered/lora/test_lora_eviction.py +++ b/test/registered/lora/test_lora_eviction.py @@ -24,7 +24,6 @@ from sglang.test.runners import SRTRunner from sglang.test.test_utils import CustomTestCase register_cuda_ci(est_time=224, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=215, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=224, suite="stage-b-test-small-1-gpu-amd") PROMPTS = [ diff --git a/test/registered/lora/test_lora_hf_sgl_logprob_diff.py b/test/registered/lora/test_lora_hf_sgl_logprob_diff.py index 212dadd2c..ccf970752 100644 --- a/test/registered/lora/test_lora_hf_sgl_logprob_diff.py +++ b/test/registered/lora/test_lora_hf_sgl_logprob_diff.py @@ -36,6 +36,7 @@ import torch from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.runners import HFRunner, SRTRunner +from sglang.test.test_utils import DEFAULT_PORT_FOR_SRT_TEST_RUNNER, CustomTestCase register_cuda_ci( est_time=150, @@ -45,13 +46,6 @@ register_amd_ci( est_time=250, suite="stage-b-test-small-1-gpu-amd", ) -register_cuda_ci( - est_time=76, - suite="stage-b-test-small-1-gpu-5090", -) - -from sglang.test.test_utils import DEFAULT_PORT_FOR_SRT_TEST_RUNNER, CustomTestCase - # Test configuration constants LORA_BACKEND = "triton" DISABLE_CUDA_GRAPH = False diff --git a/test/registered/lora/test_lora_openai_compatible.py b/test/registered/lora/test_lora_openai_compatible.py index b56133386..92188426a 100644 --- a/test/registered/lora/test_lora_openai_compatible.py +++ b/test/registered/lora/test_lora_openai_compatible.py @@ -17,12 +17,8 @@ import unittest import openai -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -register_cuda_ci(est_time=150, suite="nightly-1-gpu", nightly=True) -register_amd_ci(est_time=150, suite="nightly-amd-1-gpu", nightly=True) - from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import ( DEFAULT_SMALL_MODEL_NAME_FOR_TEST, DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH, @@ -31,6 +27,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=150, suite="nightly-1-gpu", nightly=True) +register_amd_ci(est_time=150, suite="nightly-amd-1-gpu", nightly=True) + def get_real_lora_adapter() -> str: """Use a real LoRA adapter from Hugging Face.""" diff --git a/test/registered/lora/test_lora_qwen3.py b/test/registered/lora/test_lora_qwen3.py index 98a82ce74..199075f52 100644 --- a/test/registered/lora/test_lora_qwen3.py +++ b/test/registered/lora/test_lora_qwen3.py @@ -20,15 +20,14 @@ from sglang.test.lora_utils import ( LORA_MODELS_QWEN3, run_lora_multiple_batch_on_model_cases, ) +from sglang.test.test_utils import CustomTestCase -register_cuda_ci(est_time=97, suite="nightly-1-gpu", nightly=True) register_amd_ci( est_time=30, suite="stage-b-test-small-1-gpu-amd", disabled="see https://github.com/sgl-project/sglang/issues/13107", ) - -from sglang.test.test_utils import CustomTestCase +register_cuda_ci(est_time=97, suite="nightly-1-gpu", nightly=True) class TestLoRAQwen3(CustomTestCase): diff --git a/test/registered/lora/test_lora_update.py b/test/registered/lora/test_lora_update.py index 48d4ef78a..d1a7aad6e 100644 --- a/test/registered/lora/test_lora_update.py +++ b/test/registered/lora/test_lora_update.py @@ -34,7 +34,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=487, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=487, suite="stage-b-test-large-1-gpu") PROMPTS = [ "SGL is a", diff --git a/test/registered/lora/test_multi_lora_backend.py b/test/registered/lora/test_multi_lora_backend.py index 62c7e2c64..f34b9e622 100644 --- a/test/registered/lora/test_multi_lora_backend.py +++ b/test/registered/lora/test_multi_lora_backend.py @@ -25,7 +25,7 @@ from sglang.test.lora_utils import ( ) from sglang.test.test_utils import CustomTestCase, is_in_ci -register_cuda_ci(est_time=100, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=100, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=100, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/metrics/test_metrics.py b/test/registered/metrics/test_metrics.py index d1d47bee7..f2a0c0890 100644 --- a/test/registered/metrics/test_metrics.py +++ b/test/registered/metrics/test_metrics.py @@ -2,12 +2,6 @@ import unittest from typing import Dict, List import requests - -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -register_cuda_ci(est_time=32, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=29, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=32, suite="stage-b-test-small-1-gpu-amd") from prometheus_client.parser import text_string_to_metric_families from prometheus_client.samples import Sample @@ -17,6 +11,7 @@ from sglang.srt.metrics.collector import ( compute_routing_key_stats, ) from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import ( DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH, DEFAULT_URL_FOR_TEST, @@ -25,6 +20,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=32, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=32, suite="stage-b-test-small-1-gpu-amd") + _MODEL_NAME = "Qwen/Qwen3-0.6B" diff --git a/test/registered/mla/test_flashmla.py b/test/registered/mla/test_flashmla.py index c14f1a5e5..4b3ab577f 100644 --- a/test/registered/mla/test_flashmla.py +++ b/test/registered/mla/test_flashmla.py @@ -21,7 +21,7 @@ from sglang.test.test_utils import ( ) # FlashMLA attention backend tests with MTP speculative decoding -register_cuda_ci(est_time=284, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=284, suite="stage-b-test-large-1-gpu") class TestFlashMLAAttnBackend(unittest.TestCase): diff --git a/test/registered/mla/test_mla.py b/test/registered/mla/test_mla.py index 7b380542c..3cc401d66 100644 --- a/test/registered/mla/test_mla.py +++ b/test/registered/mla/test_mla.py @@ -13,7 +13,7 @@ from sglang.test.test_utils import ( ) # MLA attention test with MGSM evaluation -register_cuda_ci(est_time=194, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=194, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=1100, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/mla/test_mla_deepseek_v3.py b/test/registered/mla/test_mla_deepseek_v3.py index f3c46213d..b7518ede6 100644 --- a/test/registered/mla/test_mla_deepseek_v3.py +++ b/test/registered/mla/test_mla_deepseek_v3.py @@ -16,7 +16,7 @@ from sglang.test.test_utils import ( ) # DeepSeek-V3 MLA tests with torch compile, FA3, and MTP speculative decoding -register_cuda_ci(est_time=442, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=442, suite="stage-b-test-large-1-gpu") register_amd_ci( est_time=221, suite="stage-b-test-small-1-gpu-amd", diff --git a/test/registered/mla/test_mla_flashinfer.py b/test/registered/mla/test_mla_flashinfer.py index 28af6c995..f8f2e02cd 100644 --- a/test/registered/mla/test_mla_flashinfer.py +++ b/test/registered/mla/test_mla_flashinfer.py @@ -15,7 +15,7 @@ from sglang.test.test_utils import ( ) # FlashInfer MLA backend tests with MTP speculative decoding -register_cuda_ci(est_time=302, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=302, suite="stage-b-test-large-1-gpu") class TestFlashinferMLA(CustomTestCase): diff --git a/test/registered/mla/test_mla_fp8.py b/test/registered/mla/test_mla_fp8.py index 669bf9e56..d55d64ee8 100644 --- a/test/registered/mla/test_mla_fp8.py +++ b/test/registered/mla/test_mla_fp8.py @@ -13,7 +13,7 @@ from sglang.test.test_utils import ( ) # MLA FP8 KV cache test with MGSM evaluation -register_cuda_ci(est_time=77, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=77, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=360, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/mla/test_mla_int8_deepseek_v3.py b/test/registered/mla/test_mla_int8_deepseek_v3.py index afc7526d6..a2e14bc38 100644 --- a/test/registered/mla/test_mla_int8_deepseek_v3.py +++ b/test/registered/mla/test_mla_int8_deepseek_v3.py @@ -16,7 +16,7 @@ from sglang.test.test_utils import ( ) # DeepSeek-V3 INT8 quantization tests (channel and block INT8) -register_cuda_ci(est_time=341, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=341, suite="stage-b-test-large-1-gpu") class TestMLADeepseekV3ChannelInt8(CustomTestCase): diff --git a/test/registered/model_loading/test_external_models.py b/test/registered/model_loading/test_external_models.py index 42508bdc7..a191e8f62 100644 --- a/test/registered/model_loading/test_external_models.py +++ b/test/registered/model_loading/test_external_models.py @@ -6,7 +6,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase register_cuda_ci(est_time=30, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=26, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=45, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/model_loading/test_modelopt_export.py b/test/registered/model_loading/test_modelopt_export.py index 8282bb484..21173c113 100644 --- a/test/registered/model_loading/test_modelopt_export.py +++ b/test/registered/model_loading/test_modelopt_export.py @@ -19,7 +19,7 @@ from sglang.srt.configs.model_config import ModelConfig from sglang.srt.model_loader.loader import ModelOptModelLoader 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_cuda_ci(est_time=9, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=9, suite="stage-b-test-small-1-gpu-amd") # Note: PYTHONPATH=python should be set when running tests diff --git a/test/registered/model_loading/test_modelopt_loader.py b/test/registered/model_loading/test_modelopt_loader.py index af61eeceb..96aaffa95 100644 --- a/test/registered/model_loading/test_modelopt_loader.py +++ b/test/registered/model_loading/test_modelopt_loader.py @@ -26,7 +26,6 @@ CALIBRATION_NUM_SAMPLES = 512 DEFAULT_DEVICE = "cuda:0" register_cuda_ci(est_time=11, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu-5090") class TestModelOptModelLoader(CustomTestCase): diff --git a/test/registered/model_loading/test_utils_update_weights.py b/test/registered/model_loading/test_utils_update_weights.py index b670b2b46..fcc89ac77 100644 --- a/test/registered/model_loading/test_utils_update_weights.py +++ b/test/registered/model_loading/test_utils_update_weights.py @@ -12,7 +12,7 @@ from sglang.srt.weight_sync.utils import update_weights from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.test_utils import DEFAULT_SMALL_MODEL_NAME_FOR_TEST -register_cuda_ci(est_time=29, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=29, suite="stage-b-test-large-1-gpu") class AsyncEngine(Engine): diff --git a/test/registered/models/test_compressed_tensors_models.py b/test/registered/models/test_compressed_tensors_models.py index 0a9d82778..7752d0741 100644 --- a/test/registered/models/test_compressed_tensors_models.py +++ b/test/registered/models/test_compressed_tensors_models.py @@ -1,13 +1,10 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - # Model tests for compressed tensors (FP8) -register_cuda_ci(est_time=42, suite="stage-b-test-small-1-gpu") -register_amd_ci(est_time=42, suite="stage-b-test-small-1-gpu-amd") import unittest from types import SimpleNamespace from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.few_shot_gsm8k import run_eval from sglang.test.test_utils import ( DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH, @@ -16,6 +13,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=42, suite="stage-b-test-large-1-gpu") +register_amd_ci(est_time=42, suite="stage-b-test-small-1-gpu-amd") + class TestCompressedTensorsLlama3FP8(CustomTestCase): @classmethod diff --git a/test/registered/models/test_cross_encoder_models.py b/test/registered/models/test_cross_encoder_models.py index 5b8ac32ef..b1dbbefce 100644 --- a/test/registered/models/test_cross_encoder_models.py +++ b/test/registered/models/test_cross_encoder_models.py @@ -1,19 +1,19 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -# Cross encoder model tests -register_cuda_ci(est_time=100, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=105, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=150, suite="stage-b-test-small-1-gpu-amd") - import multiprocessing as mp import random import unittest import torch +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.runners import TEST_RERANK_QUERY_DOCS, HFRunner, SRTRunner from sglang.test.test_utils import CustomTestCase, is_in_ci +# Cross encoder model tests + + +register_cuda_ci(est_time=100, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=150, suite="stage-b-test-small-1-gpu-amd") + MODELS = [ ("cross-encoder/ms-marco-MiniLM-L6-v2", 1, 1e-2), ("BAAI/bge-reranker-v2-m3", 1, 1e-2), diff --git a/test/registered/models/test_embedding_models.py b/test/registered/models/test_embedding_models.py index 9541d2cc0..a496ab55d 100644 --- a/test/registered/models/test_embedding_models.py +++ b/test/registered/models/test_embedding_models.py @@ -1,14 +1,3 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -# Embedding model tests -register_cuda_ci(est_time=73, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=58, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci( - est_time=73, - suite="stage-b-test-small-1-gpu-amd", - disabled="see https://github.com/sgl-project/sglang/issues/11127", -) - # Copyright 2023-2024 SGLang Team # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -31,6 +20,7 @@ from typing import Optional import torch from transformers import AutoConfig, AutoTokenizer +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.runners import DEFAULT_PROMPTS, HFRunner, SRTRunner from sglang.test.test_utils import ( CustomTestCase, @@ -39,6 +29,14 @@ from sglang.test.test_utils import ( is_in_ci, ) +# Embedding model tests +register_amd_ci( + est_time=73, + suite="stage-b-test-small-1-gpu-amd", + disabled="see https://github.com/sgl-project/sglang/issues/11127", +) +register_cuda_ci(est_time=73, suite="stage-b-test-small-1-gpu") + MODEL_TO_CONFIG = { "Alibaba-NLP/gte-Qwen2-1.5B-instruct": (1, 1e-5), "intfloat/e5-mistral-7b-instruct": (1, 1e-5), diff --git a/test/registered/models/test_encoder_embedding_models.py b/test/registered/models/test_encoder_embedding_models.py index d922c47be..721ec7932 100644 --- a/test/registered/models/test_encoder_embedding_models.py +++ b/test/registered/models/test_encoder_embedding_models.py @@ -1,8 +1,16 @@ +import multiprocessing as mp +import random +import time +import unittest + +import torch +from transformers import AutoConfig, AutoTokenizer + from sglang.test.ci.ci_register import register_cuda_ci +from sglang.test.runners import DEFAULT_PROMPTS, HFRunner, SRTRunner +from sglang.test.test_utils import CustomTestCase, get_similarities, is_in_ci # Encoder embedding model tests (CUDA only) -register_cuda_ci(est_time=270, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=144, suite="stage-b-test-small-1-gpu-5090") # Copyright 2023-2024 SGLang Team # Licensed under the Apache License, Version 2.0 (the "License"); @@ -20,16 +28,8 @@ register_cuda_ci(est_time=144, suite="stage-b-test-small-1-gpu-5090") # python -m unittest test_encoder_embedding_models.TestEncoderEmbeddingModels.test_prefill_logits -import multiprocessing as mp -import random -import time -import unittest -import torch -from transformers import AutoConfig, AutoTokenizer - -from sglang.test.runners import DEFAULT_PROMPTS, HFRunner, SRTRunner -from sglang.test.test_utils import CustomTestCase, get_similarities, is_in_ci +register_cuda_ci(est_time=270, suite="stage-b-test-small-1-gpu") MODELS = [("BAAI/bge-small-en", 1, 1e-5), ("BAAI/bge-m3", 1, 1e-5)] diff --git a/test/registered/models/test_generation_models.py b/test/registered/models/test_generation_models.py index 689f76a0e..375543275 100644 --- a/test/registered/models/test_generation_models.py +++ b/test/registered/models/test_generation_models.py @@ -1,7 +1,7 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci # Generation model tests (CUDA only) -register_cuda_ci(est_time=103, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=103, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=106, suite="stage-b-test-small-1-gpu-amd") # Copyright 2023-2024 SGLang Team diff --git a/test/registered/models/test_nvidia_nemotron_nano_v2_vl.py b/test/registered/models/test_nvidia_nemotron_nano_v2_vl.py index cc20ff42a..6257b5fed 100644 --- a/test/registered/models/test_nvidia_nemotron_nano_v2_vl.py +++ b/test/registered/models/test_nvidia_nemotron_nano_v2_vl.py @@ -1,16 +1,17 @@ -from sglang.test.ci.ci_register import register_cuda_ci - -# NVIDIA Nemotron Nano V2 VL model tests (CUDA only) -# GSM8k + MMMU evaluation -register_cuda_ci(est_time=214, suite="stage-b-test-small-1-gpu") - import unittest +from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.kits.gsm8k_accuracy_kit import GSM8KMixin from sglang.test.kits.mmmu_vlm_kit import MMMUMixin from sglang.test.server_fixtures.default_fixture import DefaultServerBase from sglang.test.server_fixtures.mmmu_fixture import MMMUServerBase +# NVIDIA Nemotron Nano V2 VL model tests (CUDA only) +# GSM8k + MMMU evaluation + + +register_cuda_ci(est_time=214, suite="stage-b-test-large-1-gpu") + MODEL = "nvidia/NVIDIA-Nemotron-Nano-12B-v2-VL-BF16" diff --git a/test/registered/models/test_qwen_models.py b/test/registered/models/test_qwen_models.py index 1bcb4914d..e0dd5c503 100644 --- a/test/registered/models/test_qwen_models.py +++ b/test/registered/models/test_qwen_models.py @@ -1,14 +1,10 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - # Qwen model tests -register_cuda_ci(est_time=90, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=84, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=130, suite="stage-b-test-small-1-gpu-amd") import unittest from types import SimpleNamespace from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.few_shot_gsm8k import run_eval from sglang.test.test_utils import ( DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH, @@ -17,6 +13,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=90, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=130, suite="stage-b-test-small-1-gpu-amd") + class TestQwen2(CustomTestCase): @classmethod diff --git a/test/registered/models/test_reward_models.py b/test/registered/models/test_reward_models.py index 5c357b2ff..553530708 100644 --- a/test/registered/models/test_reward_models.py +++ b/test/registered/models/test_reward_models.py @@ -1,9 +1,13 @@ +import multiprocessing as mp +import unittest + +import torch + from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci +from sglang.test.runners import HFRunner, SRTRunner +from sglang.test.test_utils import CustomTestCase # Reward model tests -register_cuda_ci(est_time=103, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=69, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=132, suite="stage-b-test-small-1-gpu-amd") # Copyright 2023-2024 SGLang Team # Licensed under the Apache License, Version 2.0 (the "License"); @@ -19,13 +23,9 @@ register_amd_ci(est_time=132, suite="stage-b-test-small-1-gpu-amd") # limitations under the License. # ============================================================================== -import multiprocessing as mp -import unittest -import torch - -from sglang.test.runners import HFRunner, SRTRunner -from sglang.test.test_utils import CustomTestCase +register_cuda_ci(est_time=103, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=132, suite="stage-b-test-small-1-gpu-amd") MODELS = [ ("LxzGordon/URM-LLaMa-3.1-8B", 1, 4e-2), diff --git a/test/registered/models/test_transformers_models.py b/test/registered/models/test_transformers_models.py index 5358ebaf8..471445ade 100644 --- a/test/registered/models/test_transformers_models.py +++ b/test/registered/models/test_transformers_models.py @@ -1,9 +1,4 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - # Transformers fallback model tests -register_cuda_ci(est_time=245, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=210, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=320, suite="stage-b-test-small-1-gpu-amd") import dataclasses import multiprocessing as mp @@ -14,6 +9,7 @@ from typing import List import torch from sglang.srt.utils import is_hip, kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.runners import DEFAULT_PROMPTS, SRTRunner, check_close_model_outputs from sglang.test.test_utils import ( DEFAULT_MODEL_NAME_FOR_TEST, @@ -24,6 +20,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=245, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=320, suite="stage-b-test-small-1-gpu-amd") + class TestTransformersFallbackEndpoint(CustomTestCase): @classmethod diff --git a/test/registered/models/test_vlm_models.py b/test/registered/models/test_vlm_models.py index 07ca89eca..129ca2183 100644 --- a/test/registered/models/test_vlm_models.py +++ b/test/registered/models/test_vlm_models.py @@ -1,9 +1,3 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -# VLM (Vision Language Model) tests -register_cuda_ci(est_time=228, suite="stage-b-test-small-1-gpu") -register_amd_ci(est_time=420, suite="stage-b-test-small-1-gpu-amd") - import argparse import random import sys @@ -11,12 +5,19 @@ import unittest from types import SimpleNamespace from sglang.srt.utils import is_hip +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.kits.mmmu_vlm_kit import ( DEFAULT_MEM_FRACTION_STATIC, MMMUMultiModelTestBase, ) from sglang.test.test_utils import is_in_ci +# VLM (Vision Language Model) tests + + +register_cuda_ci(est_time=228, suite="stage-b-test-large-1-gpu") +register_amd_ci(est_time=420, suite="stage-b-test-small-1-gpu-amd") + _is_hip = is_hip() # VLM models for testing if _is_hip: diff --git a/test/registered/moe/test_cutedsl_moe.py b/test/registered/moe/test_cutedsl_moe.py index 87a133947..42c8013cd 100644 --- a/test/registered/moe/test_cutedsl_moe.py +++ b/test/registered/moe/test_cutedsl_moe.py @@ -1,8 +1,4 @@ # SPDX-License-Identifier: Apache-2.0 -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=300, suite="stage-c-test-large-4-gpu-b200") - import unittest from typing import Callable @@ -14,6 +10,9 @@ from torch.nn import functional as F from sglang.srt.layers.activation import SiluAndMul from sglang.srt.layers.moe.flashinfer_cutedsl_moe import flashinfer_cutedsl_moe_masked from sglang.srt.layers.moe.topk import TopKConfig, select_experts +from sglang.test.ci.ci_register import register_cuda_ci + +register_cuda_ci(est_time=300, suite="stage-c-test-large-4-gpu-b200") SKIP_TEST = torch.cuda.get_device_capability() < (10, 0) SKIP_REASON = "Nvfp4 Requires compute capability of 10 or above." diff --git a/test/registered/moe/test_fused_moe.py b/test/registered/moe/test_fused_moe.py index 91e61aaab..3921ce1a8 100644 --- a/test/registered/moe/test_fused_moe.py +++ b/test/registered/moe/test_fused_moe.py @@ -1,8 +1,3 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -register_cuda_ci(est_time=80, suite="stage-b-test-small-1-gpu") -register_amd_ci(est_time=30, suite="stage-b-test-small-1-gpu-amd") - import unittest import torch @@ -15,8 +10,12 @@ from sglang.srt.layers.quantization.fp8_kernel import is_fp8_fnuz from sglang.srt.layers.quantization.fp8_utils import normalize_e4m3fn_to_e4m3fnuz from sglang.srt.server_args import ServerArgs, set_global_server_args_for_scheduler from sglang.srt.utils import is_hip +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase +register_cuda_ci(est_time=80, suite="stage-b-test-large-1-gpu") +register_amd_ci(est_time=30, suite="stage-b-test-small-1-gpu-amd") + _is_hip = is_hip() _is_fp8_fnuz = is_fp8_fnuz() diff --git a/test/registered/moe/test_glm4_moe_models.py b/test/registered/moe/test_glm4_moe_models.py index 5ac178f7d..4d668f313 100644 --- a/test/registered/moe/test_glm4_moe_models.py +++ b/test/registered/moe/test_glm4_moe_models.py @@ -1,11 +1,8 @@ -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=100, suite="stage-b-test-large-2-gpu") - import unittest from types import SimpleNamespace from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.few_shot_gsm8k import run_eval from sglang.test.test_utils import ( DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH, @@ -14,6 +11,8 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=100, suite="stage-b-test-large-2-gpu") + class TestGLM4MoE(CustomTestCase): @classmethod diff --git a/test/registered/moe/test_moe_ep.py b/test/registered/moe/test_moe_ep.py index d2fe766b4..b11055c4b 100644 --- a/test/registered/moe/test_moe_ep.py +++ b/test/registered/moe/test_moe_ep.py @@ -1,11 +1,8 @@ -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=140, suite="stage-b-test-large-2-gpu") - import unittest from types import SimpleNamespace from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.run_eval import run_eval from sglang.test.test_utils import ( DEFAULT_MLA_MODEL_NAME_FOR_TEST, @@ -15,6 +12,8 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=140, suite="stage-b-test-large-2-gpu") + class TestEp(CustomTestCase): @classmethod diff --git a/test/registered/moe/test_torch_compile_moe.py b/test/registered/moe/test_torch_compile_moe.py index d7ba691a8..707967ff0 100644 --- a/test/registered/moe/test_torch_compile_moe.py +++ b/test/registered/moe/test_torch_compile_moe.py @@ -1,8 +1,3 @@ -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") -register_amd_ci(est_time=1400, suite="stage-b-test-small-1-gpu-amd") - import time import unittest from types import SimpleNamespace @@ -10,6 +5,7 @@ from types import SimpleNamespace import requests from sglang.srt.utils import is_cuda, kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.run_eval import run_eval from sglang.test.test_utils import ( DEFAULT_SMALL_MOE_MODEL_NAME_FOR_TEST_BASE, @@ -19,6 +15,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=210, suite="stage-b-test-large-1-gpu") +register_amd_ci(est_time=1400, suite="stage-b-test-small-1-gpu-amd") + class TestTorchCompileMoe(CustomTestCase): @classmethod diff --git a/test/registered/moe/test_triton_fused_moe.py b/test/registered/moe/test_triton_fused_moe.py index e823c645c..11b62528e 100644 --- a/test/registered/moe/test_triton_fused_moe.py +++ b/test/registered/moe/test_triton_fused_moe.py @@ -1,7 +1,3 @@ -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=89, suite="stage-b-test-small-1-gpu") - import unittest import torch @@ -13,8 +9,11 @@ from sglang.srt.layers.moe.moe_runner.triton_kernels import TritonKernelsQuantIn from sglang.srt.layers.moe.token_dispatcher.standard import StandardDispatchOutput from sglang.srt.layers.moe.topk import TopK, TopKOutputFormat from sglang.srt.server_args import ServerArgs, set_global_server_args_for_scheduler +from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.test_utils import CustomTestCase +register_cuda_ci(est_time=89, suite="stage-b-test-large-1-gpu") + class TestFusedMOE(CustomTestCase): NUM_EXPERTS = [8, 64] diff --git a/test/registered/moe/test_triton_moe_channel_fp8_kernel.py b/test/registered/moe/test_triton_moe_channel_fp8_kernel.py index 82a983260..b180864ea 100644 --- a/test/registered/moe/test_triton_moe_channel_fp8_kernel.py +++ b/test/registered/moe/test_triton_moe_channel_fp8_kernel.py @@ -1,7 +1,3 @@ -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=16, suite="stage-b-test-small-1-gpu") - import itertools import unittest @@ -12,8 +8,11 @@ from sglang.srt.layers.moe.fused_moe_triton.fused_moe import fused_moe from sglang.srt.layers.moe.topk import TopKConfig, select_experts from sglang.srt.layers.quantization.fp8_kernel import scaled_fp8_quant from sglang.srt.server_args import ServerArgs, set_global_server_args_for_scheduler +from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.test_utils import CustomTestCase +register_cuda_ci(est_time=16, suite="stage-b-test-large-1-gpu") + def native_w8a8_per_token_matmul(A, B, As, Bs, output_dtype=torch.float16): """Matrix multiplication function that supports per-token input quantization and per-column weight quantization""" diff --git a/test/registered/openai_server/basic/test_openai_embedding.py b/test/registered/openai_server/basic/test_openai_embedding.py index 0b49a2d54..1432a5307 100644 --- a/test/registered/openai_server/basic/test_openai_embedding.py +++ b/test/registered/openai_server/basic/test_openai_embedding.py @@ -14,7 +14,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=70, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=48, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=141, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/basic/test_openai_server.py b/test/registered/openai_server/basic/test_openai_server.py index 35d628c77..3f27fb500 100644 --- a/test/registered/openai_server/basic/test_openai_server.py +++ b/test/registered/openai_server/basic/test_openai_server.py @@ -29,7 +29,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=184, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=130, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=149, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/basic/test_protocol.py b/test/registered/openai_server/basic/test_protocol.py index 561ebbdfa..47bf56381 100644 --- a/test/registered/openai_server/basic/test_protocol.py +++ b/test/registered/openai_server/basic/test_protocol.py @@ -31,7 +31,6 @@ from sglang.srt.entrypoints.openai.protocol import ( from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=3, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=2, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=10, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/basic/test_serving_chat.py b/test/registered/openai_server/basic/test_serving_chat.py index 4764edb6b..d81f2efb0 100644 --- a/test/registered/openai_server/basic/test_serving_chat.py +++ b/test/registered/openai_server/basic/test_serving_chat.py @@ -24,7 +24,6 @@ from sglang.srt.utils import get_or_create_event_loop from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=10, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=10, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/basic/test_serving_completions.py b/test/registered/openai_server/basic/test_serving_completions.py index bbc3c5c6e..34c262e60 100644 --- a/test/registered/openai_server/basic/test_serving_completions.py +++ b/test/registered/openai_server/basic/test_serving_completions.py @@ -14,7 +14,6 @@ from sglang.srt.managers.tokenizer_manager import TokenizerManager from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=10, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=10, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/basic/test_serving_embedding.py b/test/registered/openai_server/basic/test_serving_embedding.py index 8f5b45022..56217e269 100644 --- a/test/registered/openai_server/basic/test_serving_embedding.py +++ b/test/registered/openai_server/basic/test_serving_embedding.py @@ -16,7 +16,7 @@ from sglang.srt.entrypoints.openai.serving_embedding import OpenAIServingEmbeddi from sglang.srt.managers.io_struct import EmbeddingReqInput from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci -register_cuda_ci(est_time=10, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=10, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=10, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/basic/test_serving_rerank.py b/test/registered/openai_server/basic/test_serving_rerank.py index 51d6708d0..64f0f15ce 100644 --- a/test/registered/openai_server/basic/test_serving_rerank.py +++ b/test/registered/openai_server/basic/test_serving_rerank.py @@ -6,7 +6,7 @@ from sglang.srt.entrypoints.openai.protocol import V1RerankReqInput from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci # Keep consistent with other openai_server/basic unit tests. -register_cuda_ci(est_time=10, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=10, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=10, suite="stage-b-test-small-1-gpu") try: diff --git a/test/registered/openai_server/features/test_enable_thinking.py b/test/registered/openai_server/features/test_enable_thinking.py index ac48b5d14..06cf7f4c7 100644 --- a/test/registered/openai_server/features/test_enable_thinking.py +++ b/test/registered/openai_server/features/test_enable_thinking.py @@ -21,7 +21,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=103, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=103, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=200, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/features/test_json_mode.py b/test/registered/openai_server/features/test_json_mode.py index 112b08b3c..946d8e0ff 100644 --- a/test/registered/openai_server/features/test_json_mode.py +++ b/test/registered/openai_server/features/test_json_mode.py @@ -14,7 +14,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=109, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=84, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=180, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/features/test_openai_server_ebnf.py b/test/registered/openai_server/features/test_openai_server_ebnf.py index f024d0455..165bbcf78 100644 --- a/test/registered/openai_server/features/test_openai_server_ebnf.py +++ b/test/registered/openai_server/features/test_openai_server_ebnf.py @@ -14,7 +14,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=27, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=20, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/features/test_openai_server_hidden_states.py b/test/registered/openai_server/features/test_openai_server_hidden_states.py index 8218fedfd..0ac3d3265 100644 --- a/test/registered/openai_server/features/test_openai_server_hidden_states.py +++ b/test/registered/openai_server/features/test_openai_server_hidden_states.py @@ -17,7 +17,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=186, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=134, suite="stage-b-test-small-1-gpu-5090") register_amd_ci( est_time=186, suite="stage-b-test-small-1-gpu-amd", diff --git a/test/registered/openai_server/features/test_reasoning_content.py b/test/registered/openai_server/features/test_reasoning_content.py index ad80d02a0..2c59921fe 100644 --- a/test/registered/openai_server/features/test_reasoning_content.py +++ b/test/registered/openai_server/features/test_reasoning_content.py @@ -24,7 +24,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=89, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=77, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=89, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/function_call/test_openai_function_calling.py b/test/registered/openai_server/function_call/test_openai_function_calling.py index d3fdd6823..7c6a7bb31 100644 --- a/test/registered/openai_server/function_call/test_openai_function_calling.py +++ b/test/registered/openai_server/function_call/test_openai_function_calling.py @@ -14,7 +14,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=60, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=60, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=73, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/function_call/test_tool_choice.py b/test/registered/openai_server/function_call/test_tool_choice.py index 77e3825f1..b12cd70d0 100644 --- a/test/registered/openai_server/function_call/test_tool_choice.py +++ b/test/registered/openai_server/function_call/test_tool_choice.py @@ -23,7 +23,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=120, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=109, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=258, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/validation/test_large_max_new_tokens.py b/test/registered/openai_server/validation/test_large_max_new_tokens.py index 8b4fb9f7d..047c8d93f 100644 --- a/test/registered/openai_server/validation/test_large_max_new_tokens.py +++ b/test/registered/openai_server/validation/test_large_max_new_tokens.py @@ -22,7 +22,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=41, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=41, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=41, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/validation/test_matched_stop.py b/test/registered/openai_server/validation/test_matched_stop.py index 88f264d99..aa890e363 100644 --- a/test/registered/openai_server/validation/test_matched_stop.py +++ b/test/registered/openai_server/validation/test_matched_stop.py @@ -12,7 +12,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=40, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=39, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=60, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/validation/test_openai_server_ignore_eos.py b/test/registered/openai_server/validation/test_openai_server_ignore_eos.py index 891f67855..bbf696d41 100644 --- a/test/registered/openai_server/validation/test_openai_server_ignore_eos.py +++ b/test/registered/openai_server/validation/test_openai_server_ignore_eos.py @@ -12,7 +12,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=6, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=37, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=47, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/openai_server/validation/test_request_length_validation.py b/test/registered/openai_server/validation/test_request_length_validation.py index 405372863..5035b6d4d 100644 --- a/test/registered/openai_server/validation/test_request_length_validation.py +++ b/test/registered/openai_server/validation/test_request_length_validation.py @@ -12,7 +12,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=38, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=38, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=31, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/ops/test_repeat_interleave.py b/test/registered/ops/test_repeat_interleave.py index 8a9b97445..0254cbbfa 100644 --- a/test/registered/ops/test_repeat_interleave.py +++ b/test/registered/ops/test_repeat_interleave.py @@ -1,10 +1,3 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -# Ops - Repeat Interleave tests (1-GPU) -register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=75, suite="stage-b-test-small-1-gpu-amd") - import time from typing import Tuple @@ -13,6 +6,13 @@ import pytest import torch from sglang.srt.models.utils import compute_cu_seqlens_from_grid_numpy as cpu_numpy_impl +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci + +# Ops - Repeat Interleave tests (1-GPU) + + +register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=75, suite="stage-b-test-small-1-gpu-amd") def torch_ref_impl(grid_thw: torch.Tensor) -> torch.Tensor: diff --git a/test/registered/profiling/test_profile_merger.py b/test/registered/profiling/test_profile_merger.py index 4f52dcfe9..412ae8046 100644 --- a/test/registered/profiling/test_profile_merger.py +++ b/test/registered/profiling/test_profile_merger.py @@ -18,7 +18,6 @@ from sglang.srt.utils.profile_merger import ProfileMerger from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=8, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/profiling/test_profile_merger_http_api.py b/test/registered/profiling/test_profile_merger_http_api.py index bf9d38c32..9bf656f26 100644 --- a/test/registered/profiling/test_profile_merger_http_api.py +++ b/test/registered/profiling/test_profile_merger_http_api.py @@ -5,7 +5,6 @@ from sglang.srt.managers.io_struct import ProfileReqInput 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_cuda_ci(est_time=6, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=9, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/profiling/test_start_profile.py b/test/registered/profiling/test_start_profile.py index a59316374..ddd19b6bb 100644 --- a/test/registered/profiling/test_start_profile.py +++ b/test/registered/profiling/test_start_profile.py @@ -30,7 +30,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=41, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=39, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=60, suite="stage-b-test-small-1-gpu-amd") OUTPUT_DIR = "./profiler_dir" diff --git a/test/registered/quant/test_autoround.py b/test/registered/quant/test_autoround.py index d7000b702..df69f1e5c 100644 --- a/test/registered/quant/test_autoround.py +++ b/test/registered/quant/test_autoround.py @@ -18,7 +18,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=77, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=76, suite="stage-b-test-small-1-gpu-5090") class TestAutoRound(CustomTestCase): diff --git a/test/registered/quant/test_block_int8.py b/test/registered/quant/test_block_int8.py index d090e5443..91f2cd474 100644 --- a/test/registered/quant/test_block_int8.py +++ b/test/registered/quant/test_block_int8.py @@ -11,7 +11,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase register_cuda_ci(est_time=44, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=25, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=22, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/quant/test_eval_fp8_accuracy.py b/test/registered/quant/test_eval_fp8_accuracy.py index 0c8e6cec7..f4f02ccee 100644 --- a/test/registered/quant/test_eval_fp8_accuracy.py +++ b/test/registered/quant/test_eval_fp8_accuracy.py @@ -14,7 +14,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=250, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=250, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=303, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/quant/test_fp8_kernel.py b/test/registered/quant/test_fp8_kernel.py index a8300e6fe..44e9b5be0 100644 --- a/test/registered/quant/test_fp8_kernel.py +++ b/test/registered/quant/test_fp8_kernel.py @@ -9,7 +9,7 @@ from sglang.srt.layers.quantization.fp8_kernel import ( from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.test_utils import CustomTestCase -register_cuda_ci(est_time=132, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=132, suite="stage-b-test-large-1-gpu") class TestFP8Base(CustomTestCase): diff --git a/test/registered/quant/test_fp8_utils.py b/test/registered/quant/test_fp8_utils.py index f5ec4fcb8..d5c16e42b 100644 --- a/test/registered/quant/test_fp8_utils.py +++ b/test/registered/quant/test_fp8_utils.py @@ -10,7 +10,7 @@ from sglang.srt.layers.quantization.fp8_utils import ( from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.test_utils import CustomTestCase -register_cuda_ci(est_time=9, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=9, suite="stage-b-test-large-1-gpu") class TestInverseTransformScaleUe8m0(CustomTestCase): diff --git a/test/registered/quant/test_int8_kernel.py b/test/registered/quant/test_int8_kernel.py index 6e2726a72..d45f82efb 100644 --- a/test/registered/quant/test_int8_kernel.py +++ b/test/registered/quant/test_int8_kernel.py @@ -12,7 +12,6 @@ from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.test_utils import CustomTestCase register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=10, suite="stage-b-test-small-1-gpu-5090") def native_w8a8_per_token_matmul(A, B, As, Bs, output_dtype=torch.float16): diff --git a/test/registered/quant/test_torchao.py b/test/registered/quant/test_torchao.py index d9be632a4..9f1ed4133 100644 --- a/test/registered/quant/test_torchao.py +++ b/test/registered/quant/test_torchao.py @@ -8,7 +8,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=103, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=106, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=88, suite="stage-b-test-small-1-gpu-5090") from sglang.lang.chat_template import get_chat_template_by_model_path from sglang.srt.utils import kill_process_tree from sglang.test.run_eval import run_eval diff --git a/test/registered/quant/test_triton_scaled_mm.py b/test/registered/quant/test_triton_scaled_mm.py index 512191ee6..35a30d710 100644 --- a/test/registered/quant/test_triton_scaled_mm.py +++ b/test/registered/quant/test_triton_scaled_mm.py @@ -9,7 +9,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase register_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=9, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=12, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/quant/test_w8a8_quantization.py b/test/registered/quant/test_w8a8_quantization.py index 3afac0830..df9124cd8 100644 --- a/test/registered/quant/test_w8a8_quantization.py +++ b/test/registered/quant/test_w8a8_quantization.py @@ -14,7 +14,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=160, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=160, suite="stage-b-test-large-1-gpu") class BaseW8A8Test(CustomTestCase): diff --git a/test/registered/rl/test_fp32_lm_head.py b/test/registered/rl/test_fp32_lm_head.py index b59698a6c..6a96e8844 100644 --- a/test/registered/rl/test_fp32_lm_head.py +++ b/test/registered/rl/test_fp32_lm_head.py @@ -1,9 +1,3 @@ -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_cuda_ci(est_time=8, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=15, suite="stage-b-test-small-1-gpu-amd") - import unittest from types import SimpleNamespace from unittest.mock import patch @@ -18,6 +12,10 @@ from sglang.srt.server_args import ( get_global_server_args, set_global_server_args_for_scheduler, ) +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-amd") class LMHeadStub(nn.Module): diff --git a/test/registered/rl/test_lora_load_from_tensor.py b/test/registered/rl/test_lora_load_from_tensor.py index a5633a73a..941e03fb5 100644 --- a/test/registered/rl/test_lora_load_from_tensor.py +++ b/test/registered/rl/test_lora_load_from_tensor.py @@ -1,9 +1,3 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -register_cuda_ci(est_time=90, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=54, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=90, suite="stage-b-test-small-1-gpu") - import json import os import unittest @@ -13,8 +7,12 @@ from huggingface_hub import snapshot_download from safetensors.torch import load_file import sglang as sgl +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase +register_cuda_ci(est_time=90, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=90, suite="stage-b-test-small-1-gpu") + MODEL_PATH = "Qwen/Qwen3-0.6B" LORA_REPO = "charent/self_cognition_Alice" TEST_PROMPT = "Hello, my name is" diff --git a/test/registered/rl/test_patch_torch.py b/test/registered/rl/test_patch_torch.py index 06bc16f15..793877c28 100644 --- a/test/registered/rl/test_patch_torch.py +++ b/test/registered/rl/test_patch_torch.py @@ -1,10 +1,3 @@ -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 traceback import unittest @@ -14,6 +7,12 @@ import torch import torch.multiprocessing as mp from sglang.srt.utils.patch_torch import monkey_patch_torch_reductions +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci + +register_amd_ci( + est_time=19, suite="stage-b-test-large-2-gpu-amd", disabled="see #11127" +) +register_cuda_ci(est_time=19, suite="stage-b-test-large-2-gpu") class TestReleaseMemoryOccupation(unittest.TestCase): diff --git a/test/registered/rl/test_return_routed_experts.py b/test/registered/rl/test_return_routed_experts.py index b2b7c26fc..480f2e32a 100644 --- a/test/registered/rl/test_return_routed_experts.py +++ b/test/registered/rl/test_return_routed_experts.py @@ -1,7 +1,3 @@ -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 logging import unittest @@ -16,6 +12,7 @@ from sglang.srt.layers.moe.routed_experts_capturer import ( extract_routed_experts_from_meta_info, ) from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.test_utils import ( DEFAULT_ENABLE_ROUTED_EXPERTS_MODEL_NAME_FOR_TEST, DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH, @@ -24,6 +21,8 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=180, suite="stage-c-test-large-4-gpu") + SHAREGPT_URL = ( "https://huggingface.co/datasets/anon8231489123/" "ShareGPT_Vicuna_unfiltered/resolve/main/ShareGPT_V3_unfiltered_cleaned_split.json" diff --git a/test/registered/rl/test_update_weights_from_disk.py b/test/registered/rl/test_update_weights_from_disk.py index 9376735ac..080210659 100644 --- a/test/registered/rl/test_update_weights_from_disk.py +++ b/test/registered/rl/test_update_weights_from_disk.py @@ -1,10 +1,3 @@ -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-amd", disabled="see #14021" -) - import json import random import time @@ -15,6 +8,7 @@ import requests import sglang as sgl from sglang.srt.utils import kill_process_tree +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import ( DEFAULT_SMALL_MODEL_NAME_FOR_TEST, DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH, @@ -24,6 +18,11 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_amd_ci( + est_time=210, suite="stage-b-test-small-1-gpu-amd", disabled="see #14021" +) +register_cuda_ci(est_time=210, suite="stage-b-test-large-1-gpu", disabled="see #14021") + ############################################################################### # Engine Mode Tests (Single-configuration) diff --git a/test/registered/rl/test_update_weights_from_distributed.py b/test/registered/rl/test_update_weights_from_distributed.py index 2ca428338..0f5c126ba 100644 --- a/test/registered/rl/test_update_weights_from_distributed.py +++ b/test/registered/rl/test_update_weights_from_distributed.py @@ -1,8 +1,5 @@ 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. This test suite simulates a distributed training environment to ensure @@ -45,6 +42,9 @@ from sglang.test.test_utils import ( ) from sglang.utils import terminate_process +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") + mp.set_start_method("spawn", force=True) diff --git a/test/registered/rl/test_update_weights_from_tensor.py b/test/registered/rl/test_update_weights_from_tensor.py index 382c5e4bc..900020762 100644 --- a/test/registered/rl/test_update_weights_from_tensor.py +++ b/test/registered/rl/test_update_weights_from_tensor.py @@ -2,7 +2,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=195, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=195, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=164, suite="stage-b-test-small-1-gpu-5090") import gc import json diff --git a/test/registered/rotary/test_mrope.py b/test/registered/rotary/test_mrope.py index 217197d7f..ed1e40aa6 100644 --- a/test/registered/rotary/test_mrope.py +++ b/test/registered/rotary/test_mrope.py @@ -1,8 +1,4 @@ -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - # Rotary Embedding - MRoPE tests (1-GPU) -register_cuda_ci(est_time=10, suite="stage-b-test-small-1-gpu") -register_amd_ci(est_time=15, suite="stage-b-test-small-1-gpu-amd") from typing import NamedTuple @@ -22,6 +18,10 @@ from sglang.srt.utils import ( is_npu, is_xpu, ) +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci + +register_cuda_ci(est_time=10, suite="stage-b-test-large-1-gpu") +register_amd_ci(est_time=15, suite="stage-b-test-small-1-gpu-amd") _is_cuda = is_cuda() _is_hip = is_hip() diff --git a/test/registered/sampling/test_original_logprobs.py b/test/registered/sampling/test_original_logprobs.py index 3056f4a2a..ed78daa60 100644 --- a/test/registered/sampling/test_original_logprobs.py +++ b/test/registered/sampling/test_original_logprobs.py @@ -14,12 +14,6 @@ The test covers the following scenarios: """ import os - -from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -register_cuda_ci(est_time=41, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=43, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=60, suite="stage-b-test-small-1-gpu-amd") import random import unittest @@ -28,8 +22,12 @@ import torch.nn.functional as F from transformers import AutoModelForCausalLM, AutoTokenizer import sglang as sgl +from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import DEFAULT_SMALL_MODEL_NAME_FOR_TEST +register_cuda_ci(est_time=41, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=60, suite="stage-b-test-small-1-gpu-amd") + # ------------------------- Configurable via env ------------------------- # MODEL_ID = DEFAULT_SMALL_MODEL_NAME_FOR_TEST PROMPTS = [ diff --git a/test/registered/sampling/test_penalty.py b/test/registered/sampling/test_penalty.py index d4f84cd69..d41e5bfd2 100644 --- a/test/registered/sampling/test_penalty.py +++ b/test/registered/sampling/test_penalty.py @@ -8,10 +8,6 @@ import requests from sglang.srt.utils import kill_process_tree from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -register_cuda_ci(est_time=82, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=44, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=82, suite="stage-b-test-small-1-gpu-amd") from sglang.test.test_utils import ( DEFAULT_SMALL_MODEL_NAME_FOR_TEST, DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH, @@ -20,6 +16,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=82, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=82, suite="stage-b-test-small-1-gpu-amd") + class TestPenalty(CustomTestCase): @classmethod diff --git a/test/registered/sampling/test_pytorch_sampling_backend.py b/test/registered/sampling/test_pytorch_sampling_backend.py index e98e8d9bd..b6953990c 100644 --- a/test/registered/sampling/test_pytorch_sampling_backend.py +++ b/test/registered/sampling/test_pytorch_sampling_backend.py @@ -5,10 +5,6 @@ import requests from sglang.srt.utils import kill_process_tree from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci - -register_cuda_ci(est_time=66, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=64, suite="stage-b-test-small-1-gpu-5090") -register_amd_ci(est_time=66, suite="stage-b-test-small-1-gpu-amd") from sglang.test.run_eval import run_eval from sglang.test.test_utils import ( DEFAULT_MODEL_NAME_FOR_TEST, @@ -18,6 +14,9 @@ from sglang.test.test_utils import ( popen_launch_server, ) +register_cuda_ci(est_time=66, suite="stage-b-test-small-1-gpu") +register_amd_ci(est_time=66, suite="stage-b-test-small-1-gpu-amd") + class TestPyTorchSamplingBackend(CustomTestCase): @classmethod diff --git a/test/registered/scheduler/test_abort.py b/test/registered/scheduler/test_abort.py index c2b3e8c2d..b8e6b691d 100644 --- a/test/registered/scheduler/test_abort.py +++ b/test/registered/scheduler/test_abort.py @@ -18,7 +18,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=131, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=119, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=51, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/scheduler/test_chunked_prefill.py b/test/registered/scheduler/test_chunked_prefill.py index 336200a20..951b09f74 100644 --- a/test/registered/scheduler/test_chunked_prefill.py +++ b/test/registered/scheduler/test_chunked_prefill.py @@ -8,7 +8,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase, run_mmlu_test, run_mulit_request_test register_cuda_ci(est_time=312, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=323, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=312, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/scheduler/test_no_chunked_prefill.py b/test/registered/scheduler/test_no_chunked_prefill.py index d5b4f95be..2e871b69c 100644 --- a/test/registered/scheduler/test_no_chunked_prefill.py +++ b/test/registered/scheduler/test_no_chunked_prefill.py @@ -8,7 +8,7 @@ from sglang.test.test_utils import ( run_mmlu_test, ) -register_cuda_ci(est_time=108, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=108, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=108, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/scheduler/test_no_overlap_scheduler.py b/test/registered/scheduler/test_no_overlap_scheduler.py index f7614bf6b..2f461faf7 100644 --- a/test/registered/scheduler/test_no_overlap_scheduler.py +++ b/test/registered/scheduler/test_no_overlap_scheduler.py @@ -9,7 +9,7 @@ import unittest from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase, run_mmlu_test -register_cuda_ci(est_time=245, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=245, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=275, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/scheduler/test_prefill_adder.py b/test/registered/scheduler/test_prefill_adder.py index 587ddb8e0..f11b0b16f 100644 --- a/test/registered/scheduler/test_prefill_adder.py +++ b/test/registered/scheduler/test_prefill_adder.py @@ -8,7 +8,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci from sglang.test.test_utils import CustomTestCase register_cuda_ci(est_time=1, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=6, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=2, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/scheduler/test_priority_scheduling.py b/test/registered/scheduler/test_priority_scheduling.py index fb998fd71..b3ba23ea0 100644 --- a/test/registered/scheduler/test_priority_scheduling.py +++ b/test/registered/scheduler/test_priority_scheduling.py @@ -18,7 +18,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=130, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=146, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=195, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/scheduler/test_retract_decode.py b/test/registered/scheduler/test_retract_decode.py index c1df809f8..80dc74cec 100644 --- a/test/registered/scheduler/test_retract_decode.py +++ b/test/registered/scheduler/test_retract_decode.py @@ -18,7 +18,6 @@ from sglang.test.test_utils import ( from sglang.utils import is_in_ci register_cuda_ci(est_time=311, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=400, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=450, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/spec/eagle/test_eagle3_basic.py b/test/registered/spec/eagle/test_eagle3_basic.py index a346214ad..b60b167d0 100644 --- a/test/registered/spec/eagle/test_eagle3_basic.py +++ b/test/registered/spec/eagle/test_eagle3_basic.py @@ -12,7 +12,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=50, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=87, suite="stage-b-test-small-1-gpu-5090") class TestEagle3Basic(EagleServerBase): diff --git a/test/registered/spec/eagle/test_eagle_constrained_decoding.py b/test/registered/spec/eagle/test_eagle_constrained_decoding.py index 0ebbd96e0..2c010e894 100644 --- a/test/registered/spec/eagle/test_eagle_constrained_decoding.py +++ b/test/registered/spec/eagle/test_eagle_constrained_decoding.py @@ -14,7 +14,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=100, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=100, suite="stage-b-test-large-1-gpu") class TestEagleConstrainedDecoding( diff --git a/test/registered/spec/eagle/test_eagle_infer_a.py b/test/registered/spec/eagle/test_eagle_infer_a.py index 7fc9d7812..d3a4a8f8c 100644 --- a/test/registered/spec/eagle/test_eagle_infer_a.py +++ b/test/registered/spec/eagle/test_eagle_infer_a.py @@ -22,7 +22,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=561, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=561, suite="stage-b-test-large-1-gpu") torch_dtype = torch.float16 prefill_tolerance = 5e-2 diff --git a/test/registered/spec/eagle/test_eagle_infer_b.py b/test/registered/spec/eagle/test_eagle_infer_b.py index 8ca2645b2..24ce27c62 100644 --- a/test/registered/spec/eagle/test_eagle_infer_b.py +++ b/test/registered/spec/eagle/test_eagle_infer_b.py @@ -17,7 +17,7 @@ from sglang.test.kits.radix_cache_server_kit import run_radix_attention_test from sglang.test.server_fixtures.eagle_fixture import EagleServerBase from sglang.test.test_utils import DEFAULT_TARGET_MODEL_EAGLE, run_logprob_check -register_cuda_ci(est_time=1100, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=1100, suite="stage-b-test-large-1-gpu") class TestEAGLEServerBasic(EagleServerBase): diff --git a/test/registered/spec/eagle/test_eagle_infer_beta.py b/test/registered/spec/eagle/test_eagle_infer_beta.py index fe488e99a..c67ff334a 100644 --- a/test/registered/spec/eagle/test_eagle_infer_beta.py +++ b/test/registered/spec/eagle/test_eagle_infer_beta.py @@ -17,7 +17,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=283, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=404, suite="stage-b-test-small-1-gpu-5090") class TestEagleServerBase(CustomTestCase, MatchedStopMixin): diff --git a/test/registered/spec/test_ngram_speculative_decoding.py b/test/registered/spec/test_ngram_speculative_decoding.py index c799cc852..1b87c86f5 100644 --- a/test/registered/spec/test_ngram_speculative_decoding.py +++ b/test/registered/spec/test_ngram_speculative_decoding.py @@ -12,7 +12,7 @@ from sglang.test.test_utils import ( popen_launch_server, ) -register_cuda_ci(est_time=230, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=230, suite="stage-b-test-large-1-gpu") GSM_DATASET_PATH = None diff --git a/test/registered/spec/test_standalone_speculative_decoding.py b/test/registered/spec/test_standalone_speculative_decoding.py index 08031ba88..3ab9272c2 100644 --- a/test/registered/spec/test_standalone_speculative_decoding.py +++ b/test/registered/spec/test_standalone_speculative_decoding.py @@ -18,7 +18,7 @@ from sglang.test.test_utils import ( ) # Standalone speculative decoding tests (FA3, Triton, FlashInfer backends) -register_cuda_ci(est_time=308, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=308, suite="stage-b-test-large-1-gpu") GSM_DATASET_PATH = None diff --git a/test/registered/spec/utils/test_build_eagle_tree.py b/test/registered/spec/utils/test_build_eagle_tree.py index 697eaf8da..72b0b4215 100644 --- a/test/registered/spec/utils/test_build_eagle_tree.py +++ b/test/registered/spec/utils/test_build_eagle_tree.py @@ -10,7 +10,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci register_cuda_ci(est_time=3, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=3, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=2, suite="stage-b-test-small-1-gpu-5090") class TestBuildEagleTree(unittest.TestCase): diff --git a/test/registered/tokenizer/test_multi_tokenizer.py b/test/registered/tokenizer/test_multi_tokenizer.py index e214dd1b6..1084b0a2f 100644 --- a/test/registered/tokenizer/test_multi_tokenizer.py +++ b/test/registered/tokenizer/test_multi_tokenizer.py @@ -17,7 +17,7 @@ from sglang.test.test_utils import ( write_github_step_summary, ) -register_cuda_ci(est_time=230, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=230, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=345, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/tokenizer/test_skip_tokenizer_init.py b/test/registered/tokenizer/test_skip_tokenizer_init.py index c00a655cf..7d95c19cf 100644 --- a/test/registered/tokenizer/test_skip_tokenizer_init.py +++ b/test/registered/tokenizer/test_skip_tokenizer_init.py @@ -24,7 +24,6 @@ from sglang.test.test_utils import ( ) register_cuda_ci(est_time=77, suite="stage-b-test-small-1-gpu") -register_cuda_ci(est_time=52, suite="stage-b-test-small-1-gpu-5090") register_amd_ci(est_time=117, suite="stage-b-test-small-1-gpu-amd") diff --git a/test/registered/vlm/test_evs.py b/test/registered/vlm/test_evs.py index 1f5fe1d17..7ae4d1aa2 100644 --- a/test/registered/vlm/test_evs.py +++ b/test/registered/vlm/test_evs.py @@ -8,7 +8,6 @@ from sglang.test.test_utils import run_doctests register_cuda_ci(est_time=20, suite="stage-b-test-small-1-gpu") register_amd_ci(est_time=20, suite="stage-b-test-small-1-gpu-amd") -register_cuda_ci(est_time=7, suite="stage-b-test-small-1-gpu-5090") def test_resolve_evs_config(): diff --git a/test/registered/vlm/test_vision_chunked_prefill.py b/test/registered/vlm/test_vision_chunked_prefill.py index a31ed8a12..104f979ca 100644 --- a/test/registered/vlm/test_vision_chunked_prefill.py +++ b/test/registered/vlm/test_vision_chunked_prefill.py @@ -1,6 +1,6 @@ from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci -register_cuda_ci(est_time=150, suite="stage-b-test-small-1-gpu") +register_cuda_ci(est_time=150, suite="stage-b-test-large-1-gpu") register_amd_ci(est_time=270, suite="stage-b-test-small-1-gpu-amd") """ Usage: diff --git a/test/registered/vlm/test_vision_openai_server_a.py b/test/registered/vlm/test_vision_openai_server_a.py index 759231de4..e89f3bbfc 100644 --- a/test/registered/vlm/test_vision_openai_server_a.py +++ b/test/registered/vlm/test_vision_openai_server_a.py @@ -1,7 +1,3 @@ -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=957, suite="stage-b-test-small-1-gpu") - """ Usage: python3 -m unittest test_vision_openai_server.TestOpenAIVisionServer.test_mixed_batch @@ -12,6 +8,7 @@ import unittest import openai +from sglang.test.ci.ci_register import register_cuda_ci from sglang.test.vlm_utils import * from sglang.test.vlm_utils import ( AudioOpenAITestMixin, @@ -22,6 +19,8 @@ from sglang.test.vlm_utils import ( VideoOpenAITestMixin, ) +register_cuda_ci(est_time=957, suite="stage-b-test-large-1-gpu") + class TestLlavaServer(ImageOpenAITestMixin): model = "lmms-lab/llava-onevision-qwen2-0.5b-ov" diff --git a/test/registered/vlm/test_vlm_input_format.py b/test/registered/vlm/test_vlm_input_format.py index da663412a..f717c3b5f 100644 --- a/test/registered/vlm/test_vlm_input_format.py +++ b/test/registered/vlm/test_vlm_input_format.py @@ -1,7 +1,3 @@ -from sglang.test.ci.ci_register import register_cuda_ci - -register_cuda_ci(est_time=447, suite="stage-b-test-small-1-gpu") - import json import unittest from io import BytesIO @@ -22,6 +18,8 @@ from transformers import ( Qwen2_5_VLForConditionalGeneration, ) +from sglang.test.ci.ci_register import register_cuda_ci + if not hasattr(_hf_activations, "PytorchGELUTanh"): class PytorchGELUTanh(torch.nn.Module): @@ -38,6 +36,8 @@ from sglang import Engine from sglang.srt.entrypoints.openai.protocol import ChatCompletionRequest from sglang.srt.parser.conversation import generate_chat_conv +register_cuda_ci(est_time=447, suite="stage-b-test-large-1-gpu") + IMAGE_MAN_IRONING_URL = "https://raw.githubusercontent.com/sgl-project/sgl-test-files/refs/heads/main/images/man_ironing_on_back_of_suv.png" IMAGE_SGL_LOGO_URL = "https://raw.githubusercontent.com/sgl-project/sgl-test-files/refs/heads/main/images/sgl_logo.png" diff --git a/test/run_suite.py b/test/run_suite.py index 793fec534..e12db55db 100644 --- a/test/run_suite.py +++ b/test/run_suite.py @@ -28,7 +28,6 @@ PER_COMMIT_SUITES = { HWBackend.CUDA: [ "stage-a-test-1", "stage-b-test-small-1-gpu", - "stage-b-test-small-1-gpu-5090", "stage-b-test-large-1-gpu", "stage-b-test-large-2-gpu", "stage-c-test-large-4-gpu",