MLIR
20.0.0git
|
Perform standalone tiling of a single LinalgOp by tileSizes
.
More...
#include "mlir/Dialect/Linalg/Transforms/Transforms.h"
Public Attributes | |
LinalgOp | op |
SmallVector< Operation *, 8 > | loops |
SmallVector< Value, 4 > | tensorResults |
Perform standalone tiling of a single LinalgOp by tileSizes
.
and permute the loop nest according to interchangeVector
The permutation is expressed as a list of integers that specify the new ordering of the loop nest. The length of interchangeVector
must be equal to the length of tileSizes
. An empty vector is interpreted as the identity permutation and the transformation returns early.
Return a struct containing the tiled loops in the specified order and the cloned op if successful, std::nullopt otherwise.
E.g. the permutation (i,j,k) -> (j,k,i)
is expressed by interchangeVector = [1,2,0]
. All values in interchangeVector
must be integers, in the range 0..tileSizes.size()
without duplications (i.e. [1,1,2]
is an invalid permutation).
Definition at line 679 of file Transforms.h.
SmallVector<Operation *, 8> mlir::linalg::TiledLinalgOp::loops |
Definition at line 681 of file Transforms.h.
LinalgOp mlir::linalg::TiledLinalgOp::op |
Definition at line 680 of file Transforms.h.
Referenced by tileLinalgOpImpl().
SmallVector<Value, 4> mlir::linalg::TiledLinalgOp::tensorResults |
Definition at line 682 of file Transforms.h.
Referenced by tileLinalgOpImpl().