Repository navigation
fix: route Thor SM110 FP8 and ModelOpt NVFP4 auto backends - #41765
Conversation
|
/rerun-test test/registered/unit/test_platform_context.py test/registered/unit/test_model_overrides.py test/registered/e2e/quantization/test_nvfp4_gemm_sm120.py test/registered/moe/test_glm4_moe_models.py test/registered/unit/layers/quantization/test_fp8_blockwise_linear_backends.py test/registered/unit/test_mxfp8_moe_runner_backend.py test/registered/e2e/quantization/test_modelopt_fp8.py test/registered/e2e/models/test_deepseek_v3_fp4.py |
|
8fdf1be to
b1bbb57
Compare
|
/rerun-test test/registered/unit/test_platform_context.py test/registered/unit/test_model_overrides.py test/registered/e2e/quantization/test_nvfp4_gemm_sm120.py test/registered/moe/test_glm4_moe_models.py test/registered/unit/layers/quantization/test_fp8_blockwise_linear_backends.py test/registered/unit/test_mxfp8_moe_runner_backend.py test/registered/e2e/quantization/test_modelopt_fp8.py test/registered/e2e/models/test_deepseek_v3_fp4.py |
|
b1bbb57 to
60eec0b
Compare
|
/rerun-test test/registered/unit/test_platform_context.py test/registered/unit/test_model_overrides.py test/registered/e2e/quantization/test_nvfp4_gemm_sm120.py test/registered/moe/test_glm4_moe_models.py test/registered/unit/layers/quantization/test_fp8_blockwise_linear_backends.py test/registered/unit/test_mxfp8_moe_runner_backend.py test/registered/e2e/quantization/test_modelopt_fp8.py test/registered/e2e/models/test_deepseek_v3_fp4.py |
|
🚀 🚀 🚀 🚀 🚀 |
…ct#41765) Co-authored-by: Po-Han Huang (NVIDIA) <53919306+nvpohanh@users.noreply.github.com>
Motivation
Fixes #41764.
On NVIDIA Thor (SM110), SGLang's automatic backend choices prevent Qwen3.6-35B-A3B server startup:
/deepgemm/csrc/apis/gemm.hpp:220: Unsupported architecture.AttributeError: 'FusedMoE' object has no attribute 'g1_scale_c'.Both failures reproduced on SGLang
g79cafec01with the backend flags left atauto. These jobs already selected FlashInfer attention; this patch addresses the remaining GEMM and MoE routing failures, separate from the earlier attention restriction in #35080.Modifications
flashinfer_cutlass, extending the existing SM120 rule. Preserve explicit backend choices and other quantization schemes.Implementation:
janbernloehr:fix/sm110-auto-backend-routing, commit8fdf1be4e8c706c849085f0085671f7a31efaac9.Accuracy Tests
The Thor validation image applied the four production routing edits from the linked commit to installed SGLang
g79cafec01, retaining its matching Rust TreeCore extension. All three single-GPU Thor accuracy workloads completed successfully with automatic backend selection. Recordedgsm8k_10percscores (132 examples):An earlier prototype containing the same SM110 GEMM/MoE routing plus a subsequently retired attention override also completed its accuracy pipeline (4/4 jobs) at SGLang
g06008c170. Its Thor scores were 0.795455 (105/132) for Qwen3.5-27B FP8, 0.515152 (68/132) for Qwen3.6-35B-A3B FP8, and 0.121212 (16/132) for Qwen3.6-35B-A3B NVFP4. These are separate validation runs on different SGLang revisions, not an accuracy A/B comparison.Speed Tests and Profiling
Both Qwen3.6-35B-A3B throughput workloads completed on the Thor validation image with the standard
autobackend selections. Recorded average output-token throughput at concurrency 1:For an earlier controlled A/B at SGLang
g0f6761b54, the unpatched Thor pipeline failed at startup, while the prototype containing this routing change and the now-retired attention override passed 3/3 jobs. The patched prototype recorded 48.362 and 31.309 tokens/s for FP8, and 60.572 and 43.253 tokens/s for NVFP4, for the same two benchmark shapes above. A second patched pipeline at SGLangg582389cecalso passed 3/3 jobs.Checklist
compileallpassed for all five changed files; targeted Ruff checks (F401,F821,F823,UP037), the new test file's Ruff formatting check, andgit diff --checkpassed.Review and Merge Process
Follow the repository's PR merge process: request Merge Oncall and CODEOWNERS review, trigger upstream CI, and merge after its required checks and approvals.
CI States
Latest PR Test (Base): ❌ Run #37276146329
Latest PR Test (Extra): ❌ Run #37276145974
Latest PR Test (AMD ROCm 10): ❌ Run #37276146143