Repository navigation
feat(hipblaslt): TDMSplit memtoken amendment - #8658
Merged
Merged
Conversation
Codecov Report❌ Patch coverage is ❌ Your project status has failed because the head coverage (76.92%) is below the target coverage (80.00%). You can increase the head coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## develop #8658 +/- ##
===========================================
- Coverage 71.33% 71.32% -0.01%
===========================================
Files 2628 2628
Lines 413043 413121 +78
Branches 61875 61886 +11
===========================================
+ Hits 294613 294635 +22
- Misses 96656 96706 +50
- Partials 21774 21780 +6
*This pull request uses carry forward flags. Click here to find out more.
🚀 New features to boost your workflow:
|
hcman2
reviewed
Jun 24, 2026
Serge45
force-pushed
the
users/sergelu/tdm-split-mem-token
branch
from
June 25, 2026 10:12
cca71a8 to
4db39b4
Compare
Contributor
|
Will you add GSU > 1 test case? |
Serge45
force-pushed
the
users/sergelu/tdm-split-mem-token
branch
from
July 1, 2026 14:00
4db39b4 to
28275cc
Compare
✅ All Checks Passed — Ready for Review
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
|
🎉 All checks passed! This PR is ready for review. |
jichangjichang
approved these changes
Jul 3, 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.
Motivation
JIRA ID - AIHPBLAS-3993
Fixes correctness and codegen bugs in TDMSplit (split
tensor_load_to_ldsinto two half-tile loads) for gfx1250 TDM kernels, and adds dedicated BF16/MXF8 test coverage.Technical Details
dim1boundary correctly for wave-separated loads. The component term now accounts fordim1Divisor, and the second split half (dim1_h1 = dim1_h0 - mt//dim1Divisor) is clamped to 0 on underflow. Previously a shared/incorrectdim1at theM mod MT0 == MT0/2edge caused one half to load nothing and another to over-read OOB, corrupting ~half the output.dim1is stored as a raw 32-bit row count and packed viasetTensorDim1.NumWaves == 1allocation block for per-tensor split-increment SGPRs(
tdm{A,B}GlobalSplitIncs/tdm{A,B}LdsSplitIncs), replacing deadelsecode that left them undefined and caused an assembler "expected absolute expression" error._PreservedBarrierModuleso the SIA4 scheduling pass does not strip the current-LR WAR barrier forTDMIterateMode.s_wait_tensorcntat ordinary NLL entry for PLR0 GSU kernels; defer MX-scale tensor loads in SIA0 PGR2 to fix a self-wave LDS WAR hazard.ds_reads; fix B-tile read half-token for single-vector tiles.tdm_split_gfx1250.yamlcovering BF16 and MXF8 (Block16/Block32) withTDMSplit=[False,True],SIA=[0,4], and edge-M problem sizes; remove redundant TDMSplit combos frommxf8_gfx1250.yaml.Test Plan
tdm_split_gfx1250.yamlpasses on gfx1250 (BF16 + MXF8 Block16/Block32), including non-aligned edge-M sizes (M=129, M=257)Test Result
Above tests passed on GPU.
Submission Checklist