A Compilation Strategy for Numerical Programs Based on Partial Evaluation
Abstract
This work demonstrates how partial evaluation can be put to practical use in the domain of high-performance numerical computation. I have developed a technique for performing partial evaluation by using placeholders to propagate intermediate results, and have implemented a prototype compiler based on this technique. For an important class of numerical programs, this compiler improves performance by an order of magnitude over conventional compilation techniques. I also show that by eliminating inherently sequential data-structure references, partial evaluation exposes the low-level parallelism inherent in a computation. I have implemented a parallel program generator, as well as several analysis programs that study the tradeoffs involved in the design of an architecture that can effectively utilize this parallelism. I present these results using the 9- body gravitational attraction problem as an example.
Document Details
- Document Type
- Technical Report
- Publication Date
- Jul 01, 1989
- Accession Number
- ADA212759
Entities
People
- Andrew A. Berlin
Organizations
- Massachusetts Institute of Technology