[all-commits] [llvm/llvm-project] 2f637f: [mlir][TilingInterface] Enable tile and fuse using...
MaheshRavishankar via All-commits
all-commits at lists.llvm.org
Tue Jun 21 10:23:16 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2f637fe730a7b65f4584ae636c50197ebaf5a4a7
https://github.com/llvm/llvm-project/commit/2f637fe730a7b65f4584ae636c50197ebaf5a4a7
Author: Mahesh Ravishankar <ravishankarm at google.com>
Date: 2022-06-21 (Tue, 21 Jun 2022)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/include/mlir/Dialect/Tensor/Transforms/Transforms.h
M mlir/include/mlir/Interfaces/TilingInterface.td
M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Dialect/Tensor/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Tensor/Transforms/SwapExtractSliceWithProducer.cpp
A mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
M mlir/test/Interfaces/TilingInterface/tile-using-interface.mlir
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterface.cpp
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][TilingInterface] Enable tile and fuse using TilingInterface.
This patch implements tile and fuse transformation for ops that
implement the tiling interface. To do so,
- `TilingInterface` needs a new method that generates a tiled
implementation of the operation based on the tile of the result
needed.
- A pattern is added that replaces a `tensor.extract_slice` whose
source is defined by an operation that implements the
`TilingInterface` with a tiled implementation that produces the
extracted slice in-place (using the method added to
`TilingInterface`).
- A pattern is added that takes a sequence of operations that
implement the `TilingInterface` (for now `LinalgOp`s), tiles the
consumer, and greedily fuses its producers iteratively.
Differential Revision: https://reviews.llvm.org/D127809
More information about the All-commits
mailing list