[all-commits] [llvm/llvm-project] 67b37f: [mlir] Conv ops vectorization pass
Jakub Lichman via All-commits
all-commits at lists.llvm.org
Tue Sep 8 01:48:33 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 67b37f571cc27d5684125f694d719b114ad72a18
https://github.com/llvm/llvm-project/commit/67b37f571cc27d5684125f694d719b114ad72a18
Author: Jakub Lichman <limo at google.com>
Date: 2020-09-08 (Tue, 08 Sep 2020)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
A mlir/test/Conversion/LinalgToVector/linalg-to-vector.mlir
M mlir/test/lib/Transforms/CMakeLists.txt
A mlir/test/lib/Transforms/TestConvVectorization.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
[mlir] Conv ops vectorization pass
In this commit a new way of convolution ops lowering is introduced.
The conv op vectorization pass lowers linalg convolution ops
into vector contractions. This lowering is possible when conv op
is first tiled by 1 along specific dimensions which transforms
it into dot product between input and kernel subview memory buffers.
This pass converts such conv op into vector contraction and does
all necessary vector transfers that make it work.
Differential Revision: https://reviews.llvm.org/D86619
More information about the All-commits
mailing list