|
ABSTRACT
There have been many demonstrations that the expressive power of Lisp can greatly simplify the process of writing numerical programs, but at the cost of reduced performance.[10][16] I show that by coupling Lisp's abstract, expressive style of programming with a compiler that uses partial evaluation, data abstractions can be eliminated at compile time, producing extremely high-performance code. For an important class of numerical programs, partial evaluation achieves order-of-magnitude speed-ups over conventional Lisp compilation technology. This approach has proven to be especially effective when used in conjunction with schedulers for VLIW and highly pipelined architectures, because the elimination of data structures and procedural abstractions exposes the low-level parallelism inherent in a computation.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
| |
3
|
|
| |
4
|
Anders Bondorf amd Olivier D~uvy, 'Automatic Autoprojection of Recuzsive Equations with Global Variables and Abstract Data Types~, DIKU research report 90/04, University of Copenhagen, Denmark, January 1990.
|
| |
5
|
BjzIner, D., Ershov, A. P., and Jones, N. D., (eds.), Partial Evaluation and Mixed Computation, North Holland, 1988.
|
| |
6
|
William H. Burge, 'An Optimizing Techniques for High Level Programming Languages", IBM Thomas J. Watson Research Center Report RC5834 (~25271), Yorktown Heights, New York, February 1976.
|
| |
7
|
Ollvler Danvy, 'Semantics-Directed Compilation of Non-Linear Patterns', Technical Report 303, Indian~ University, Bloomongton, IN., January 1990.
|
| |
8
|
|
| |
9
|
|
 |
10
|
|
| |
11
|
Neil D. 3ones, Carsten K. Gomard, Anders Bondorf, Olivier Danvy, Torben JE. Mogensen: 'A Serf-Applicable Partial Evaluator for the Lambda-Calculus', proceedings of the IEEE Computer Society 1990 International Conference on Compurer Languages, New Orleans, Louisiana, USA (March 12-15, 1990)
|
| |
12
|
Henryk Jam Komorowskl, ~A Specifics. tion of an Abstract Prolog Machine &nd its application to Partial Evaluation'. Linkoping Studies in Science and Technology Dissertations, No. 69., 1981, Linkopink University
|
| |
13
|
L. Robert Morris, "Automatic generation of time efficient digital signal processing 8oftwaref IEEE Tranzactionz on Acoustics, Speech, and Signal Processing, Vol. ASSP-25, No. 1, pps. 74-79, February 1977.
|
| |
14
|
Laurence Nagel, SPICE~: A Computer Program to Simulate Semiconductor Cir. cults, Electronics Research Laboratory Report No. ERE.MS, O, University of California, Berkeley, May 1975.
|
 |
15
|
|
 |
16
|
|
| |
17
|
|
 |
18
|
|
| |
19
|
Weise, Daniel, "Graphs as an Intermediate Representation for Partial Evaluation~, Computer Systems Laboratory, Stanford University, Submitted for publication, March 1990.
|
| |
20
|
|
CITED BY 13
|
|
|
|
|
|
|
|
M. C. Rinard , D. J. Scales , M. S. Lam, Heterogeneous parallel programming in Jade, Proceedings of the 1992 ACM/IEEE conference on Supercomputing, p.245-256, November 16-20, 1992, Minneapolis, Minnesota, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|