[all-commits] [llvm/llvm-project] e49427: [mlir][linalg] Add transpose support to hoist padd...

Tobias Gysi via All-commits all-commits at lists.llvm.org
Mon Jan 24 08:34:46 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e494278ceeb70d2973392a349b3ab105da488b13
      https://github.com/llvm/llvm-project/commit/e494278ceeb70d2973392a349b3ab105da488b13
  Author: gysit <gysit at google.com>
  Date:   2022-01-24 (Mon, 24 Jan 2022)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/Transforms/HoistPadding.h
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
    M mlir/lib/Dialect/Linalg/Transforms/HoistPadding.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/test/Dialect/Linalg/hoist-padding.mlir
    M mlir/test/lib/Dialect/Linalg/TestLinalgCodegenStrategy.cpp

  Log Message:
  -----------
  [mlir][linalg] Add transpose support to hoist padding.

Add a transpose option to hoist padding to transpose the padded tensor before storing it into the packed tensor. The early transpose improves the memory access patterns of the actual compute kernel. The patch introduces a transpose right after the hoisted pad tensor and a second transpose inside the compute loop. The second transpose can either be fused into the compute operation or will canonicalize away when lowering to vector instructions.

Reviewed By: nicolasvasilache

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




More information about the All-commits mailing list