The automatic generation of sparse primitives
- 1 June 1998
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Mathematical Software
- Vol. 24 (2) , 190-225
- https://doi.org/10.1145/290200.287636
Abstract
Primitives in mathematical software are usually written and optimized by hand. With the implementation of a “sparse compiler” that is capable of automatically converting a dense program into sparse code, however, a completely different approach to the generation of sparse primitives can be taken. A dense implementation of a particular primitive is supplied to the sparse compiler, after which it can be converted into many different sparse versions of this primitive. Each version is specifically tailored to a class of sparse matrices having a specific nonzero structure. In this article, we discuss some of our experiences with this new approach.Keywords
This publication has 19 references indexed in Scilit:
- The Use of Iteration Space Partitioning to Construct Representative Simple SectionsJournal of Parallel and Distributed Computing, 1996
- Automatic data structure selection and transformation for sparse matrix computationsIEEE Transactions on Parallel and Distributed Systems, 1996
- Advanced Compiler Optimizations for Sparse ComputationsJournal of Parallel and Distributed Computing, 1995
- On automatic data structure selection and code generation for sparse computationsPublished by Springer Nature ,1994
- Loop Transformations for Restructuring Compilers: The FoundationsPublished by Springer Nature ,1993
- The construction of numerical mathematical software for the AMT DAP by program transformationPublished by Springer Nature ,1992
- Algorithm 692: Model implementation and test package for the Sparse Basic Linear Algebra SubprogramsACM Transactions on Mathematical Software, 1991
- Sparse extensions to the FORTRAN Basic Linear Algebra SubprogramsACM Transactions on Mathematical Software, 1991
- A set of level 3 basic linear algebra subprogramsACM Transactions on Mathematical Software, 1990
- The impact of interprocedural analysis and optimization in the R n programming environmentACM Transactions on Programming Languages and Systems, 1986