[PATCH] D154363: [WIP][mlir] Add an interface to decompose complex ops

Quentin Colombet via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 3 09:32:24 PDT 2023


qcolombet created this revision.
qcolombet added reviewers: ftynse, nicolasvasilache, rengolin, harsh, chelini.
qcolombet added a project: MLIR.
Herald added subscribers: bviyer, Moerafaat, zero9178, bzcheeseman, mravishankar, awarzynski, sdasgup3, wenzhicui, wrengr, jsetoain, hanchung, cota, teijeong, rdzhabarov, tatianashp, msifontes, jurahul, Kayjukh, grosul1, Joonsoo, liufengdb, aartbik, mgester, arpith-jacob, antiagainst, shauheen, rriddle, mehdi_amini.
Herald added a project: All.
qcolombet requested review of this revision.
Herald added subscribers: limo1996, stephenneuendorffer.

This patch adds an interface, named `AggregatedOpInterface`, that decomposes complex operations into simpler ones.

This is WIP because I was wondering how we want to connect this, e.g., regular pass, transform dialect, etc.

To demonstrate the e2e use case, I went with a new the transform dialect op but it would have made sense to reuse the `decompose` one (albeit it won't work out of the box because that one only support linalg interfaces). I'm guessing we want to express the convolution decomposition in terms of interfaces as well. Anyhow, this is all up for discussion :).


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D154363

Files:
  mlir/include/mlir/Dialect/Linalg/IR/Linalg.h
  mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
  mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
  mlir/include/mlir/Interfaces/AggregatedOpInterface.h
  mlir/include/mlir/Interfaces/AggregatedOpInterface.td
  mlir/include/mlir/Interfaces/CMakeLists.txt
  mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
  mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
  mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
  mlir/lib/Interfaces/AggregatedOpInterface.cpp
  mlir/lib/Interfaces/CMakeLists.txt
  mlir/test/Dialect/Linalg/transform-op-decompose.mlir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D154363.536797.patch
Type: text/x-patch
Size: 22443 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230703/9c5b9398/attachment.bin>


More information about the llvm-commits mailing list