diff options
author | Charitha Saumya <136391709+charithaintc@users.noreply.github.com> | 2025-03-14 10:21:22 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-03-14 10:21:22 -0700 |
commit | 5eb557774df637c9e581bd3008cfc6d156a61902 (patch) | |
tree | f8bbb937ae09bfe208ddbbc5a2bfd0ba2c3d3853 /clang/lib/Frontend/CreateInvocationFromCommandLine.cpp | |
parent | 87a55191a5c5f1e89c71bda9dceb2f695105a60a (diff) | |
download | llvm-5eb557774df637c9e581bd3008cfc6d156a61902.zip llvm-5eb557774df637c9e581bd3008cfc6d156a61902.tar.gz llvm-5eb557774df637c9e581bd3008cfc6d156a61902.tar.bz2 |
[mlir][xegpu] Add XeGPU subgroup map propagation analysis for XeGPU SIMT distribution. (#130240)
This PR adds the SG map propagation step of the XeGPU SIMT distribution.
SG map propagation is a sparse backward dataflow analysis that propagate
the sg_map backward starting from the operands of certain operations
(DPAS, store etc.).
This is the first step of XeGPU subgroup distribution. This analysis
result is used to attach layout information to each XeGPU SIMD subgroup
op. The lowering patterns in XeGPUSubgroupDistribute will consume these
layout info to distribute SIMD ops into SIMT ops that work on work-item
level data fragments.
### Summary of Lowering XeGPU SIMD -> SIMT
1. Subgroup map propagation (This PR)
2. Attach `sg_map` to each op in move all ops inside
`gpu.warp_execute_on_lane0` region.
3. Distribute each op using `sg_map`
4. Additional legalization steps to align more with Xe HW.
Diffstat (limited to 'clang/lib/Frontend/CreateInvocationFromCommandLine.cpp')
0 files changed, 0 insertions, 0 deletions