-
Notifications
You must be signed in to change notification settings - Fork 29
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
[ObjectFifo] Combine Logical ObjectFifos for reuse #755
base: main
Are you sure you want to change the base?
Conversation
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.
It contains lot of refactor along with the pass logic itself.
Once you're done, it might be useful to split this into two PR.
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
// Step 3. PICK the CoreOps associated with the 1:1 L2->L1. | ||
// For the first Core op we'll insert Read at the end. It doesn't matter | ||
// for now so we're gonna insert it right before amdaie.end op. | ||
CoreOp firstCoreOp = fetchUniqueCoreOp(newFirstL2ToL1DmaOp); |
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.
What if there are more than 2 target core ops per DMA?
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.
I'm already asserting on that here.
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
compiler/plugins/target/AMD-AIE/iree-amd-aie/Transforms/AMDAIELogicalObjFifoSplittingUtils.cpp
Show resolved
Hide resolved
Able to get combined op - need to change the corresponding L2 target.
…dating shape of L2
a017a38
to
be4f6f9
Compare
This PR adds a new pass
iree-amdaie-combine-logical-objectfifos-for-connection-reuse
(can rename) which is the follow-up pass foriree-amdaie-split-logical-objectfifos-for-connection-reuse
.It contains lot of refactor along with the pass logic itself. Since it's a non-trivial pass, I've tried adding asserts/checks (to the extend I could) - currently starting off with base lit test.
Aims to address point 4 in #644.