nod-ai / iree-amd-aie

IREE plugin repository for the AMD AIE accelerator
Apache License 2.0
46 stars 23 forks source link

Create access to acquire-release transformation and access operation lowering #416

Closed jtuyls closed 2 weeks ago

jtuyls commented 3 weeks ago

Create AccessToAcquireRelease pass to be used instead of ConsumeProduceToAcquireRelease and further lowering of the access operation into AIE dialect. This change simplifies lowering into the AIE dialect by accommodating different shapes and types and more straightforward conversion into aie.objectfifo.subview.access + memref.reinterpret_cast. These changes are needed for xhe cpp pipeline and e2e example, see all changes here: https://github.com/nod-ai/iree-amd-aie/compare/jornt_cpp_pipeline?expand=1#diff-888fdafbbd093dc98e4fae55a26e7fa56065fc7506fedc0107b8a897c19f816a.

NOTE: The logical objectFifo consume/produce operations are still used for now but can probably be removed in a later follow-up.