This is an archive of the discontinued LLVM Phabricator instance.

[mlir][sparse] introduce a higher-order tensor mapping
ClosedPublic

Authored by aartbik on Oct 4 2022, 2:58 PM.

Details

Summary

This extension to the sparse tensor type system in MLIR
opens up a whole new set of sparse storage schemes, such as
block sparse storage (e.g. BCSR) and ELL (aka jagged diagonals).

This revision merely introduces the type extension and
initial documentation. The actual interpretation of the type
(reading in tensors, lowering to code, etc.) will follow.

Diff Detail

Event Timeline

aartbik created this revision.Oct 4 2022, 2:58 PM
Herald added a project: Restricted Project. · View Herald TranscriptOct 4 2022, 2:58 PM
aartbik requested review of this revision.Oct 4 2022, 2:58 PM
aartbik updated this revision to Diff 465204.Oct 4 2022, 3:34 PM

fixed typo

LGTM, but perhaps I should wait for some one more experienced to accept the patch?

Peiming added inline comments.Oct 4 2022, 5:17 PM
mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
71

It took me a while to understand the sentence.

Is For block-sparse (or block-sparsity), blocks are typically xxx better?

aartbik marked an inline comment as done.Oct 4 2022, 6:52 PM

LGTM, but perhaps I should wait for some one more experienced to accept the patch?

I think we are all sufficiently (in)experienced with this ;-)

The higher order trick for block sparsity/ELL has been discussed in various publications, but never worked out in the nitty gritty details.
So we all learn as we go on this one ;-)

mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
71

reordered

aartbik updated this revision to Diff 465252.Oct 4 2022, 6:55 PM
aartbik marked an inline comment as done.

addressed comment: reordered words

LGTM, but perhaps I should wait for some one more experienced to accept the patch?

I think we are all sufficiently (in)experienced with this ;-)

The higher order trick for block sparsity/ELL has been discussed in various publications, but never worked out in the nitty gritty details.
So we all learn as we go on this one ;-)

Okay, then I will faithfully accept the patch ;-)

Peiming accepted this revision.Oct 5 2022, 9:11 AM
This revision is now accepted and ready to land.Oct 5 2022, 9:11 AM
This revision was automatically updated to reflect the committed changes.