Repository navigation
[None][fix] Update vendored PrimTS with FlashInfer #4829 follow-ups - #18996
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 12 included reviews per hour; 11 remain after this review. WalkthroughThe vendored PrimTS source pin was updated. PrimTS API decorators and CUTE DSL imports were aligned with the updated source. MLA CUDA-graph replay coverage now tests two maximum sequence lengths and validates kernel selection. ChangesPrimTS API updates
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to The vendored PrimTS revision and MLA replay coverage are updated, with reported validation completing successfully. No actionable merge-blocking correctness or deployment risk remains. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 1 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
/bot run --disable-fail-fast |
|
PR_Github #72641 [ run ] triggered by Bot. Commit: |
|
Automatically added "ci: full pre-merge approved" because this PR has satisfied the required GitHub review approvals. Unresolved review conversations and other required checks remain independent merge requirements. |
|
PR_Github #72641 [ run ] completed with state |
…-ups Pin the consolidated follow-up backport on a temporary FlashInfer branch based on trtllm-prims-ts-dev. Include short-KV MLA auto fallback, explicit decode length ownership, optional context metadata optimizations, and contiguous MMA task dependency fixes. Refresh the existing vendor compatibility patch without changing its adaptations, regenerate the lock digests, and cover the short-KV MLA fallback in CUDA graph replay. Leave the canonical upstream dev branch and the independent FP8 MLA integration unchanged. Signed-off-by: Yuxian Qiu <142763828+yuxianq@users.noreply.github.com>
a8e8a74 to
86e6643
Compare
|
/bot run --disable-fail-fast |
|
PR_Github #72707 [ run ] triggered by Bot. Commit: |
|
PR_Github #72707 [ run ] completed with state |
----- BEGIN PRIMTS PROMOTION V1 -----
{
"canonical_branch": "trtllm-prims-ts-dev",
"canonical_url": "https://github.com/yuxianq/flashinfer.git",
"changes": [
{
"commits": [
"b0d190d4f2420f0c2a0ab3a6efeef4439c2aa996"
],
"upstream_base": "13099a68b2f663cea0400a2c161d5264010dfc9c",
"upstream_head": "c5611f76fd6e2c4abd565fe8570d536f24fe96ef",
"upstream_merge": "3985489542af7adba88b970e634cf7490d72ff63",
"upstream_pr": "flashinfer-ai/flashinfer#4829"
}
],
"kind": "promotion",
"previous": "bad2bdb15aac3553934e7a7a164dcb2ca4fda7f1",
"promoted": "b0d190d4f2420f0c2a0ab3a6efeef4439c2aa996",
"source_branch": "trtllm-prims-ts-dev-4829-backport",
"source_url": "https://github.com/yuxianq/flashinfer.git",
"trtllm_merge": "81485db3d1cb2a5c59c7cef5a0669d9ab7e64777",
"trtllm_pr": "#18996",
"upstream_base": "1c142d58d7cb8b394e43517fc18ec7c970b5f5bd",
"upstream_observed_main": "c423bf20b26ccafba69caa7286c332eca55936ae",
"vendor": "flashinfer-prims-ts",
"version": 1
}
----- END PRIMTS PROMOTION V1 -----
Signed-off-by: Yuxian Qiu <142763828+yuxianq@users.noreply.github.com>
Dev Engineer Review
bf444275170ed1134644c5f682d179e72bb44a58. Patch and source digests were regenerated.@flashinfer_apidecorators instead.trtllm-prims-ts-devbranch, and FP8 MLA integration.QA Engineer Review
tests/unittest/_torch/attention/test_prims_ts_attention_backend.pywas modified.test_prims_ts_mla_live_wrapper_cuda_graph_replay()now runs with maximum sequence lengths of 64 and 1024. The 64-token case verifies selection of thethroughput_2ctakernel.Per-File QA Perspective
3rdparty/vendor_patches/flashinfer-prims-ts.patch: Verify 1-CTA MLA fallback, short-KV bounds, CTA metadata, decode sequence-length handling, and contiguous-context MMA dependencies. Verify that removing trace-template imports does not break API consumers.3rdparty/vendor_sources.lock.yaml: Verify that the vendor commit, patch digest, and source digest match the checked-in vendor contents.tests/unittest/_torch/attention/test_prims_ts_attention_backend.py: Verifies MLA CUDA graph replay at 64 and 1024 maximum sequence lengths, includingthroughput_2ctaselection for the short configuration. No test-list change is included.Description
Backport the remaining PrimTS follow-ups from merged FlashInfer #4829 without importing unrelated changes from newer FlashInfer main.
bad2bdb15aac3553934e7a7a164dcb2ca4fda7f1tob0d190d4f2420f0c2a0ab3a6efeef4439c2aa996, on the temporary branchtrtllm-prims-ts-dev-4829-backport.plan()are immutable owned snapshots; otherwise eachrun()supplies its lengths. TRT-LLM already uses the latter mode, so its adapter is unchanged.The FlashInfer backport is one consolidated commit based on the existing dev tip. Its PrimTS Python delta is patch-equivalent to
18de70f6..c5611f76, the missing follow-up range in #4829 (squash:3985489542af7adba88b970e634cf7490d72ff63). Tests are adapted to the older baseline without importing LDTM.STAT or newer block-sparse features.The canonical
trtllm-prims-ts-devbranch is not advanced by this PR. After merge, the maintainer can fast-forward it to the pinned commit and open the lock-only follow-up. This PR does not enable FP8 MLA in the TRT-LLM adapter and is independent of #18946.Rebase update — 2026-09-10
bf444275→b0d190d4, rebased onto latesttrtllm-prims-ts-dev(bad2bdb1). The backport patch is unchanged (git range-diffreports equality); the CUTLASS DSL 4.8 Task API migration is inherited intact.a8e8a746→86e66439c32747439abb0427f0d629db4ac373af, rebased onto mainb509ae936cd64eec2b09776568293a7170a15729. Only3rdparty/vendor_sources.lock.yamlconflicted. The official vendor tool regenerated the pin/digest; the nine-file backport patch is unchanged outside lock metadata.test_default_is_causal_leaves_other_backends_unchanged: the non-PrimTS JIT path cannot findflashinfer/data/csrc/batch_decode_customize_config.jinjain this worktree. No product-code fix was applied for this environment limitation. These host checks used the existing CUTLASS 4.7 environment; CUTLASS 4.8 GPU validation is delegated to current-main CI./bot run --disable-fail-fastfor the new head.Test Coverage (before rebase)
test_prims_ts_mla_live_wrapper_cuda_graph_replayto cover a 64-token KV bound, assert the 2-CTA fallback, and retain the existing 1024-token case.scripts/vendor_sources.py check flashinfer-prims-ts --upstream --require-access).pre-commit run --all-filespassed in both repositories (TRT-LLM's type hook used its lightweight mode).Local validation limitation: the reused TRT-LLM C++ build does not expose main's new
reuse_match_backoffKV-cache-manager-v2 argument. Three backend tests failed at that binding boundary, before their affected attention execution; V2-dependent cases require a current-main build in CI. No C++ rebuild or full model-weight inference was performed for this source-only update.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.