-
Notifications
You must be signed in to change notification settings - Fork 14.1k
[MLIR][XeGPU] Add unroll patterns and blocking pass for XeGPU [2/N] #140163
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
Conversation
✅ With the latest revision this PR passed the C/C++ code formatter. |
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/140/builds/24257 Here is the relevant piece of the build log for the reference
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/116/builds/13634 Here is the relevant piece of the build log for the reference
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/55/builds/12220 Here is the relevant piece of the build log for the reference
|
…s for XeGPU [2/N]" (#142459) Reverts llvm/llvm-project#140163
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/35/builds/10589 Here is the relevant piece of the build log for the reference
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/169/builds/11924 Here is the relevant piece of the build log for the reference
|
(Sorry, I missed that you had already reverted this. Thanks!) This patch has caused a use-after-free:
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/130/builds/13535 Here is the relevant piece of the build log for the reference
|
No worries. I am sorry for the inconvenience. |
…GPU [2/N] (#142477) Bring back llvm/llvm-project#140163 with fixes
…lvm#140163) This PR introduces the initial implementation of a blocking pass for XeGPU programs. The pass leverages unroll patterns from both the XeGPU and Vector dialects. --------- Co-authored-by: Adam Siemieniuk <[email protected]>
…lvm#142477) Bring back llvm#140163 with fixes
…and transpose (#143389) This PR adds blocking support for vector dialect operations (`reduce`, `broadcast`, and `transpose`) in the XeGPU based IR. It simply assigned the shape specified by "inst_data" as its target shape of the unrolling to implement the blocking. It is based on llvm/llvm-project#140163.
…lvm#140163) This PR introduces the initial implementation of a blocking pass for XeGPU programs. The pass leverages unroll patterns from both the XeGPU and Vector dialects. --------- Co-authored-by: Adam Siemieniuk <[email protected]>
…lvm#142477) Bring back llvm#140163 with fixes
…se (llvm#143389) This PR adds blocking support for vector dialect operations (`reduce`, `broadcast`, and `transpose`) in the XeGPU based IR. It simply assigned the shape specified by "inst_data" as its target shape of the unrolling to implement the blocking. It is based on llvm#140163.
…lvm#140163) This PR introduces the initial implementation of a blocking pass for XeGPU programs. The pass leverages unroll patterns from both the XeGPU and Vector dialects. --------- Co-authored-by: Adam Siemieniuk <[email protected]>
…lvm#142477) Bring back llvm#140163 with fixes
…se (llvm#143389) This PR adds blocking support for vector dialect operations (`reduce`, `broadcast`, and `transpose`) in the XeGPU based IR. It simply assigned the shape specified by "inst_data" as its target shape of the unrolling to implement the blocking. It is based on llvm#140163.
This PR introduces the initial implementation of a blocking pass for XeGPU programs. The pass leverages unroll patterns from both the XeGPU and Vector dialects. It requires that every
OpResult
is associated with a validLayoutAttr
for whichisSgLayout()
returns true. The pass uses theinst_data
field to determine the target shape for unrolling; ifinst_data
is absent, unrolling for that Value is skipped. In this PR, only the following ops are enabled:createNd
,Dpas
,LoadNd
,StoreNd
,PrefetchNd
,UpdateNd
, andelementwise
.