History log of /llvm-project/mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp (Results 1 – 9 of 9)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0
# 0e34dbb4 14-Sep-2024 Aart Bik <ajcbik@google.com>

[mlir][sparse] fix bug with all-dense assembler (#108615)

When only all-dense "sparse" tensors occur in a function prototype, the
assembler would skip the method conversion purely based on input/ou

[mlir][sparse] fix bug with all-dense assembler (#108615)

When only all-dense "sparse" tensors occur in a function prototype, the
assembler would skip the method conversion purely based on input/output
counts. It should rewrite based on the presence of any annotation,
however.

show more ...


Revision tags: llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5
# a5757c5b 19-Apr-2024 Christian Sigg <chsigg@users.noreply.github.com>

Switch member calls to `isa/dyn_cast/cast/...` to free function calls. (#89356)

This change cleans up call sites. Next step is to mark the member
functions deprecated.

See https://mlir.llvm.org/

Switch member calls to `isa/dyn_cast/cast/...` to free function calls. (#89356)

This change cleans up call sites. Next step is to mark the member
functions deprecated.

See https://mlir.llvm.org/deprecation and
https://discourse.llvm.org/t/preferred-casting-style-going-forward.

show more ...


Revision tags: llvmorg-18.1.4
# 5122a2c2 11-Apr-2024 Aart Bik <ajcbik@google.com>

[mlir][sparse] allow for direct-out passing of sparse tensor buffers (#88327)

In order to support various external frameworks (JAX vs PyTorch) we need
a bit more flexibility in [dis]assembling exte

[mlir][sparse] allow for direct-out passing of sparse tensor buffers (#88327)

In order to support various external frameworks (JAX vs PyTorch) we need
a bit more flexibility in [dis]assembling external buffers to and from
sparse tensors in MLIR land. This PR adds a direct-out option that
avoids the rigid pre-allocated for copy-out semantics.

Note that over time, we expect the [dis]assemble operations to converge
into something that supports all sorts of external frameworks. Until
then, this option helps in experimenting with different options.

show more ...


Revision tags: llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1
# fc9f1d49 06-Mar-2024 Peiming Liu <peiming@google.com>

[mlir][sparse] use a consistent order between [dis]assembleOp and sto… (#84079)

…rage layout.


# 52b69aa3 04-Mar-2024 Peiming Liu <36770114+PeimingLiu@users.noreply.github.com>

[mlir][sparse] support sparsifying batch levels (#83898)


Revision tags: llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3
# f40ee6e8 21-Feb-2024 Peiming Liu <36770114+PeimingLiu@users.noreply.github.com>

[mlir][sparse] assemble SoA COO correctly. (#82449)


# 4d273b94 15-Feb-2024 Aart Bik <39774503+aartbik@users.noreply.github.com>

[mlir][sparse] ensure [dis]assembler wrapper methods properly inline (#81907)


Revision tags: llvmorg-18.1.0-rc2
# d00e6d07 05-Feb-2024 Aart Bik <39774503+aartbik@users.noreply.github.com>

[mlir][sparse] refine sparse assembler strategy (#80521)

Rewrite *all* public methods, making original internal, private methods,
and exposing wrappers under the original name. This works a bit bet

[mlir][sparse] refine sparse assembler strategy (#80521)

Rewrite *all* public methods, making original internal, private methods,
and exposing wrappers under the original name. This works a bit better
in practice (when combined with c-interface mechanism of torch-mlir for
example).

show more ...


# 33b463ad 01-Feb-2024 Aart Bik <39774503+aartbik@users.noreply.github.com>

[mlir][sparse] external entry method wrapper for sparse tensors (#80326)

Similar to the emit_c_interface, this pull request adds a pass that
converts public entry methods that use sparse tensors as

[mlir][sparse] external entry method wrapper for sparse tensors (#80326)

Similar to the emit_c_interface, this pull request adds a pass that
converts public entry methods that use sparse tensors as input
parameters and/or output return values into wrapper functions that
[dis]assemble the individual tensors that constitute the actual storage
used externally into MLIR sparse tensors. This pass can be used to
prepare the public entry methods of a program that is compiled by the
MLIR sparsifier to interface with an external runtime, e.g., when
passing sparse tensors as numpy arrays from and to Python. Note that
eventual bufferization decisions (e.g. who [de]allocates the underlying
memory) should be resolved in agreement with the external runtime
(Python, PyTorch, JAX, etc.)

show more ...