Skip to content

Conversation

@yzhou103
Copy link
Contributor

Motivation

add gemm bf16 asm kernel to be tuned

Technical Details

  1. add gemm_bf16 asm kernels to gemmTuner

Test Plan

Test Result

Submission Checklist

yzhou103 and others added 11 commits October 13, 2025 17:35
* 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
Copilot AI review requested due to automatic review settings October 14, 2025 06:44
Copy link
Contributor

Copilot AI left a 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.

@valarLip valarLip self-assigned this Oct 17, 2025
@valarLip valarLip merged commit f0da668 into main Oct 20, 2025
16 of 21 checks passed
@valarLip valarLip deleted the tune_gemm_op_bf16 branch October 20, 2025 04:14
eliotwang pushed a commit to eliotwang/aiter that referenced this pull request Oct 21, 2025
* 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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants