Enhance the tile+fuse logic to allow fusing a sequence of operations.
Depends On D91101
| Paths 
 |  Differential  D90991  
[mlir][Linalg] Fuse sequence of Linalg operation (on buffers) ClosedPublic Authored by mravishankar on Nov 6 2020, 4:33 PM. 
Details 
Diff Detail 
 Event Timelinemravishankar added a parent revision: D91101: [mlir][Linalg] Change LinalgDependenceGraph to use LinalgOp.. bondhugula added inline comments. 
 
 This revision now requires changes to proceed.Nov 9 2020, 9:40 PM mravishankar marked an inline comment as done.Comment Actions Move pass to test pass. 
 mravishankar added a child revision: D91322: [mlir][Linalg] Allow promotion of fused views..Nov 11 2020, 10:57 PM hanchung added inline comments. 
 This revision now requires changes to proceed.Nov 12 2020, 12:52 AM mravishankar marked 10 inline comments as done.Comment Actions Make the tileAndFuse only tile the fusable loops. Also address comments. Comment Actions Make Tile+Fuse only tile the fusable loops and leave the unfused loops 
 
 This revision now requires changes to proceed.Nov 16 2020, 8:48 AM 
 asaadaldien added inline comments. 
 Closed by commit rGf8284d21a8e2: [mlir][Linalg] Fuse sequence of Linalg operation (on buffers) (authored by mravishankar).  ·  Explain Why This revision was automatically updated to reflect the committed changes. This revision was not accepted when it landed; it landed in state Needs Review.Nov 23 2020, 10:31 AM Closed by commit rGe65a5e5b00a3: [mlir][Linalg] Fuse sequence of Linalg operation (on buffers) (authored by mravishankar).  ·  Explain Why This revision was automatically updated to reflect the committed changes. 
Revision Contents 
 
 
Diff 306582 mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
 mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
 mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
 mlir/test/Dialect/Linalg/fusion-pattern.mlir
 mlir/test/Dialect/Linalg/fusion-sequence.mlir
 
 mlir/test/lib/Transforms/TestLinalgFusionTransforms.cpp
 mlir/tools/mlir-opt/mlir-opt.cpp
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
tiledLastLinalgOp could be a more clear name with self-documentation.