-
Notifications
You must be signed in to change notification settings - Fork 15
Enable end2end affine-to-neura lowering #53
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
|
Sry, some errors occurred when I try to transform Will fix it soon. |
The problem arises from the
|
Thanks @ShangkunLi, I didn't handle such case as GPT/Gemini told me MLIR has the rule that all basic block would only have arguments as live-ins (rather than directly use previously existing variable in other blocks), but it seems not always correct. Do you wanna fix this in this PR or later? I didn't see the |
Filed an issue #54. I may try to fix this in the next pr. For this pr, I just tested these lowering patterns. |
tancheng
left a comment
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.
Thanks for the PR, let's wait for the pass on github action before merging :-)
In this pr:
memrefandbuiltindialectsneura.load_indexed/store_indexedoperation formemreflike memory accessNow, we can write code in
cppand lower it toaffinedialect usingpolygeist. And more high-level transforms can be implemented inaffinelevel, like polyhedral-based optimization, loop-unroll/fusion/fission/interchange/tiling/vectorize, etc.