IEEE Transactions on Parallel and Distributed Systems · 1996 · 56 citations · 24 references
ComputingComputer ScienceCompilersData StructuresOptimizationCode GenerationCompiler ConstructionData-flow AnalysisMatrix ComputationNumerical Linear AlgebraAddressingCode OptimizationCompile-time OptimizationDense Matrix AlgorithmsSparse Linear AlgebraSparse Matrix AlgorithmsSparse Matrix ComputationSparse Matrix Techniques
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.
24
Optimizing supercompilers for supercomputers
Michael Wolfe · 2020 · 840 citations
Iain Duff, Roger G. Grimes, John G. Lewis · ACM Transactions on Mathematical Software · 1989 · 647 citations · Full text