-
Notifications
You must be signed in to change notification settings - Fork 167
Tune gemm op bf16 #1190
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
Tune gemm op bf16 #1190
Conversation
* update * fix * fix2 * update * update gemm/fmoe tune * modify README.md * update gen_instances.py * fix lint error * fix typo * rm env AITER_CONFIG_** in ck gen_instances.py * update a8w8_blockscale_bpreshuffle * support to read config from multiple tuned files * fix error in batch_gemm --------- Co-authored-by: Ying.Zhou2 <Ying.Zhou2@amd.com> Co-authored-by: Xin Huang <Xin.Huang@amd.com>
…1170) * Make bool guard return func itself * make all return func * write querysol fake
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 support for BF16 ASM (assembly) GEMM kernels to the tuning framework, allowing these optimized kernels to be benchmarked and included in the tuning results alongside existing hipBLAS and rocBLAS solutions.
- Integrates BF16 ASM kernels into the GEMM tuning pipeline with splitK support
- Updates data structures and CSV formats to accommodate new kernel information
- Modifies the tuned GEMM lookup system to handle ASM kernel parameters
Reviewed Changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 13 comments.
Show a summary per file
| File | Description |
|---|---|
| gradlib/gradlib/gemm_tuner.py | Added splitK command line argument (commented out in usage) |
| gradlib/gradlib/GemmTuner.py | Core implementation adding ASM kernel tuning, updated CSV format, and enhanced result tracking |
| gradlib/README.md | Updated documentation with new CSV column descriptions |
| csrc/py_itfs_cu/asm_gemm_a16w16.cu | Modified kernel selection logic to handle optional parameters |
| aiter/tuned_gemm.py | Updated solution lookup to support ASM kernels with splitK and kernel name parameters |
| aiter/configs/untuned_gemm.csv | Added test GEMM configurations |
| aiter/configs/tuned_gemm.csv | Updated CSV format with new columns and sample tuned results |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
rm m < 256 limitation in gemm_op_a4w4.py
* add asm bf16_gemm to gemm tuner * mdf_fileName (ROCm#1160) * Tuning Utility update (ROCm#1102) * update * fix * fix2 * update * update gemm/fmoe tune * modify README.md * update gen_instances.py * fix lint error * fix typo * rm env AITER_CONFIG_** in ck gen_instances.py * update a8w8_blockscale_bpreshuffle * support to read config from multiple tuned files * fix error in batch_gemm --------- Co-authored-by: Ying.Zhou2 <Ying.Zhou2@amd.com> Co-authored-by: Xin Huang <Xin.Huang@amd.com> * [MI35X] Fix meta mha 950 error to make guard return bool func itself (ROCm#1170) * Make bool guard return func itself * make all return func * write querysol fake * Migrate tests to mi325-1gpu runner due to the slow network issues on TW cluster (ROCm#1166) * Temporarily using mi355 runners util issues on mi325 runners are fixed (ROCm#1176) * Update sglang_downstream.yaml to use aiter-mi325-1gpu runner (ROCm#1181) * CI: Add Aiter Release Package CI (ROCm#1171) * update gemmTuner * update tuned_gemm.py * fix lint error * update asm maxSplitK and tuned_gemm.csv * Add AITER_CONFIG_GEMM_BF16 and profile_file params to save all temp results * fix error * add padded_m logic and update gemm_common * refactor get tuned config in tuned_gemm rm m < 256 limitation in gemm_op_a4w4.py * fix lint err * wrapper the get_gemm_a16w16_config using torch_compile_guard * fix lint error * refactor tuned_gemm.py * wrapper gemm_a16w16 with torch_compile_guard * fix lint error * add gen_fake func * update * updae GemmTuner --profile_file --------- Co-authored-by: amd-ruitang3 <145657428+amd-ruitang3@users.noreply.github.com> Co-authored-by: Lingpeng Jin <103567126+valarLip@users.noreply.github.com> Co-authored-by: Xin Huang <Xin.Huang@amd.com> Co-authored-by: ZhangLirong <lirzhang@amd.com> Co-authored-by: valarLip <340077269@qq.com>
Motivation
add gemm bf16 asm kernel to be tuned
Technical Details
Test Plan
Test Result
Submission Checklist