[all-commits] [llvm/llvm-project] bc1947: Add a basic tiling pass for parallel loops

Benjamin Kramer via All-commits all-commits at lists.llvm.org
Mon Feb 24 02:45:23 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: bc1947a6f51fec9239248043d1a85afa3ce586aa
      https://github.com/llvm/llvm-project/commit/bc1947a6f51fec9239248043d1a85afa3ce586aa
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2020-02-24 (Mon, 24 Feb 2020)

  Changed paths:
    M mlir/include/mlir/Dialect/LoopOps/Passes.h
    M mlir/include/mlir/InitAllPasses.h
    M mlir/lib/Dialect/LoopOps/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/LoopOps/Transforms/ParallelLoopTiling.cpp
    A mlir/test/Dialect/Loops/parallel-loop-tiling.mlir

  Log Message:
  -----------
  Add a basic tiling pass for parallel loops

This exploits the fact that the iterations of parallel loops are
independent so tiling becomes just an index transformation. This pass
only tiles the innermost loop of a loop nest.

The ultimate goal is to allow vectorization of the tiled loops, but I
don't think we're there yet with the current rewriting, as the tiled
loops don't have a constant trip count.

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




More information about the All-commits mailing list