Stardust: Compiling Sparse Tensor Algebra to a Reconfigurable Dataflow Architecture
We introduce Stardust, a compiler from sparse tensor algebra languages to a sparse reconfigurable dataflow architecture via a parallel-patterns programming model. Stardust lets performance engineers specify the placement of data into memories separately from the placement of computation onto compute units. Users first schedule data placement onto an abstract memory model, and then Stardust binds that data to complex, on-chip physical memories. With guidance from user schedules, Stardust binds computation using these on-chip data structures to the appropriate parallel patterns. Through cycle-accurate simulation, we show that Stardust generates nine more tensor algebra kernels than the original Capstan sparse RDA work. The generated kernels perform, on average, 138× better than generated CPU kernels and 41× better than generated GPU kernels.
Authors
- Kunle Olukotun (ORCID: https://orcid.org/0000-0002-8779-0636)
- Olivia Hsu (ORCID: https://orcid.org/0000-0002-4195-8106)
- Fredrik Kjølstad (ORCID: https://orcid.org/0000-0002-2267-903X)
- Alexander Rucker (ORCID: https://orcid.org/0000-0002-1928-0845)
- Varun Bhavin Desai (ORCID: https://orcid.org/0009-0003-9936-2422)
- Tian Zhao (ORCID: https://orcid.org/0000-0001-6456-9763)
Institutions
- Stanford University (US)
Publication Details
- Published
- 2025-02-22
- DOI
- https://doi.org/10.1145/3696443.3708918
- Citations
- 3
- Primary Topic
- Parallel Computing and Optimization Techniques
- Type
- article
- Field-Weighted Citation Impact
- 6.81