Attribute grammars: attribute evaluation methods
Methods and tools for compiler construction
Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Advanced compiler optimizations for supercomputers
Communications of the ACM - Special issue on parallelism
ACM Transactions on Mathematical Software (TOMS)
Direct methods for sparse matrices
Direct methods for sparse matrices
Run-time scheduling and execution of loops on message passing machines
Journal of Parallel and Distributed Computing - Special issue: algorithms for hypercube computers
Journal of Parallel and Distributed Computing - Special issue: software tools for parallel programming and visualization
Supercompilers for parallel and vector computers
Supercompilers for parallel and vector computers
Run-Time Parallelization and Scheduling of Loops
IEEE Transactions on Computers
Sparse extensions to the FORTRAN Basic Linear Algebra Subprograms
ACM Transactions on Mathematical Software (TOMS)
Algorithm 692: Model implementation and test package for the Sparse Basic Linear Algebra Subprograms
ACM Transactions on Mathematical Software (TOMS)
Compilation techniques for sparse matrix computations
ICS '93 Proceedings of the 7th international conference on Supercomputing
Advanced compiler optimizations for sparse computations
Proceedings of the 1993 ACM/IEEE conference on Supercomputing
ICS '94 Proceedings of the 8th international conference on Supercomputing
SPARK: a benchmark package for sparse computations
ICS '90 Proceedings of the 4th international conference on Supercomputing
ICS '89 Proceedings of the 3rd international conference on Supercomputing
Two Fast Algorithms for Sparse Matrices: Multiplication and Permuted Transposition
ACM Transactions on Mathematical Software (TOMS)
Some Design Features of a Sparse Matrix Code
ACM Transactions on Mathematical Software (TOMS)
Loop Transformations for Restructuring Compilers: The Foundations
Loop Transformations for Restructuring Compilers: The Foundations
Optimizing Supercompilers for Supercomputers
Optimizing Supercompilers for Supercomputers
Parallel Programming and Compilers
Parallel Programming and Compilers
Computer Solution of Large Sparse Positive Definite
Computer Solution of Large Sparse Positive Definite
Solving Linear Systems on Vector and Shared Memory Computers
Solving Linear Systems on Vector and Shared Memory Computers
A Loop Transformation Theory and an Algorithm to Maximize Parallelism
IEEE Transactions on Parallel and Distributed Systems
A Singular Loop Transformation Framework Based on Non-Singular Matrices
Proceedings of the 5th International Workshop on Languages and Compilers for Parallel Computing
On Automatic Data Structure Selection and Code Generation for Sparse Computations
Proceedings of the 6th International Workshop on Languages and Compilers for Parallel Computing
Reshaping Access Patterns for Generating Sparse Codes
LCPC '94 Proceedings of the 7th International Workshop on Languages and Compilers for Parallel Computing
Interactive parallelization of numerical scientific programs
Interactive parallelization of numerical scientific programs
Experimental evaluation of efficient sparse matrix distributions
ICS '96 Proceedings of the 10th international conference on Supercomputing
Sparse code generation for imperfectly nested loops with dependences
ICS '97 Proceedings of the 11th international conference on Supercomputing
Vienna-Fortran/HPF Extensions for Sparse and Irregular Problems and Their Compilation
IEEE Transactions on Parallel and Distributed Systems
Efficient support of parallel sparse computation for array intrinsic functions of Fortran 90
ICS '98 Proceedings of the 12th international conference on Supercomputing
The automatic generation of sparse primitives
ACM Transactions on Mathematical Software (TOMS)
Compiling parallel code for sparse matrix applications
SC '97 Proceedings of the 1997 ACM/IEEE conference on Supercomputing
Array form representation of idiom recognition system for numerical programs
Proceedings of the 2001 conference on APL: an arrays odyssey
Parallel Sparse Supports for Array Intrinsic Functions of Fortran 90
The Journal of Supercomputing
Automatic Parallelization of Sparse Matrix Computations: A Static Analysis
Euro-Par '00 Proceedings from the 6th International Euro-Par Conference on Parallel Processing
Sparse Jacobian Computation in Automatic Differentiation by Static Program Analysis
SAS '98 Proceedings of the 5th International Symposium on Static Analysis
PARADEIS: An Object Library for Parallel Sparse Array Computation
ParNum '99 Proceedings of the 4th International ACPC Conference Including Special Tracks on Parallel Numerics and Parallel Computing in Image Processing, Video Processing, and Multimedia: Parallel Computation
On the Automatic Parallelization of Sparse and Irregular Fortran Programs
LCR '98 Selected Papers from the 4th International Workshop on Languages, Compilers, and Run-Time Systems for Scalable Computers
Toward an automatic parallelization of sparse matrix computations
Journal of Parallel and Distributed Computing
Approaches Based on Permutations for Partitioning Sparse Matrices on Multiprocessors
The Journal of Supercomputing
A compile/run-time environment for the automatic transformation of linked list data structures
International Journal of Parallel Programming
Analysis of Parallel Algorithms for Energy Conservation with GPU
GREENCOM-CPSCOM '10 Proceedings of the 2010 IEEE/ACM Int'l Conference on Green Computing and Communications & Int'l Conference on Cyber, Physical and Social Computing
Sublimation: expanding data structures to enable data instance specific optimizations
LCPC'10 Proceedings of the 23rd international conference on Languages and compilers for parallel computing
Energy cost evaluation of parallel algorithms for multiprocessor systems
Cluster Computing
Hi-index | 0.00 |
The problem of compiler optimization of sparse codes is well known and no satisfactory solutions have been found yet. One of the major obstacles is formed by the fact that sparse programs explicitly deal with particular data structures selected for storing sparse matrices. This explicit data structure handling obscures the functionality of a code to such a degree that optimization of the code is prohibited, for instance, by the introduction of indirect addressing. The method presented in this paper delays data structure selection until the compile phase, thereby allowing the compiler to combine code optimization with explicit data structure selection. This method enables the compiler to generate efficient code for sparse computations. Moreover, the task of the programmer is greatly reduced in complexity.