[all-commits] [llvm/llvm-project] 724779: [mlir][linalg] Implement TilingInterface for winog...

Hsiangkai Wang via All-commits all-commits at lists.llvm.org
Wed Jul 17 22:48:24 PDT 2024


  Branch: refs/heads/users/hsiangkai/winograd-tiling
  Home:   https://github.com/llvm/llvm-project
  Commit: 72477955477477f1d95e2125cd33122899154f0d
      https://github.com/llvm/llvm-project/commit/72477955477477f1d95e2125cd33122899154f0d
  Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    A mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir

  Log Message:
  -----------
  [mlir][linalg] Implement TilingInterface for winograd operations

In order to support arbitrary size input data of conv2d, implement
TilingInterface for winograd operations. Before converting winograd
operations into nested loops with matrix multiply, tile the input of
conv2d into the supported size first.

Add a transform operation structured.decompose_winograd_op to decompose
winograd operations. Before applying the transform op, use tile_using_for
to tile the input data into supported size. The test case shows how to
tile and decompose winograd operations.


  Commit: 936356fd49b7f83aa307eb3fdf46348ee151c149
      https://github.com/llvm/llvm-project/commit/936356fd49b7f83aa307eb3fdf46348ee151c149
  Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir

  Log Message:
  -----------
  Address ftynse's comments


Compare: https://github.com/llvm/llvm-project/compare/cf65ec7a7805...936356fd49b7

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