[all-commits] [llvm/llvm-project] e5cb0e: [mlir][sparse] run canonicalization pass after Den...

PeimingLiu via All-commits all-commits at lists.llvm.org
Fri Oct 28 18:00:24 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e5cb0ee3836aacd8cc377a5a91659fc7512909c9
      https://github.com/llvm/llvm-project/commit/e5cb0ee3836aacd8cc377a5a91659fc7512909c9
  Author: Peiming Liu <peiming at google.com>
  Date:   2022-10-29 (Sat, 29 Oct 2022)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Pipelines/SparseTensorPipelines.cpp
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matvec.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_mttkrp.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_spmm.mlir

  Log Message:
  -----------
  [mlir][sparse] run canonicalization pass after DenseOpBufferize.

As pointed out by Matthias: "DenseBufferizationPass should be run right after TensorCopyInsertionPass. (Running it after bufferizing the sparse IR is also OK.) The reason for this is that whether copies are needed for not depends on the structure of the program (SSA use-def chains). In particular, running the canonicalizer in-between is problematic because it could introduce new RaW conflicts"

Reviewed By: aartbik

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




More information about the All-commits mailing list