Automatic translation of FORTRAN programs to vector form
ACM Transactions on Programming Languages and Systems (TOPLAS)
Analysis of interprocedural side effects in a parallel programming environment
Journal of Parallel and Distributed Computing - Special Issue on Languages, Compilers and environments for Parallel Programming
Interprocedural transformations for parallel code generation
Proceedings of the 1991 ACM/IEEE conference on Supercomputing
Interprocedural constant propagation: a study of jump function implementation
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Effective partial redundancy elimination
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
High-level semantic optimization of numerical codes
ICS '99 Proceedings of the 13th international conference on Supercomputing
Techniques for the translation of MATLAB programs into Fortran 90
ACM Transactions on Programming Languages and Systems (TOPLAS)
An annotation language for optimizing software libraries
Proceedings of the 2nd conference on Domain-specific languages
A case for source-level transformations in MATLAB
Proceedings of the 2nd conference on Domain-specific languages
Evaluating derivatives: principles and techniques of algorithmic differentiation
Evaluating derivatives: principles and techniques of algorithmic differentiation
Automatically tuned linear algebra software
SC '98 Proceedings of the 1998 ACM/IEEE conference on Supercomputing
An Implementation of Interprocedural Bounded Regular Section Analysis
IEEE Transactions on Parallel and Distributed Systems
Otter: Bridging the Gap between MATLAB and ScaLAPACK
HPDC '98 Proceedings of the 7th IEEE International Symposium on High Performance Distributed Computing
IPDPS '00 Proceedings of the 14th International Symposium on Parallel and Distributed Processing
An apl machine
A Dimension Abstraction Approach to Vectorization in Matlab
Proceedings of the International Symposium on Code Generation and Optimization
Static reuse distances for locality-based optimizations in MATLAB
Proceedings of the 24th ACM International Conference on Supercomputing
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
At Rice University, we have undertaken a project to construct a framework for generating high-level problem solving languages that can achieve high performance on a variety of platforms. The underlying strategy, called telescoping languages, builds problem-solving systems from domain-specific libraries and scripting languages by extensively preanalyzing libraries to produce a precompiler that optimizes library calls within the scripts as if they were primitives in the underlying language. Our study of applications written in Matlab by the signal processing group at Rice University has identified a collection of old and new optimizations that show promise for this particular domain. Two promising new optimizations are procedure vectorization and procedure strength reduction. By transforming these programs, at source level, according to the strategies described in this paper, we were able to achieve speedups ranging from a factor of 1.1 to 1.6 over the entire applications—with speedups for individual functions as high as 3.3.