5 papers
SparseConflicts: Handling Conflicting Data Layouts in Sparse Tensor Contractions
Adhitha Dias, Kirshanthan Sundararajah, Artem Pelenitsyn +1
Optimizing sparse tensor computations is challenging due to the use of compressed storage formats, which leads to non-affine loop nests and a vast, complex schedule space. The perf…
SoCal: A Language for Memory-Layout Factorization of Recursive Datatypes
Vidush Singhal, Mikah Kainen, Artem Pelenitsyn +3
Array-of-structures (AoS) to structure-of-arrays (SoA) is a classic compiler transformation that improves memory locality and enables data-parallel execution. Existing AoS-to-SoA t…
Bring Your Own Formats and Kernels: Composable Abstractions for Sparse Matrix Computation
Pratyush Das, Amirhossein Basareh, Artem Pelenitsyn +3
Real-world sparse matrices often feature multiple forms of structured sparsity -- rectangular dense blocks, diagonal bands, and scattered entries -- that no single storage format c…
Optimizing Layout of Recursive Datatypes with Marmoset
Vidush Singhal, Chaitanya Koparkar, Joseph Zullo +5
While programmers know that the low-level memory representation of data structures can have significant effects on performance, compiler support to optimize the layout of those str…
SparseAuto: An Auto-Scheduler for Sparse Tensor Computations Using Recursive Loop Nest Restructuring
Adhitha Dias, Logan Anderson, Kirshanthan Sundararajah +2
Automated code generation and performance enhancements for sparse tensor algebra have become essential in many real-world applications, such as quantum computing, physical simulati…