Compiler support for sparse tensor computations in MLIR
Sparse tensors arise in problems in science, engineering, machine learning, and data
analytics. Programs that operate on such tensors can exploit sparsity to reduce storage …
analytics. Programs that operate on such tensors can exploit sparsity to reduce storage …
A sparse iteration space transformation framework for sparse tensor algebra
We address the problem of optimizing sparse tensor algebra in a compiler and show how to
define standard loop transformations---split, collapse, and reorder---on sparse iteration …
define standard loop transformations---split, collapse, and reorder---on sparse iteration …
The sparse abstract machine
We propose the Sparse Abstract Machine (SAM), an abstract machine model for targeting
sparse tensor algebra to reconfigurable and fixed-function spatial dataflow accelerators …
sparse tensor algebra to reconfigurable and fixed-function spatial dataflow accelerators …
Compilation of sparse array programming models
This paper shows how to compile sparse array programming languages. A sparse array
programming language is an array programming language that supports element-wise …
programming language is an array programming language that supports element-wise …
Capstan: A vector RDA for sparsity
This paper proposes Capstan: a scalable, parallel-patterns-based, reconfigurable dataflow
accelerator (RDA) for sparse and dense tensor applications. Instead of designing for one …
accelerator (RDA) for sparse and dense tensor applications. Instead of designing for one …
The EDGE language: Extended general einsums for graph algorithms
In this work, we propose a unified abstraction for graph algorithms: the Extended General
Einsums language, or EDGE. The EDGE language expresses graph algorithms in the …
Einsums language, or EDGE. The EDGE language expresses graph algorithms in the …
Looplets: A language for structured coiteration
W Ahrens, D Donenfeld, F Kjolstad… - Proceedings of the 21st …, 2023 - dl.acm.org
Real world arrays often contain underlying structure, such as sparsity, runs of repeated
values, or symmetry. Specializing for structure yields significant speedups. But automatically …
values, or symmetry. Specializing for structure yields significant speedups. But automatically …
Automatic generation of efficient sparse tensor format conversion routines
This paper shows how to generate code that efficiently converts sparse tensors between
disparate storage formats (data layouts) such as CSR, DIA, ELL, and many others. We …
disparate storage formats (data layouts) such as CSR, DIA, ELL, and many others. We …
FEASTA: A Flexible and Efficient Accelerator for Sparse Tensor Algebra in Machine Learning
Recently, sparse tensor algebra (SpTA) plays an increasingly important role in machine
learning. However, due to the unstructured sparsity of SpTA, the general-purpose …
learning. However, due to the unstructured sparsity of SpTA, the general-purpose …
Stardust: Compiling sparse tensor algebra to a reconfigurable dataflow architecture
We introduce Stardust, a compiler that compiles sparse tensor algebra to reconfigurable
dataflow architectures (RDAs). Stardust introduces new user-provided data representation …
dataflow architectures (RDAs). Stardust introduces new user-provided data representation …