[PATCH] D77678: [mlir][Linalg] Add loop.parallel lowering for all Linalg Ops.

Mahesh Ravishankar via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Apr 7 15:49:49 PDT 2020


mravishankar added a comment.

In D77678#1968093 <https://reviews.llvm.org/D77678#1968093>, @nicolasvasilache wrote:

> The utility function part looks like quite a massive change for just the purpose of getting the `xxxForOp` from their respective induction variables.
>  Why is this a good tradeoff (also, it is not tested FWICT)?


If I understand the comment correctly, are you suggesting not changing the EDSC builders to return the operation handles as well? I think all the induction variables are block arguments of the entry block of the loop operations. I can get the parent op of the block and not modify the edsc builders. I started down the path of getting the op directly from the builders, and just finished it. I am fine with that approach as well. My initial thought was the approach of getting the op from the induction variables is more a WAR, but I dont have enough background in this to know if that is indeed the case.

> Could it be separated from this revision and evaluated independently as it seems quite orthogonal to the part that handles more cases of Linalg -> ploops ?

Maybe. I want to do both lower linalg to ploops, and have the utility function that does that return the loops created as well, just like the tileLinalgOp method returns the resulting tiled op and loops created.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D77678/new/

https://reviews.llvm.org/D77678





More information about the llvm-commits mailing list