DeepAI AI Chat
Log In Sign Up

Sympiler: Transforming Sparse Matrix Codes by Decoupling Symbolic Analysis

05/18/2017
by   Kazem Cheshmi, et al.
adobe
The University of Arizona
Rutgers University
0

Sympiler is a domain-specific code generator that optimizes sparse matrix computations by decoupling the symbolic analysis phase from the numerical manipulation stage in sparse codes. The computation patterns in sparse numerical methods are guided by the input sparsity structure and the sparse algorithm itself. In many real-world simulations, the sparsity pattern changes little or not at all. Sympiler takes advantage of these properties to symbolically analyze sparse codes at compile-time and to apply inspector-guided transformations that enable applying low-level transformations to sparse codes. As a result, the Sympiler-generated code outperforms highly-optimized matrix factorization codes from commonly-used specialized libraries, obtaining average speedups over Eigen and CHOLMOD of 3.8X and 1.5X respectively.

READ FULL TEXT

page 1

page 2

page 3

page 4

11/24/2021

Vectorizing Sparse Matrix Codes with Dependency Driven Trace Analysis

Sparse computations frequently appear in scientific simulations and the ...
05/12/2022

Sparse Random Khatri-Rao Product Codes for Distributed Matrix Multiplication

We introduce two generalizations to the paradigm of using Random Khatri-...
11/24/2021

Composing Loop-carried Dependence with Other Loops

Sparse fusion is a compile-time loop transformation and runtime scheduli...
11/11/2020

Sparse and Balanced MDS Codes over Small Fields

Maximum Distance Separable (MDS) codes with a sparse and balanced genera...
01/31/2020

Capacity-achieving Polar-based LDGM Codes with Crowdsourcing Applications

In this paper we study codes with sparse generator matrices. More specif...
08/02/2015

Toward a Robust Sparse Data Representation for Wireless Sensor Networks

Compressive sensing has been successfully used for optimized operations ...
07/07/2022

Finite-rate sparse quantum codes aplenty

We introduce a methodology for generating random multi-qubit stabilizer ...