forked from iree-org/iree
-
Notifications
You must be signed in to change notification settings - Fork 11
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[LLVMGPU] Teach KernelConfig to set MMA schedules per op in Lowering…
…Config (iree-org#18984) The main motivation for this change is to enable different intrinsics/layout on different ops inside the same function/dispatch, especially for attention. To that extend, we move the scheduling MMA information such as mma_intrinsic, subgroup_m_count, and subgroup_n_count, from the translation info attached to the function onto the lowering_config per op. Here is a quick summary of things we needed to do to achieve that: 1. Introduce setMmaKind, set/get subgroupMCount, and set/get subgroupMCount on IREE::GPU::LoweringConfigAttr 2. Move configuring of QK matmul's schedule into KernelConfig from LLVMGPUConfigureTensorLayout. 3. Now that qk and pv may have different intrinsic, update information used to decide transposeIntrinsic and reuseIntrinsic in LLVMGPUConfigureTensorLayout 4. Update a bunch of tests to use lowering config to configure MMAs now. --------- Signed-off-by: Stanley Winata <[email protected]>
- Loading branch information
1 parent
ec7528c
commit a5537bc
Showing
12 changed files
with
244 additions
and
157 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.