taco icon indicating copy to clipboard operation
taco copied to clipboard

Taco does not currently generate correct code for sparse outputs

Open shoaibkamil opened this issue 5 years ago • 3 comments

This is an umbrella issue for the problems with sparse outputs. The cases I've tried that are failing are (capital letters are sparse matrices, D is a diagonal matrix, scalars are c<num>):

A * B
A^T * D * A
A^T * A
(c0 * A + B)^T * (c1 * B^T + C)
A * B * C
(A + B) * (A + B + C)

(#263 is a specific instance)

shoaibkamil avatar Jun 09 '20 20:06 shoaibkamil

@fredrikbk might have more to say, but it looks like all these kernels will require taco to support generating code that uses workspaces (#184). @amaleewilson and @RawnH have been working towards implementing support for workspaces in taco, though that work is still ongoing as far as I'm aware.

stephenchouca avatar Jun 11 '20 19:06 stephenchouca

A large percentage of the tensora (a python wrapper) test suite fails due to incorrect code generation from TACO - https://github.com/drhagen/tensora

Tests are combinatorially generated, so cover many cases that come up in our work.

andrew-matteson avatar Jul 08 '20 12:07 andrew-matteson

#325 adds a (disabled) test for A * B. Enable it to see which combinations of matrix formats fail.

Infinoid avatar Oct 08 '20 13:10 Infinoid