[all-commits] [llvm/llvm-project] 69ddee: [mlir][Linalg] Introduce linalg.pooling_min/max/su...
hanhanW via All-commits
all-commits at lists.llvm.org
Tue Mar 31 21:22:43 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 69ddee1d2aadaa0b9ac4549f366d1bf5701a65f0
https://github.com/llvm/llvm-project/commit/69ddee1d2aadaa0b9ac4549f366d1bf5701a65f0
Author: Hanhan Wang <hanchung at google.com>
Date: 2020-03-31 (Tue, 31 Mar 2020)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
M mlir/include/mlir/Dialect/Utils/StructuredOpsUtils.h
M mlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
M mlir/test/Dialect/Linalg/invalid.mlir
M mlir/test/Dialect/Linalg/loops.mlir
M mlir/test/Dialect/Linalg/roundtrip.mlir
Log Message:
-----------
[mlir][Linalg] Introduce linalg.pooling_min/max/sum op.
Summary:
Performs an N-D pooling operation similarly to the description in the TF
documentation:
https://www.tensorflow.org/api_docs/python/tf/nn/pool
Different from the description, this operation doesn't perform on batch and
channel. It only takes tensors of rank `N`.
```
output[x[0], ..., x[N-1]] =
REDUCE_{z[0], ..., z[N-1]}
input[
x[0] * strides[0] - pad_before[0] + dilation_rate[0]*z[0],
...
x[N-1]*strides[N-1] - pad_before[N-1] + dilation_rate[N-1]*z[N-1]
],
```
The required optional arguments are:
- strides: an i64 array specifying the stride (i.e. step) for window
loops.
- dilations: an i64 array specifying the filter upsampling/input
downsampling rate
- padding: an i64 array of pairs (low, high) specifying the number of
elements to pad along a dimension.
If strides or dilations attributes are missing then the default value is
one for each of the input dimensions. Similarly, padding values are zero
for both low and high in each of the dimensions, if not specified.
Differential Revision: https://reviews.llvm.org/D76414
More information about the All-commits
mailing list