[Xeon] CPU CI enhancement for Intel Xeon platforms (#24649)
This commit is contained in:
@@ -29,10 +29,18 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
main_package: ${{ steps.filter.outputs.main_package || steps.run-mode.outputs.run_all_tests}}
|
||||
env:
|
||||
PYTHONDONTWRITEBYTECODE: 1
|
||||
steps:
|
||||
- name: clean up
|
||||
run: |
|
||||
sudo rm -rf ${{ github.workspace }} || true
|
||||
sudo mkdir -p ${{ github.workspace }}
|
||||
sudo chown -R $(id -u):$(id -g) ${{ github.workspace }}
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
clean: false
|
||||
ref: ${{ inputs.ref || github.ref }}
|
||||
|
||||
- name: Determine run mode
|
||||
@@ -72,16 +80,27 @@ jobs:
|
||||
build-test:
|
||||
needs: [check-changes, pr-gate]
|
||||
if: needs.check-changes.outputs.main_package == 'true'
|
||||
runs-on: xeon-gnr
|
||||
env:
|
||||
HF_HOME: /home/sdp/.cache/huggingface
|
||||
runs-on: ${{ matrix.runner }}
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
build_type: ['all']
|
||||
include:
|
||||
- runner: xeon-gnr
|
||||
suite: base-b-test-cpu
|
||||
partition_args: "--auto-partition-id 0 --auto-partition-size 2"
|
||||
- runner: xeon-gnr
|
||||
suite: base-b-test-cpu
|
||||
partition_args: "--auto-partition-id 1 --auto-partition-size 2"
|
||||
steps:
|
||||
- name: Cleanup workspace
|
||||
run: |
|
||||
sudo rm -rf ${{ github.workspace }} || true
|
||||
sudo mkdir -p ${{ github.workspace }}
|
||||
sudo chown $(id -u):$(id -g) ${{ github.workspace }}
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
clean: false
|
||||
ref: ${{ inputs.ref || github.ref }}
|
||||
|
||||
- name: Build and Push
|
||||
@@ -100,27 +119,28 @@ jobs:
|
||||
run: |
|
||||
docker run -dt \
|
||||
-v ${{ github.workspace }}:/sglang-checkout/ --ipc=host \
|
||||
-v ${HF_HOME}:/root/.cache/huggingface \
|
||||
--name ci_sglang_xeon \
|
||||
-v $HOME/.cache/huggingface:/root/.cache/huggingface \
|
||||
-e HF_TOKEN="$(cat ~/huggingface_token.txt)" \
|
||||
--name ci_sglang_${{ matrix.runner }} \
|
||||
sglang_xeon
|
||||
|
||||
- name: Check AMX support
|
||||
id: check_amx
|
||||
timeout-minutes: 5
|
||||
run: |
|
||||
docker exec -w /sglang-checkout/ ci_sglang_xeon \
|
||||
docker exec -w /sglang-checkout/ ci_sglang_${{ matrix.runner }} \
|
||||
bash -c "source /opt/.venv/bin/activate && python3 -c 'import torch; import sgl_kernel; assert torch._C._cpu._is_amx_tile_supported(); assert hasattr(torch.ops.sgl_kernel, \"convert_weight_packed\"); '"
|
||||
|
||||
- name: Run unit tests
|
||||
timeout-minutes: 36
|
||||
run: |
|
||||
docker exec -w /sglang-checkout/ ci_sglang_xeon \
|
||||
bash -c "source /opt/.venv/bin/activate && cd ./test && python3 run_suite.py --hw cpu --suite base-b-test-cpu"
|
||||
docker exec -w /sglang-checkout/ ci_sglang_${{ matrix.runner }} \
|
||||
bash -c "source /opt/.venv/bin/activate && cd ./test && python3 run_suite.py --hw cpu --suite ${{ matrix.suite }} ${{ matrix.partition_args }}"
|
||||
|
||||
- name: Change permission
|
||||
timeout-minutes: 2
|
||||
run: |
|
||||
docker exec -u root ci_sglang_xeon bash -c "
|
||||
docker exec -u root ci_sglang_${{ matrix.runner }} bash -c "
|
||||
rm -rf /tmp/ci-home &&
|
||||
chown -R $(id -u):$(id -g) /sglang-checkout/ 2>/dev/null || true
|
||||
"
|
||||
@@ -128,4 +148,4 @@ jobs:
|
||||
- name: Cleanup container
|
||||
if: always()
|
||||
run: |
|
||||
docker rm -f ci_sglang_xeon || true
|
||||
docker rm -f ci_sglang_${{ matrix.runner }} || true
|
||||
|
||||
@@ -27,6 +27,7 @@ from sglang.benchmark.datasets.sharegpt import sample_sharegpt_requests
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class _DummyTokenTensor:
|
||||
|
||||
@@ -34,6 +34,7 @@ from sglang.srt.debug_utils.comparator.utils import Pair
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestExecuteSubPlans:
|
||||
|
||||
@@ -26,6 +26,7 @@ from sglang.srt.debug_utils.comparator.utils import Pair
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def _make_meta(
|
||||
|
||||
@@ -27,6 +27,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def _zigzag_order(cp_size: int) -> list[int]:
|
||||
|
||||
@@ -27,6 +27,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestComputeReordererPlans:
|
||||
|
||||
@@ -18,6 +18,7 @@ from sglang.srt.debug_utils.comparator.utils import Pair
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestComputeAxisAlignerPlan:
|
||||
|
||||
@@ -17,6 +17,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import TokenLayout
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
_sglang_plugin = _SGLangPlugin()
|
||||
_megatron_plugin = _MegatronPlugin()
|
||||
|
||||
@@ -11,6 +11,7 @@ from sglang.srt.debug_utils.comparator.utils import Pair
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestExecuteConcat:
|
||||
|
||||
@@ -30,6 +30,7 @@ from sglang.srt.debug_utils.comparator.utils import Pair
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def _named(tensor: torch.Tensor, names: list[str]) -> torch.Tensor:
|
||||
|
||||
@@ -24,6 +24,7 @@ from sglang.srt.debug_utils.comparator.utils import Pair
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=30, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestBuildTokenIndexSGLangThd:
|
||||
|
||||
@@ -31,6 +31,7 @@ from sglang.srt.debug_utils.comparator.output_types import ReplicatedCheckResult
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def _name_tensors(
|
||||
|
||||
@@ -10,6 +10,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import ParallelAxis
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestNormalizeParallelInfo:
|
||||
|
||||
@@ -20,6 +20,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import ParallelAxis, parse_dims
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestComputeUnsharderPlan:
|
||||
|
||||
@@ -13,6 +13,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=5, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestParseDim:
|
||||
|
||||
@@ -16,6 +16,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=5, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestSingletonDimUtilFilterOut:
|
||||
|
||||
@@ -15,6 +15,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=5, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestFindDimIndex:
|
||||
|
||||
@@ -10,6 +10,7 @@ from sglang.srt.debug_utils.comparator.dims_spec import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=5, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestDimConstants:
|
||||
|
||||
@@ -15,6 +15,7 @@ from sglang.srt.debug_utils.comparator.tensor_comparator.types import DiffInfo
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=20, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestComputeTensorInfo:
|
||||
|
||||
@@ -22,6 +22,7 @@ from sglang.srt.debug_utils.comparator.tensor_comparator.types import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def _make_stats(**overrides) -> TensorStats:
|
||||
|
||||
@@ -12,6 +12,7 @@ from sglang.srt.debug_utils.comparator.report_sink import report_sink
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def _make_error_log(**overrides) -> ErrorLog:
|
||||
|
||||
@@ -17,6 +17,7 @@ from sglang.srt.debug_utils.comparator.meta_overrider import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
# ───────────────────── Unit: MetaOverrideRule ─────────────────────
|
||||
|
||||
@@ -45,6 +45,7 @@ from sglang.srt.debug_utils.comparator.utils import Pair, _check_equal_lengths
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestCheckEqualLengths:
|
||||
|
||||
@@ -4,6 +4,7 @@ from sglang.srt.debug_utils.comparator.preset import PRESETS, expand_preset
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=5, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestExpandPreset:
|
||||
|
||||
@@ -18,6 +18,7 @@ from sglang.srt.debug_utils.comparator.utils import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=1, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestCalcRelDiff:
|
||||
|
||||
@@ -11,6 +11,7 @@ from sglang.srt.debug_utils.source_patcher.types import EditSpec, PatchSpec
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
SAMPLE_MODULE_NAME = "_source_patcher_test_fixtures.sample_module"
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@ from sglang.srt.debug_utils.dumper import DumperConfig, _Dumper
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
SAMPLE_MODULE_NAME = "_source_patcher_test_fixtures.sample_module"
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ from sglang.srt.debug_utils.source_patcher.types import EditSpec, PatchApplicati
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestApplyEdits:
|
||||
|
||||
@@ -9,7 +9,11 @@ import requests
|
||||
|
||||
from sglang.srt.environ import envs
|
||||
from sglang.srt.utils import kill_process_tree
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import (
|
||||
DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH,
|
||||
DEFAULT_URL_FOR_TEST,
|
||||
@@ -19,6 +23,7 @@ from sglang.test.test_utils import (
|
||||
|
||||
register_cuda_ci(est_time=40, suite="nightly-1-gpu", nightly=True)
|
||||
register_amd_ci(est_time=40, suite="nightly-amd-1-gpu", nightly=True)
|
||||
register_cpu_ci(est_time=225, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestCrashDump(CustomTestCase):
|
||||
|
||||
@@ -26,7 +26,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=120, suite="base-a-test-cpu", nightly=True)
|
||||
|
||||
register_cpu_ci(est_time=338, suite="base-b-test-cpu")
|
||||
|
||||
# ==================== Non-E2E Tests ====================
|
||||
|
||||
|
||||
@@ -5,7 +5,11 @@ import requests
|
||||
|
||||
from sglang.srt.environ import envs
|
||||
from sglang.srt.utils import kill_process_tree
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import (
|
||||
DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH,
|
||||
DEFAULT_URL_FOR_TEST,
|
||||
@@ -15,6 +19,7 @@ from sglang.test.test_utils import (
|
||||
|
||||
register_cuda_ci(est_time=120, suite="nightly-1-gpu", nightly=True)
|
||||
register_amd_ci(est_time=120, suite="nightly-amd-1-gpu", nightly=True)
|
||||
register_cpu_ci(est_time=622, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class BaseTestSoftWatchdog:
|
||||
|
||||
@@ -12,6 +12,7 @@ from sglang.srt.parser.reasoning_parser import KimiK2Detector as KimiK2Reasoning
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(5, "base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def _make_tool(name, parameters=None):
|
||||
|
||||
@@ -20,10 +20,15 @@ Tests LRU and FIFO eviction behavior.
|
||||
import unittest
|
||||
|
||||
from sglang.srt.lora.eviction_policy import get_eviction_policy
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
|
||||
register_cuda_ci(est_time=200, suite="nightly-1-gpu", nightly=True)
|
||||
register_amd_ci(est_time=200, suite="nightly-amd-1-gpu", nightly=True)
|
||||
register_cpu_ci(est_time=6, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestLoRAEvictionPolicy(unittest.TestCase):
|
||||
|
||||
@@ -10,10 +10,15 @@ from unittest.mock import MagicMock
|
||||
|
||||
from sglang.srt.entrypoints.openai.serving_base import OpenAIServingBase
|
||||
from sglang.srt.server_args import ServerArgs
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
|
||||
register_cuda_ci(est_time=30, suite="nightly-1-gpu", nightly=True)
|
||||
register_amd_ci(est_time=30, suite="nightly-amd-1-gpu", nightly=True)
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class MockTokenizerManager:
|
||||
|
||||
@@ -2,11 +2,16 @@ import unittest
|
||||
|
||||
import sglang as sgl
|
||||
from sglang.srt.environ import envs
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cuda_ci(est_time=29, stage="base-b", runner_config="1-gpu-small")
|
||||
register_amd_ci(est_time=45, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=203, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestExternalModels(CustomTestCase):
|
||||
|
||||
@@ -3,11 +3,12 @@
|
||||
import unittest
|
||||
from types import SimpleNamespace
|
||||
|
||||
from sglang.test.ci.ci_register import register_cuda_ci
|
||||
from sglang.test.ci.ci_register import register_cpu_ci, register_cuda_ci
|
||||
from sglang.test.few_shot_gsm8k import run_eval
|
||||
from sglang.test.server_fixtures.default_fixture import DefaultServerBase
|
||||
|
||||
register_cuda_ci(est_time=48, stage="base-b", runner_config="1-gpu-small")
|
||||
register_cpu_ci(est_time=320, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestTransformersBackendEval(DefaultServerBase):
|
||||
|
||||
@@ -8,7 +8,11 @@ from prometheus_client.samples import Sample
|
||||
|
||||
from sglang.srt.observability.metrics_collector import QueueCount
|
||||
from sglang.srt.utils import kill_process_tree
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import (
|
||||
DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH,
|
||||
DEFAULT_URL_FOR_TEST,
|
||||
@@ -22,6 +26,7 @@ register_cuda_ci(
|
||||
runner_config="1-gpu-small",
|
||||
)
|
||||
register_amd_ci(est_time=60, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=179, suite="base-b-test-cpu")
|
||||
|
||||
_MODEL_NAME = "Qwen/Qwen3-0.6B"
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestQuantLogString(CustomTestCase):
|
||||
|
||||
@@ -10,6 +10,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
@@ -19,6 +19,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
_HTTP_SCOPE = {
|
||||
"type": "http",
|
||||
|
||||
@@ -6,7 +6,11 @@ import unittest
|
||||
import aiohttp
|
||||
|
||||
from sglang.srt.utils import kill_process_tree
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import (
|
||||
DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH,
|
||||
DEFAULT_URL_FOR_TEST,
|
||||
@@ -18,6 +22,7 @@ from sglang.test.test_utils import (
|
||||
|
||||
register_cuda_ci(est_time=120, suite="nightly-1-gpu", nightly=True)
|
||||
register_amd_ci(est_time=120, suite="nightly-amd-1-gpu", nightly=True)
|
||||
register_cpu_ci(est_time=184, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestRoutingKeyScheduling(CustomTestCase):
|
||||
|
||||
@@ -28,6 +28,7 @@ from sglang.srt.constrained.reasoner_grammar_backend import ReasonerGrammarObjec
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(2.0, "base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def _make_scheduler(grammar_backend_name="none", skip_tokenizer=False):
|
||||
|
||||
@@ -16,6 +16,7 @@ from sglang.srt.constrained.torch_ops.token_filter_torch_ops import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(2.0, "base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class _DummyTokenizer:
|
||||
|
||||
@@ -15,6 +15,7 @@ from sglang.srt.constrained.utils import is_legacy_structural_tag
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(1.0, "base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestIsLegacyStructuralTag(unittest.TestCase):
|
||||
|
||||
@@ -57,6 +57,7 @@ from sglang.srt.managers.io_struct import EmbeddingReqInput
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
# Mock TokenizerManager for embedding tests
|
||||
|
||||
@@ -32,6 +32,7 @@ from sglang.srt.function_call.qwen3_coder_detector import Qwen3CoderDetector
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=61, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestPythonicDetector(unittest.TestCase):
|
||||
|
||||
@@ -19,6 +19,7 @@ from sglang.srt.function_call.utils import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(5, "base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestJsonSchemaConstraint(unittest.TestCase):
|
||||
|
||||
@@ -24,6 +24,7 @@ from sglang.srt.function_call.json_array_parser import JsonArrayParser
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(5, "base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestParallelToolCalls(unittest.TestCase):
|
||||
|
||||
@@ -10,6 +10,7 @@ from sglang.srt.function_call.core_types import StreamingParseResult
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(5, "base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class DummyDetector(BaseFormatDetector):
|
||||
|
||||
@@ -2,7 +2,11 @@ import copy
|
||||
import unittest
|
||||
|
||||
from sglang.srt.managers.io_struct import GenerateReqInput
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import (
|
||||
DEFAULT_SMALL_MODEL_NAME_FOR_TEST,
|
||||
DEFAULT_URL_FOR_TEST,
|
||||
@@ -11,6 +15,7 @@ from sglang.test.test_utils import (
|
||||
|
||||
register_cuda_ci(est_time=8, stage="base-b", runner_config="1-gpu-large")
|
||||
register_amd_ci(est_time=8, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestGenerateReqInputNormalization(CustomTestCase):
|
||||
|
||||
@@ -9,11 +9,16 @@ from sglang.srt.mem_cache.base_prefix_cache import (
|
||||
IncLockRefResult,
|
||||
)
|
||||
from sglang.srt.server_args import ServerArgs, set_global_server_args_for_scheduler
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cuda_ci(est_time=9, stage="base-b", runner_config="1-gpu-small")
|
||||
register_amd_ci(est_time=2, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestPrefillAdder(CustomTestCase):
|
||||
|
||||
@@ -2,10 +2,15 @@ import json
|
||||
import unittest
|
||||
|
||||
from sglang.srt.managers.io_struct import ProfileReqInput
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
|
||||
register_cuda_ci(est_time=8, stage="base-b", runner_config="1-gpu-small")
|
||||
register_amd_ci(est_time=9, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestProfileMergerHTTPAPI(unittest.TestCase):
|
||||
|
||||
@@ -13,6 +13,7 @@ from sglang.srt.managers.scheduler_components.flush_wrapper import (
|
||||
)
|
||||
|
||||
register_cpu_ci(est_time=14, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestSchedulerFlushCache(unittest.TestCase):
|
||||
|
||||
@@ -12,6 +12,7 @@ from sglang.srt.managers.scheduler import Scheduler
|
||||
from sglang.srt.managers.scheduler_components.pool_stats_observer import PoolStats
|
||||
|
||||
register_cpu_ci(est_time=15, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=9, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestSchedulerPauseGeneration(unittest.TestCase):
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
import unittest
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
@@ -12,10 +12,15 @@ from sglang.srt.mem_cache.base_prefix_cache import (
|
||||
from sglang.srt.mem_cache.cache_init_params import CacheInitParams
|
||||
from sglang.srt.mem_cache.memory_pool import MHATokenToKVPool, ReqToTokenPool
|
||||
from sglang.srt.mem_cache.radix_cache import RadixCache, RadixKey
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
|
||||
register_cuda_ci(est_time=8, stage="base-b", runner_config="1-gpu-small")
|
||||
register_amd_ci(est_time=8, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestSLRUAccuracy(unittest.TestCase):
|
||||
|
||||
@@ -2,11 +2,16 @@ import unittest
|
||||
from unittest.mock import patch
|
||||
|
||||
from sglang.srt.models.llava import AutoModel, LlavaForConditionalGeneration
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cuda_ci(est_time=9, stage="base-b", runner_config="1-gpu-small")
|
||||
register_amd_ci(est_time=9, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class PixtralVisionConfig:
|
||||
|
||||
@@ -7,6 +7,7 @@ from unittest.mock import MagicMock, patch
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=60, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestCpuMonitor(unittest.TestCase):
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
import asyncio
|
||||
import unittest
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
import unittest
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ from sglang.srt.observability.utils import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestMetricsUtils(unittest.TestCase):
|
||||
|
||||
@@ -6,6 +6,7 @@ from typing import Any, Dict, List, Optional
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
import asyncio
|
||||
import json
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
import unittest
|
||||
from unittest.mock import MagicMock, patch
|
||||
|
||||
@@ -19,6 +19,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestFimPosition(CustomTestCase):
|
||||
|
||||
@@ -33,6 +33,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestConversationGetPrompt(CustomTestCase):
|
||||
|
||||
@@ -15,6 +15,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestEvent(CustomTestCase):
|
||||
|
||||
@@ -10,6 +10,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestTemplateContentFormatDetection(CustomTestCase):
|
||||
|
||||
@@ -5,6 +5,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
# Simulated model output that contains think tags (e.g. from DeepSeek-R1)
|
||||
THINK_OUTPUT = (
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
import json
|
||||
import unittest
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=9, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
import unittest
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=9, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
import unittest
|
||||
from unittest.mock import MagicMock, patch
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
import unittest
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
@@ -12,6 +12,7 @@ from sglang.test.test_utils import (
|
||||
)
|
||||
|
||||
register_cpu_ci(est_time=10, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=12, suite="base-b-test-cpu")
|
||||
|
||||
# Mock get_device() so all tests run on CPU-only CI runners
|
||||
_mock_device = patch("sglang.srt.server_args.get_device", return_value="cuda")
|
||||
|
||||
@@ -7,6 +7,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestRunaiUtils(CustomTestCase):
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
import unittest
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ from sglang.srt.utils.auth import AuthLevel, decide_request_auth
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestHttpServerAdminAuth(unittest.TestCase):
|
||||
|
||||
@@ -11,6 +11,7 @@ from sglang.srt.utils.json_response import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestJSONResponseUtils(unittest.TestCase):
|
||||
|
||||
@@ -12,6 +12,7 @@ from sglang.srt.utils.patch_tokenizer import (
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=30, suite="base-a-test-cpu", nightly=True)
|
||||
register_cpu_ci(est_time=53, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestPatchTokenizerEndToEndTest(unittest.TestCase):
|
||||
|
||||
@@ -15,10 +15,15 @@ import unittest
|
||||
|
||||
from sglang.srt.managers.io_struct import ProfileReq, ProfileReqInput, ProfileReqType
|
||||
from sglang.srt.utils.profile_merger import ProfileMerger
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
|
||||
register_cuda_ci(est_time=9, stage="base-b", runner_config="1-gpu-small")
|
||||
register_amd_ci(est_time=8, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestProfileMerger(unittest.TestCase):
|
||||
|
||||
@@ -25,6 +25,7 @@ from sglang.test.ci.ci_register import register_cpu_ci
|
||||
from sglang.test.test_utils import CustomTestCase
|
||||
|
||||
register_cpu_ci(est_time=9, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=9, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def healthy_worker():
|
||||
|
||||
@@ -11,6 +11,7 @@ from sglang.srt.utils.log_utils import create_log_targets, log_json
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=6, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
_LOG_PREFIX_RE = re.compile(r"^\[\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}\] ")
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ from sglang.srt.utils.model_file_verifier import (
|
||||
generate_checksums,
|
||||
verify,
|
||||
)
|
||||
from sglang.test.ci.ci_register import register_cuda_ci
|
||||
from sglang.test.ci.ci_register import register_cpu_ci, register_cuda_ci
|
||||
from sglang.test.test_utils import (
|
||||
DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH,
|
||||
DEFAULT_URL_FOR_TEST,
|
||||
@@ -29,6 +29,7 @@ from sglang.test.test_utils import (
|
||||
|
||||
# Note: AMD registration removed - test_model_file_verifier fails on AMD
|
||||
register_cuda_ci(est_time=120, suite="nightly-1-gpu", nightly=True)
|
||||
register_cpu_ci(est_time=540, suite="base-b-test-cpu")
|
||||
|
||||
MODEL_NAME = "Qwen/Qwen3-0.6B"
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ from sglang.srt.utils.network import NetworkAddress
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
# Mock get_device() so ServerArgs tests run on CPU-only CI runners
|
||||
_mock_device = patch("sglang.srt.server_args.get_device", return_value="cuda")
|
||||
|
||||
@@ -16,6 +16,7 @@ from sglang.test.test_utils import CustomTestCase
|
||||
from sglang.utils import normalize_base_url, release_port, reserve_port
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestTryBindSocket(CustomTestCase):
|
||||
|
||||
@@ -8,10 +8,11 @@ import timeit
|
||||
import unittest
|
||||
|
||||
from sglang.srt.managers.io_struct import SamplingParams
|
||||
from sglang.test.ci.ci_register import register_amd_ci
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cpu_ci
|
||||
from sglang.utils import TypeBasedDispatcher
|
||||
|
||||
register_amd_ci(est_time=10, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class TestTypeBasedDispatcher(unittest.TestCase):
|
||||
|
||||
@@ -3,11 +3,16 @@ from types import SimpleNamespace
|
||||
|
||||
import pytest
|
||||
|
||||
from sglang.test.ci.ci_register import register_amd_ci, register_cuda_ci
|
||||
from sglang.test.ci.ci_register import (
|
||||
register_amd_ci,
|
||||
register_cpu_ci,
|
||||
register_cuda_ci,
|
||||
)
|
||||
from sglang.test.test_utils import run_doctests
|
||||
|
||||
register_cuda_ci(est_time=11, stage="base-b", runner_config="1-gpu-small")
|
||||
register_amd_ci(est_time=20, suite="stage-b-test-1-gpu-small-amd")
|
||||
register_cpu_ci(est_time=8, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
def test_resolve_evs_config():
|
||||
|
||||
@@ -6,6 +6,7 @@ from sglang.srt.utils import sample_video_frames
|
||||
from sglang.test.ci.ci_register import register_cpu_ci
|
||||
|
||||
register_cpu_ci(est_time=7, suite="base-a-test-cpu")
|
||||
register_cpu_ci(est_time=7, suite="base-b-test-cpu")
|
||||
|
||||
|
||||
class DummyVideo:
|
||||
|
||||
@@ -28,7 +28,7 @@ class TestCPUGraph(CustomTestCase):
|
||||
"--batch-size",
|
||||
"1",
|
||||
"--mem-fraction-static",
|
||||
"0.05",
|
||||
"0.5",
|
||||
"--enable-torch-compile",
|
||||
"--torch-compile-max-bs",
|
||||
"2",
|
||||
@@ -55,7 +55,7 @@ class TestCPUGraph(CustomTestCase):
|
||||
"--attention-backend",
|
||||
"intel_amx",
|
||||
"--mem-fraction-static",
|
||||
"0.05",
|
||||
"0.5",
|
||||
"--disable-radix",
|
||||
"--trust-remote-code",
|
||||
"--disable-overlap-schedule",
|
||||
|
||||
Reference in New Issue
Block a user