[all-commits] [llvm/llvm-project] 95e0ae: [MLIR][SparseTensor] Loop ordering strategy infras...

Govind Malasani via All-commits all-commits at lists.llvm.org
Mon Oct 6 10:30:10 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 95e0ae9fa7f3bfbfe3dc587428a064cbb8deb3ca
      https://github.com/llvm/llvm-project/commit/95e0ae9fa7f3bfbfe3dc587428a064cbb8deb3ca
  Author: Govind Malasani <145235389+gmalasan at users.noreply.github.com>
  Date:   2025-10-06 (Mon, 06 Oct 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.h
    M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.td
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorPasses.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/IterationGraphSorter.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/IterationGraphSorter.h

  Log Message:
  -----------
  [MLIR][SparseTensor] Loop ordering strategy infrastructure (flag) (#154656)

As discussed before, this PR adds the basic infrastructure/boiler plate
for loop ordering strategies to be implemented.

If this looks ok, I wanted to also mention some of the heuristics that I
would implement next, if they sound reasonable to you guys:
- Parallel first : prioritize parallel loops over reduction loops
- Dense outer : prioritize the most dense loops first
- Sparse outer : the opposite, potentially useful in some cases?

There is another that I am considering, stride/memory aware, which would
prioritize loops with better stride patterns (like sequential or
linear). Not sure how well this carries over to Sparse Tensor though.
Are there any ideas/heuristics that I should definitely try to
implement?

As we discussed, I will try to incrementally add heuristics. Sorry for
the delay on my end, and thank you so much for the feedback!

---------

Co-authored-by: Aart Bik <ajcbik at google.com>



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