SySTeC: A Symmetric Sparse Tensor Compiler
Radha Patel, Willow Ahrens, Saman Amarasinghe

TL;DR
This paper introduces SySTeC, the first compiler capable of automatically generating optimized code for symmetric and sparse tensor kernels, achieving significant speedups over existing methods.
Contribution
It presents a novel compiler that handles both symmetry and sparsity in tensor computations, with a taxonomy for symmetry and automated code generation.
Findings
Achieves up to 30.4x speedup in tensor operations.
Demonstrates the first symmetry-aware tensor compiler.
Provides a taxonomy for symmetry in tensor kernels.
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 -dimensional case we can save up to a factor of 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 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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Computational Physics and Python Applications · Tensor decomposition and applications
