-
Notifications
You must be signed in to change notification settings - Fork 270
Add padding to cshuffle epilogue to avoid bank conflict #3671
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
|
@tenpercent For your reference~ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds padding to the CShuffleEpilogue to avoid bank conflicts on AMD GPUs, specifically targeting 64-way bank conflicts. The changes synchronize the implementation with an internal repository and modify the LDS (Local Data Store) block descriptor generation logic.
Changes:
- Added conditional padding logic for GFX950 architecture to avoid bank conflicts
- Implemented multi-layer LDS block descriptor transformations for both RowMajor and ColumnMajor layouts
- Changed tile distribution pattern from
thread_rakedtowarp_raked
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Proposed changes
Added the padding to CShuffle Epilogue to avoid the bank conflicts of 64. Synced up and learned from the internal repo.
Checklist
Please put an
xinto the boxes that apply. You can also fill these out after creating the PR. If you're not sure, please don't hesitate to ask.clang-formaton all changed filesDiscussion
If this is a relatively large or complex change, feel free to start a discussion by explaining why you chose the solution you did and what alternatives you considered