[all-commits] [llvm/llvm-project] 1469eb: [mlir][vector] Allow unroll of contraction in arbi...

Chris via All-commits all-commits at lists.llvm.org
Mon Jun 6 13:31:36 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1469ebf8382107e0344173f362b690d19e24029d
      https://github.com/llvm/llvm-project/commit/1469ebf8382107e0344173f362b690d19e24029d
  Author: Christopher Bate <cbate at nvidia.com>
  Date:   2022-06-06 (Mon, 06 Jun 2022)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/Transforms/VectorUnrollDistribute.cpp
    M mlir/test/Dialect/Vector/vector-transfer-unroll.mlir
    M mlir/test/Dialect/Vector/vector-unroll-options.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector] Allow unroll of contraction in arbitrary order

Adds supprot for vector unroll transformations to unroll in different
orders. For example, the `vector.contract` can be unrolled into a
smaller set of contractions.  There is a choice of how to unroll the
decomposition  based on the traversal order of (dim0, dim1, dim2).
The choice of traversal order can now be specified by a callback which
given by the caller of the transform. For now, only the
`vector.contract`, `vector.transfer_read/transfer_write` operations
support the callback.

Differential Revision: https://reviews.llvm.org/D127004




More information about the All-commits mailing list