Dynamic Sparse Tensor Algebra Compilation
Stephen Chou, Saman Amarasinghe

TL;DR
This paper introduces a compiler technique for generating efficient code to perform tensor algebra operations on dynamic sparse tensors with evolving structures, enabling faster computations compared to existing frameworks.
Contribution
It presents a new language for specifying recursive data structures and a compiler approach to generate optimized code for dynamic sparse tensor algebra.
Findings
Generated code for PageRank kernel is 1.05× faster than Aspen.
Outperforms PAM by 7.40× in dynamic matrix addition.
Efficiently handles dynamic data structures like linked lists and trees.
Abstract
This paper shows how to generate efficient tensor algebra code that compute on dynamic sparse tensors, which have sparsity structures that evolve over time. We propose a language for precisely specifying recursive, pointer-based data structures, and we show how this language can express a wide range of dynamic data structures that support efficient modification, such as linked lists, binary search trees, and B-trees. We then describe how, given high-level specifications of such data structures, a compiler can generate code to efficiently iterate over and compute with dynamic sparse tensors that are stored in the aforementioned data structures. Furthermore, we define an abstract interface that captures how nonzeros can be inserted into dynamic data structures, and we show how this abstraction guides a compiler to emit efficient code that store the results of sparse tensor algebra…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Graph Theory and Algorithms · Algorithms and Data Compression
