[CK_TILE] Fix CShuffleEpilogue test to use correct GEMM accumulator distribution - #4260
Closed
assistant-librarian[bot] wants to merge 9 commits into
Closed
[CK_TILE] Fix CShuffleEpilogue test to use correct GEMM accumulator distribution#4260assistant-librarian[bot] wants to merge 9 commits into
assistant-librarian[bot] wants to merge 9 commits into
Conversation
…and improved verification This commit refactors and expands the CShuffleEpilogue test suite with the following improvements: - Shard tests by data type (FP16, FP8) and add gfx950-specific FP8 tests - Extract scale tests into a separate target for better organization - Implement robust verification using set-based comparison to ensure all expected values are present - Add distribution uniformity checks to verify proper data shuffling - Strengthen verification to require kBlockSize unique values and validate all rows independently - Add support for parameterized test configurations covering various warp layouts and MFMA types - Improve code organization by separating concerns and extracting common utilities - Fix memory leaks and improve code hygiene - Add CMake support for OCP FP8 compilation flag The refactored test suite provides better coverage, more rigorous verification, and improved maintainability for the CShuffleEpilogue functionality. Co-Authored-By: Claude <noreply@anthropic.com>
…evelop/ROCm_composable_kernel/pr-3701
|
Comment: |
tenpercent
force-pushed
the
import/develop/ROCm_composable_kernel/pr-3701
branch
from
February 4, 2026 20:52
3a5dfae to
4b3e611
Compare
The test was using LDS distribution to create the accumulator tile, but CShuffleEpilogue expects the GEMM accumulator distribution that BlockGemm produces. This mismatch caused incorrect data permutation. Changes: - Use WarpGemmDispatcher to get correct accumulator distribution encoding - Load test input from host-initialized global memory instead of generating values per-thread in kernel (ensures deterministic, verifiable input) - Generate unique fp16 bit patterns for exact permutation verification - Simplify convert_fp16_bits to return float directly (was misleading template) - Update verification to check exact permutation (all values appear once) - Reduce tile size from 256x256 to 128x128 to fit in unique fp16 range - Use HostTensor consistently for input/output management - Add file organization documentation to test_cshuffle_epilogue_common.hpp Co-Authored-By: Claude <noreply@anthropic.com>
tenpercent
force-pushed
the
import/develop/ROCm_composable_kernel/pr-3701
branch
from
February 4, 2026 21:28
4b3e611 to
552568d
Compare
tenpercent
marked this pull request as ready for review
February 5, 2026 01:31
ThomasNing
approved these changes
Feb 9, 2026
ThomasNing
enabled auto-merge (squash)
February 9, 2026 19:36
|
@tenpercent Clang format error. |
Run clang-format-18 on modified epilogue test files to align with project coding standards. Changes include alignment of variable assignments and wrapping of long lines/comments. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Contributor
|
Since Math CI never runs in this PR copied it over to #4518 |
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
The test was using LDS distribution to create the accumulator tile, but CShuffleEpilogue expects the GEMM accumulator distribution that BlockGemm produces. This mismatch caused incorrect data permutation.
Changes
Test plan
🤖 Generated with Claude Code
Co-Authored-By: Claude noreply@anthropic.com