[None][perf] Select CuTeDSL for low-M MXFP8 decode graphs - #17287
Draft
zheyuf wants to merge 1 commit into
Draft
Conversation
Signed-off-by: Zheyu Fu <zheyuf@nvidia.com>
5 tasks
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.
What changed
1 <= M <= 32to CuTeDSL and retain FlashInfer CUTLASS for larger
M.FlashInfer override.
capture.
Enable the qualified policy with:
The default remains unchanged when the new environment variable is unset.
Why
MiniMax-M3/B300 decode traces showed repeatable MXFP8 projection gaps versus
vLLM. An exhaustive 32-tactic CUTLASS sweep established that this is not only
an autotuner artifact: at
M=1, CuTeDSL is 14.3-20.8% faster than theempirical-best CUTLASS tactic across all seven projection roles.
A 147-case qualification found that CuTeDSL wins every tested role at exact
M={1,2,4,8,16,32}, while six of seven roles cross to CUTLASS atM=64andall roles favor CUTLASS at
M=512/1024. The cutoff therefore keeps thewell-supported low-M gain without broadening CuTeDSL into risky high-M or
prefill/eager execution.
E2E impact
On the 12-point Alex MiniMax-M3 B300 AGG Pareto cohort, each point used four
independent same-node cold deployments in
A-H-H-Aorder. All 48 arms passedrequest-integrity, request-count, provenance, dispatch-scope and node-cleanliness
validation.
inverse-mean-TPOT generation tok/s/user improved 2.53-12.75%.
generation changed sign between the two candidate arms.
low-M replay share.
TTFT changes were mixed and did not track selector hit rate or decode gain.
The selector does not directly alter the context forward that produces the
first token, although faster decode can indirectly affect admission under
saturation. If TTFT is a merge gate, TP4-c2 should receive a targeted repeat
with more cold deployments and per-request admission/first-token telemetry.
Validation
git diff --check.39 passedin the pinned B300 serving container. MXFP8 dispatch unit testscover
M=1,32,33,64, eager/native behavior,CUTLASS fallback autotuning, explicit all-call CuTeDSL, and invalid config.
lifecycle.
m3_mxfp8_gemm_investigation/FINAL_REPORT.mdoutside this source tree.Scope and risk
The patch changes only
MXFP8LinearMethodand its unit tests. It adds no modelor operator-role allowlist, no version-specific signature database, and no
new model-engine state. Non-MXFP8 kernels and the default configuration are
unchanged.