dc.contributor.author | Patel, Radha | |
dc.contributor.author | Ahrens, Willow | |
dc.contributor.author | Amarasinghe, Saman | |
dc.date.accessioned | 2025-03-07T20:35:59Z | |
dc.date.available | 2025-03-07T20:35:59Z | |
dc.date.issued | 2025-03-01 | |
dc.identifier.isbn | 979-8-4007-1275-3 | |
dc.identifier.uri | https://hdl.handle.net/1721.1/158438 | |
dc.description | CGO ’25, March 01–05, 2025, Las Vegas, NV, USA | en_US |
dc.description.abstract | Symmetric and sparse tensors arise naturally in many domains including linear algebra, statistics, physics, chemistry, and graph theory. Symmetric tensors are equal to their transposes, so in the n-dimensional case we can save up to a factor of n! by avoiding redundant operations. Sparse tensors, on the other hand, are mostly zero, and we can save asymptotically by processing only nonzeros. Unfortunately, specializing for both symmetry and sparsity at the same time is uniquely challenging. Optimizing for symmetry requires consideration of n! transpositions of a triangular kernel, which can be complex and error prone. Considering multiple transposed iteration orders and triangular loop bounds also complicates iteration through intricate sparse tensor formats. Additionally, since each combination of symmetry and sparse tensor formats requires a specialized implementation, this leads to a combinatorial number of cases. A compiler is needed, but existing compilers cannot take advantage of both symmetry and sparsity within the same kernel. In this paper, we describe the first compiler which can automatically generate symmetry-aware code for sparse or structured tensor kernels. We introduce a taxonomy for symmetry in tensor kernels, and show how to target each kind of symmetry. Our implementation demonstrates significant speedups ranging from 1.36x for SSYMV to 30.4x for a 5-dimensional MTTKRP over the non-symmetric state of the art. | en_US |
dc.publisher | ACM|Proceedings of the 23rd ACM/IEEE International Symposium on Code Generation and Optimization | en_US |
dc.relation.isversionof | https://doi.org/10.1145/3696443.3708919 | en_US |
dc.rights | Creative Commons Attribution | en_US |
dc.rights.uri | https://creativecommons.org/licenses/by/4.0/ | en_US |
dc.source | Association for Computing Machinery | en_US |
dc.title | SySTeC: A Symmetric Sparse Tensor Compiler | en_US |
dc.type | Article | en_US |
dc.identifier.citation | Patel, Radha, Ahrens, Willow and Amarasinghe, Saman. 2025. "SySTeC: A Symmetric Sparse Tensor Compiler." | |
dc.contributor.department | Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory | en_US |
dc.contributor.department | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science | en_US |
dc.identifier.mitlicense | PUBLISHER_CC | |
dc.identifier.mitlicense | PUBLISHER_CC | |
dc.eprint.version | Final published version | en_US |
dc.type.uri | http://purl.org/eprint/type/ConferencePaper | en_US |
eprint.status | http://purl.org/eprint/status/NonPeerReviewed | en_US |
dc.date.updated | 2025-03-01T08:46:34Z | |
dc.language.rfc3066 | en | |
dc.rights.holder | The author(s) | |
dspace.date.submission | 2025-03-01T08:46:34Z | |
mit.license | PUBLISHER_CC | |
mit.metadata.status | Authority Work and Publication Information Needed | en_US |