Repository navigation
Conversation
|
/bot run --disable-fail-fast |
cd5f671 to
5d24e81
Compare
|
/bot run --disable-fail-fast |
|
PR_Github #79103 [ run ] triggered by Bot. Commit: |
|
PR_Github #79103 [ run ] completed with state
|
5d24e81 to
4d16da2
Compare
|
/bot run --disable-fail-fast |
4d16da2 to
7333ac8
Compare
|
/bot run --disable-fail-fast |
|
PR_Github #79291 [ run ] triggered by Bot. Commit: |
|
PR_Github #79291 [ run ] completed with state
|
|
/bot run --disable-fail-fast |
|
PR_Github #79385 [ run ] triggered by Bot. Commit: |
|
PR_Github #79385 [ run ] completed with state
|
|
/bot run --disable-fail-fast |
|
PR_Github #79616 [ run ] triggered by Bot. Commit: |
|
/bot run --disable-fail-fast |
Brings in NVIDIA#20623 at ffa76ab (the NVIDIA#20306 head 300c1c1 merged in, sm107 target kernels under ops). No change to the context path. Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
|
PR_Github #79695 [ run ] triggered by Bot. Commit: |
|
PR_Github #79616 [ run ] completed with state |
646c6f4 to
50074ec
Compare
|
/bot run --disable-fail-fast |
|
PR_Github #81809 [ run ] triggered by Bot. Commit: |
|
PR_Github #81809 [ run ] completed with state
|
Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
…gets Move common Python operators, kernel implementations, native code and test helpers to the MiniMax-M3 family while preserving TP-specific assembly, shape/tactic tables, topology and runtime state. Keep existing numerical and dispatch policies, and add shared distributed sampling coverage. Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
50074ec to
04f4a3f
Compare
|
/bot run --disable-fail-fast |
|
PR_Github #81870 [ run ] triggered by Bot. Commit: |
|
PR_Github #81870 [ run ] completed with state
|
Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
|
/bot run --disable-fail-fast |
|
PR_Github #81918 [ run ] triggered by Bot. Commit: |
|
PR_Github #81918 [ run ] completed with state
|
Signed-off-by: peihengh <259410613+peihu-nv@users.noreply.github.com>
|
/bot run --disable-fail-fast |
|
PR_Github #82000 [ run ] triggered by Bot. Commit: |
|
PR_Github #82000 [ run ] completed with state
|
|
/bot run --disable-fail-fast |
|
PR_Github #82111 [ run ] triggered by Bot. Commit: |
|
PR_Github #82111 [ run ] completed with state
|
@coderabbitai summary
Description
Depends on #20306 (flat staircase layout of the sm_103 targets). This PR adds only the last commit; please review that commit.
This PR brings the MiniMax-M3 NVFP4 decode targets to Rubin (sm_107):
minimax_m3_nvfp4__sm_107__tp2,__tp4and__tp8. They follow the flat layout of the sm_103 targets: onemodeling.pyper target, aweights.pyweight table, and anops/catalog entry with certified cells and a test for every kernel the model calls. The router picks a target only for the matching checkpoint, SM and width, andmodeling_v2: requiremakes it mandatory.Performance
On Rubin (VR200), MiniMax-M3 NVFP4 AgentX with Eagle3, against the stock decode path (
modeling_v2off):sm_107 enablement
Arch.SM_107, and routing entries for (10, 7) at 2, 4 and 8 ranks, with the same drafter and runtime declines as sm_103.minimaxM3Sm107Tp{2,4,8}with theirtrtllm::minimax_m3_sm107*thop ops, plus two shared GEN kernels: the TF32 tensor-core router GEMV and the spec-tail draft-input step.RuntimeHooksturns it on, so other models are unchanged.WorkTileInforebind to its own compiles, so other CuTe DSL kernels (e.g. FA4) are unaffected.RuntimeHooks; the MiniMax-M3 sm_107 targets do, and other models are unchanged. The AllReduce tuner leavesNCCL_SYMMETRICout of its candidates only withTRTLLM_AR_TUNE_NCCL_SYMMETRIC=0(opt-in; the default keeps the old candidates).The targets
All three share one structure; they differ in rank geometry and row ranges.
m3_sparse_decode_lcm3_sparse_decode_lcm3_sparse_decode_lc8TRTLLM_MODELING_V2_VALUE_DUMP), as in the sm_103 targets. Every fast path is on by default and has one module constant that turns it off. Capacity bounds carry a# capacity:annotation.Aggregated (wide) decode at TP2
Numerics. No lossy steps. Most kernels are bitwise equal to the stock op they replace; the rest reduce in a fixed order, are deterministic in eager and graph mode, and stay within the stock kernel's error band. One known divergence: the TP4 drafter all-reduce + RMSNorm always sums like ONESHOT, so under a forced NCCL strategy its rounding differs from stock NCCL. Against the earlier wide TP2 reference, target tokens are identical: at 12+ concurrent requests under Eagle3 some draft tokens can resolve near-ties differently (target logits bitwise), and without speculation (not a production configuration) decode steps of 9..48 rows are bitwise on the first such step and differ after it, with identical output tokens. Steps of 1..8 rows are bitwise for prompts up to about 12K tokens, and at TP8 also for a single 83K-token request (prefill and decode).
Not in this PR: batch 4/8 decode at TP4 / TP8 (follow-up). The prefill (context) optimizations are in #20629.
Known behaviours: The pinned SM107 MXFP8 GEMM tactics are armed process-wide by an executor whose model opts in, so another model in the same process at the same GEMM shape also uses them; its outputs are bitwise unchanged (every pinned tactic equals the default), and the LLM API runs one executor per worker process.
Test Coverage
new_tokensin Eagle3 context steps. Re-run on the final commit at TP2 and TP4 (no speculation and Eagle3): bitwise at every step of 1..8 rows; at TP2 the first difference is a 45-row context step, which this PR moves to the wide cells.executor/,speculative/, attention): 255 pass, 1 skipped.PR Checklist
Please review the following before submitting your PR:
PR description clearly explains what and why. If using CodeRabbit's summary, please make sure it makes sense.
PR Follows TRT-LLM CODING GUIDELINES to the best of your knowledge.
Test cases are provided for new code paths (see test instructions)
If PR introduces API changes, an appropriate PR label is added - either
api-compatibleorapi-breaking. Forapi-breaking, includeBREAKINGin the PR title.Any new dependencies have been scanned for license and vulnerabilities
CODEOWNERS updated if ownership changes
Documentation updated as needed
Update tava architecture diagram if there is a significant design change in PR.
The reviewers assigned automatically/manually are appropriate for the PR.
Please check this after reviewing the above items as appropriate for this PR.
GitHub Bot Help
To see a list of available CI bot commands, please comment
/bot help.