[XPU][CI] Move XPU tests to nightly and add per-subclass server launch timeout (#37532)

This commit is contained in:
ashwini rathi
2026-09-04 12:51:26 +08:00
committed by GitHub
parent 3ad3f23ed5
commit e787de5478
5 changed files with 23 additions and 8 deletions
@@ -70,6 +70,10 @@ class SpecEagleServerBase(CustomTestCase):
dtype = "bfloat16"
cuda_graph_max_bs_decode = None
trust_remote_code = True
# Seconds to wait for the spec server to report healthy. Overridable per
# subclass: EAGLE3 + full CUDA-graph decode capture on XPU can exceed the
# 600s default, so the XPU parity test bumps this.
server_launch_timeout = DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH
# Launch with --enable-return-hidden-states so SpecHiddenStatesKit can probe
# per-request hidden states; per-request gated, so other requests don't pay.
enable_return_hidden_states = False
@@ -144,7 +148,7 @@ class SpecEagleServerBase(CustomTestCase):
cls.process = popen_launch_server(
cls.model,
cls.base_url,
timeout=DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH,
timeout=cls.server_launch_timeout,
other_args=cls._launch_args(),
)
@@ -47,6 +47,9 @@ class TestEagle3ParityXPU(SpecParityKit, _Eagle3ParityBase):
# (via XPUCudaGraphBackend). Opt in explicitly now that it is disabled
# by default so the coverage is preserved.
extra_args = ("--cuda-graph-config", '{"decode":{"backend":"full"}}')
# EAGLE3 + full CUDA-graph decode capture on XPU takes >600s from cold on
# Arc-class GPUs; the 600s default trips a spurious launch timeout here.
server_launch_timeout = 1800
if __name__ == "__main__":
@@ -18,13 +18,11 @@ from sglang.test.test_utils import (
register_xpu_ci(
est_time=360,
suite="stage-b-test-1-gpu-xpu",
disabled="Temporarily disabled until Triton-XPU upgrade",
suite="nightly-xpu-1-gpu",
nightly=True,
)
# TODO: Temporarily disable this test and re-enable it after Triton-XPU is upgraded.
@unittest.skip("Temporarily disabled until Triton-XPU upgrade")
class TestDeepSeekOCRTriton(TestDeepSeekOCR):
@classmethod
def setUpClass(cls):
+2 -2
View File
@@ -130,8 +130,8 @@ from sglang.test.ci.ci_register import register_xpu_ci
# Single e2e test: boot + a short Q&A.
register_xpu_ci(
est_time=240,
suite="stage-b-test-1-gpu-xpu",
disabled="OOM on stage-b XPU runner (server launch fails with --mem-fraction-static)",
suite="nightly-xpu-1-gpu",
nightly=True,
)
if __name__ == "__main__":
@@ -13,7 +13,17 @@ from sglang.test.test_utils import (
run_bench_serving,
)
register_xpu_ci(est_time=600, suite="nightly-xpu-1-gpu", nightly=True)
register_xpu_ci(
est_time=600,
suite="nightly-xpu-1-gpu",
nightly=True,
disabled=(
"XPU fused MoE has no fp8-w8a8 kernel: sgl_kernel/moe.py:505 asserts "
"use_fp8_w8a8 is False, so the fp8-MoE model "
"(DEFAULT_MODEL_NAME_FOR_TEST_FP8_WITH_MOE = gaunernst/DeepSeek-V2-Lite-Chat-FP8) "
"crashes the server. Re-enable once an XPU fp8-w8a8 MoE kernel lands."
),
)
def triton_attention_benchmark(extra_args=None, mem_fraction_static="0.84"):