[Perf][foundry][Mamba] Flatten batch-chunk ownership for placed scans - #1979
Merged
Conversation
zhen8838
force-pushed
the
perf/mamba/da-cumsum-fwd-r1
branch
from
August 24, 2026 17:04
a4cccb2 to
91a4061
Compare
lcy-seso
approved these changes
Aug 25, 2026
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.
Summary
(row, head, pos)writers.mamba_ssmno-bias behavior by reusingAas an unused internal ABI placeholder instead of allocating a CUDA zero-bias tensor.TileFoundry Description
The live Split HIR directly feeds
placed_dtinto the transform. The selected-row reshard documents the ownership conversion required by TileFoundry's Split/IndexCopy semantics.smem_hintrecords the installed CUDA partitioner's SMEM limitation; production shared-memory storage is implemented in TileLang.Performance
Operator:
DaCumsumFwdOptileops-foundry-loop:agentNVIDIA H200595.71.0513.22.13.0+cu1320.1.11+cu132.gitafcebed12.3.2.post1Method: TileOPs manifest benchmark over all five primary workloads, with candidate, incumbent, and mamba_ssm measured under the same contract.
Ratio in comparator columns: implementation / candidate. 🟢 > 1 means the candidate is faster; 🔴 <= 1 means it is not.
/ candidate
/ candidate
🟢 1.2857x
🔴 0.8095x
🟢 1.2893x
🔴 0.5289x
🟢 1.0238x
🔴 0.8095x
🟢 1.2033x
🔴 0.5203x
🟢 1.3423x
🔴 0.4977x
🟢 1.2234x
🔴 0.6175x
Production Mapping
da_cumsum_fwd_placed_mainimplements the same ownership model withROWS_PER_CTA=2. ItsBLOCK_His selected from measured configurations: 1 for theB=1,H=48primary shape and 2 for the other primary shapes. The production body usesT.Parallel(ROWS_PER_CTA, BLOCK_H, Q)for unique(row, head, pos)ownership and passestl.disable_data_race_check=Truebecause the installed verifier cannot prove the affine mapping. This disables only the conservative warning pass; correctness is covered by the full test suite and TileFoundry runtime twin.Result And Limitations
improvement without SOTA
mamba_ssmremains faster on every row with 0.6175x candidate geometric-mean time.