Conversation
This was referenced Sep 10, 2026
Fridge003
force-pushed
the
codex/glm53-ingraph-verify-metadata
branch
from
September 10, 2026 19:59
65ec643 to
879fdc8
Compare
Fridge003
force-pushed
the
codex/glm53-verify-deepgemm-out-of-graph
branch
from
September 10, 2026 19:59
bd4adbb to
dad4773
Compare
Co-authored-by: Xinyuan Tong <xinyuantong.cs@gmail.com> Co-authored-by: zRzRzRzRzRzRzR <Yuxuan.Zhang2@liverpool.ac.uk> Co-authored-by: Shijin Zhang <75300765+Dovis01@users.noreply.github.com> Co-authored-by: zanes-ops <zanes@nvidia.com>
Fridge003
force-pushed
the
codex/glm53-ingraph-verify-metadata
branch
from
September 12, 2026 23:05
879fdc8 to
3b8b482
Compare
Fridge003
force-pushed
the
codex/glm53-verify-deepgemm-out-of-graph
branch
from
September 12, 2026 23:05
dad4773 to
c164ff2
Compare
Collaborator
Author
|
This optimization is not valid |
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.
Motivation
Restore
SGLANG_EXPERIMENTAL_DSA_INGRAPH_VERIFY_METADATA_DG_OUT_OF_GRAPH=1, removed by #38071. It keeps verify metadata refresh in the CUDA graph while rebuilding the full and pooled DeepGEMM schedules eagerly before replay.Depends on PR #38852, the in-graph metadata restoration. For GLM-5.3-Flash, enable all three restored flags. The new flag defaults to false.
#38845 is merged into
main. This PR has been rebased onto the updated #38852 branch so its diff contains only the DeepGEMM option. After #38852 merges, rebase and retarget this PR tomain.Modifications
dsa_metadata_deepgemm.pymodule.Accuracy Tests
Rebased head:
c164ff266e610b521aa1fbb54c49c5e744e589ba. This commit was replayed onto the updated #38852 without conflicts; its functional patch is unchanged. Changed-file pre-commit checks andgit diff --checkpass. The B200 correctness and benchmark results below are the preserved pre-rebase measurements; GPU tests were not rerun for this rebase.On
baizhou-dev-b200(4× B200), commitbd4adbb010462fec7f861973652b27bb536369c4with all three restored flags enabled:SGLANG_EXPERIMENTAL_DSA_KPOOL_METADATA_FUSION=1 \ SGLANG_EXPERIMENTAL_DSA_INGRAPH_VERIFY_METADATA=1 \ SGLANG_EXPERIMENTAL_DSA_INGRAPH_VERIFY_METADATA_DG_OUT_OF_GRAPH=1 PYTHONPATH=python \ python test/registered/e2e/models/test_glm53_flash_b200.py -v # Ran 4 tests: OK (693.815 s)The test file, 500 GSM8K examples, 20 shots and 0.930 floor are unchanged.
The LowLatency speed/acceptance test also passes: 348.25 tok/s, 4.422 accept length (gates: >250 tok/s and >4.0). Real model capture logs confirm
dg_in_graph=Falseon all TP ranks.Cumulative focused GPU regressions pass 9/9, including the new stale-schedule regression:
This full run passes all four checks. The stack's earlier failures are retained: main LowLatency GSM8K scored 0.928, then 0.920 in one controlled repeat; the parent in-graph PR scored 0.926 in its full run, then 0.936 in a separately recorded LowLatency repeat. The 0.928, 0.920 and 0.926 scores fail the unchanged 0.930 floor. This PR remains draft because its parent is draft with an unresolved accuracy gate; this passing run does not establish the cause of the earlier failures.
The additional real-GPU metadata diagnostic also passed 16 configurations × 17 rounds = 272 graph replays with the residual enabled: bs=1/4/16/48, draft lengths 2/4/6/8, changing sequence lengths across pool/page/top-k boundaries through 100001 tokens, and remapped requests. It interleaves live graphs and checks ordinary versus optimized metadata and stable addresses. The parent in-graph path passed the same 272-replay diagnostic. The script, exact heads/flags and logs are in the evidence link below.
Speed Tests and Profiling
Same four B200 GPUs on
baizhou-dev-b200, TP4/EP4, CUDA 13.0, driver 580.173.02, PyTorch 2.13.0+cu130, Triton 3.7.1, DeepGEMM 0.1.7 and FlashInfer 0.6.18. The fixed main baseline is9a2f17f41d185614a17f740c006c4aca84c016bf.Model revisions:
zai-org/GLM-5.3-Flash@eb9eb208eb0d988989d07a6a12d0fdeb5f52574aandincoai/GLM-5.3-Flash-DFlash2@bf582e4eacc1810f76656d1811693ff6c6737d2a. Every weight shard was SHA256-verified.Serving benchmarks use the test file's LowLatency EAGLE recipe, with radix caching disabled consistently for measurement.
bsmeans--max-concurrency; each run sends4 * bsrequests under that concurrency limit. Inputs are exactly 8192 token IDs, outputs exactly 1024 tokens, seed 42, temperature 0, one warmup request and a cache flush. EOS is ignored by the current CLI default. Each cell has three runs; throughput is the median of the three run-level rates, and latency is the median of the three run means; throughput ranges are retained. All measured requests completed with the expected token counts.Latency medians for this PR:
Reproduce from this PR's checkout (other restored flags unset):
In another shell after the server is ready:
Raw run-level measurements, accuracy records and a standalone recomputation script are available together.
Checklist
base-b-kernel-unit.CI States
Latest PR Test (Base): ❌ Run #34724484159
Latest PR Test (Extra): ❌ Run #34724484350
Latest PR Test (AMD ROCm 10): ❌ Run #34724484225