This is an archive of the discontinued LLVM Phabricator instance.

[mlir][linalg][sparse] add linalg optimization passes "upstream"
ClosedPublic

Authored by aartbik on Feb 16 2022, 1:10 PM.

Details

Summary

It is time to compose Linalg related optimizations with SparseTensor
related optimizations. This is a careful first start by adding some
general Linalg optimizations "upstream" of the sparse compiler in the
full sparse compiler pipeline. Some minor changes were needed to make
those optimizations aware of sparsity.

Note that after this, we will add a sparse specific fusion rule,
just to demonstrate the power of the new composition.

Diff Detail

Event Timeline

aartbik created this revision.Feb 16 2022, 1:10 PM
aartbik requested review of this revision.Feb 16 2022, 1:10 PM
aartbik updated this revision to Diff 409402.Feb 16 2022, 1:49 PM

make rules, asan

aartbik updated this revision to Diff 409430.Feb 16 2022, 3:13 PM

rebased with main

aartbik updated this revision to Diff 409460.Feb 16 2022, 5:40 PM

rebase with main

Nice! Very interested to see how elementwise op fusion helps sparse ops. (Will leave others to approve but LGTM)

bixia accepted this revision.Feb 17 2022, 8:53 AM
This revision is now accepted and ready to land.Feb 17 2022, 8:53 AM