Instead of an SCF for loop, these pattern generate fully unrolled loops with no temporary buffer allocations.
Depends On D101745
Paths
| Differential D101981
[mlir] Unrolled progressive-vector-to-scf. ClosedPublic Authored by springerm on May 6 2021, 1:59 AM.
Details Summary Instead of an SCF for loop, these pattern generate fully unrolled loops with no temporary buffer allocations. Depends On D101745
Diff Detail
Event Timelinespringerm added a child revision: D102042: [mlir] Support memref layout maps in vector transfer ops.May 6 2021, 7:29 PM Comment Actions we should have some basic test which shows the unrolling and the not-unrolled part.
This revision now requires changes to proceed.May 12 2021, 3:25 AM This revision is now accepted and ready to land.May 12 2021, 3:31 AM This revision was landed with ongoing or failed builds.May 12 2021, 9:09 PM Closed by commit rG9b77be5583d2: [mlir] Unrolled progressive-vector-to-scf. (authored by springerm). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 345034 mlir/include/mlir/Conversion/VectorToSCF/ProgressiveVectorToSCF.h
mlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
mlir/lib/Interfaces/VectorInterfaces.cpp
mlir/test/Conversion/VectorToSCF/unrolled-vector-to-loops.mlir
mlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-1d.mlir
mlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-2d.mlir
mlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-3d.mlir
mlir/test/lib/Transforms/TestVectorTransforms.cpp
|
can we refactor a bit for early exit and reducing nesting?