[all-commits] [llvm/llvm-project] 6942f1: [MLIR][Linalg] Scalable Vectorization of Reduction...

Zhaoshi Zheng via All-commits all-commits at lists.llvm.org
Tue Jul 23 21:52:44 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6942f1d5aa232face8269ce78c4de7d45571a8e9
      https://github.com/llvm/llvm-project/commit/6942f1d5aa232face8269ce78c4de7d45571a8e9
  Author: Zhaoshi Zheng <zhaoshiz at quicinc.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorization-scalable.mlir
    M mlir/test/Dialect/Linalg/vectorization-unsupported.mlir
    A mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/reduce_1d.mlir
    A mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/reduce_2d.mlir

  Log Message:
  -----------
  [MLIR][Linalg] Scalable Vectorization of Reduction on the Trailing Dimension (#97788)

Allow scalable vectorization of linalg::reduce and linalg::generic that has
reduction iterator(s) with two restrictions:
1. The reduction dim is the last (innermost) dim of the op; and
2. Only the reduction dim is requested for scalable vectorization.

One exception is that scalable vectorization of the reduction dim in
Matmul-like ops are not supported even above restrictions are met.

Allowed combinations of scalable flags and iterator types:
Matmul:
        Iterators: ["parallel", "parallel", "reduction"]
Scalable Flags: ["true",     "true",     "false"]
                       ["false",    "true",     "false"]
Matvec:
        Iterators: ["parallel", "reduction"]
Scalable Flags: ["false",    "true"]
                       ["true",     "false"]



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list