[SGLANG] Standalone test workflow with per family suites on PVC and BMG - #7725
Open
dev-tomek wants to merge 15 commits into
Open
[SGLANG] Standalone test workflow with per family suites on PVC and BMG#7725dev-tomek wants to merge 15 commits into
dev-tomek wants to merge 15 commits into
Conversation
Splits the single --sglang suite into one suite per kernel family and wires them into the SGLang matrix workflow: attention, quant, moe, mamba, gdn, kda, spec. --sglang keeps running all of them. Test files come from the list agreed in #7655. The kernel/test mapping and the files that cannot be wired in yet are documented in scripts/sglang/README.md. Skip lists are populated from a local Max 1100 run. Nothing fails because of Triton codegen: the skips are tests hardcoding device="cuda", SGLang fla kernels still using tl.make_block_ptr (removed in favour of TensorDescriptor), and one torch reference that does not fit in 48 GB. Five agreed files are not wired in at all because they import sgl_kernel, which is not installed on XPU. The suites run without -n, like the vLLM ones: under -n 4 the attention tests take down an xdist worker with a GPU page fault on a single-GPU runner. Signed-off-by: Witold Dziurdz <witold.dziurdz@intel.com>
setup.py builds with -j(2 * cores) by default. On b580 that OOM-killed cc1plus while compiling ConvertWarpSpecializeToLLVM.cpp, so the BMG setup job failed and the whole test matrix was skipped. Add a max_jobs input to the reusable workflow and pass 8 from both b580 callers. PVC keeps the default. Also add two quant test files that already pass on XPU: test_triton_scaled_mm.py covers triton_scaled_mm from fp8_kernel.py, the kernel module srt imports most often, and test_awq_dequant.py covers awq_dequantize and awq_gemm. Both pick the device with sglang.srt.utils.get_device(), so no patching is needed. The suite goes from 2 passed in 7s to 5 passed in 43s on Max 1100. Signed-off-by: Witold Dziurdz <witold.dziurdz@intel.com>
wdziurdz
force-pushed
the
tkuczynski/7640
branch
from
August 12, 2026 07:11
43426aa to
5fcce0e
Compare
dev-tomek
marked this pull request as ready for review
August 12, 2026 09:23
dev-tomek
marked this pull request as draft
August 12, 2026 09:24
This was
linked to
issues
Aug 12, 2026
dev-tomek
marked this pull request as ready for review
August 19, 2026 07:58
dev-tomek
requested review from
mieshkiwrk,
quinnlp and
whitneywhtsang
and
a lite review from Copilot
August 19, 2026 07:58
Contributor
There was a problem hiding this comment.
Pull request overview
This PR moves SGLang testing out of the monolithic third-party-tests workflow into a dedicated, vLLM-style CI setup, with a reusable workflow that builds a Triton wheel once and then runs SGLang test suites as a matrix across PVC and BMG runners.
Changes:
- Split
run_sglang_testsinto per-kernel-family suites (attention/quant/moe/mamba/gdn/kda/spec) and add correspondingscripts/test-triton.shflags. - Add new SGLang GitHub Actions workflows (manual dispatcher, reusable workflow, and scheduled PVC/BMG wrappers), plus
on-labeltriggers viarun-sglang-tests. - Introduce default + xe2 (BMG) skiplist entries for SGLang suites, and remove the SGLang job from
third-party-tests.yml.
Reviewed changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
scripts/test-triton.sh |
Adds per-family SGLang suite flags and implements suite-specific pytest invocations. |
scripts/sglang/README.md |
Documents SGLang install/test scripts, suite mapping, and CI usage. |
.github/workflows/sglang-tests-reusable.yml |
New reusable workflow to build Triton wheel once and run SGLang suite matrix with reporting. |
.github/workflows/sglang-tests.yml |
Manual dispatcher workflow to invoke the reusable SGLang test workflow with overrides. |
.github/workflows/sglang-tests-pvc.yml |
Scheduled PVC wrapper for SGLang tests. |
.github/workflows/sglang-tests-bmg.yml |
Scheduled BMG wrapper for SGLang tests (xe2 skiplist + capped MAX_JOBS). |
.github/workflows/on-label.yml |
Adds run-sglang-tests label trigger to run SGLang tests on PVC and BMG. |
.github/workflows/third-party-tests.yml |
Removes the SGLang job and updates workflow naming/inputs accordingly. |
scripts/skiplist/default/sglang_{attention,moe,gdn,spec}.txt |
Adds default-suite skip entries for known incompatibilities/OOMs. |
scripts/skiplist/xe2/sglang_{attention,quant,moe,gdn,spec}.txt |
Adds xe2 (BMG) skip entries for known B580-specific or xe2-specific failures. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Contributor
Author
|
Failing liger kernel check unrelated to this PR (fails on main as well), tracked here: #7796 |
quinnlp
reviewed
Aug 21, 2026
quinnlp
reviewed
Aug 21, 2026
quinnlp
reviewed
Aug 21, 2026
This was referenced Aug 24, 2026
quinnlp
reviewed
Aug 24, 2026
| fi | ||
| if [[ -n "$max_jobs" ]]; then | ||
| export MAX_JOBS="$max_jobs" | ||
| fi |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Gives sglang its own test CI instead of a single job inside third-party-tests, mirroring the vLLM setup.
Closes #7640
Closes #7641
Closes #7643
Closes #7652