ACM Home Page
Please provide us with feedback. Feedback
Towards automatic construction of staged compilers
Full text PdfPdf (270 KB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
Portland, Oregon
Pages: 113 - 125  
Year of Publication: 2002
ISBN:1-58113-450-9
Also published in ...
Authors
Matthai Philipose  University of Washington, Seattle WA
Craig Chambers  University of Washington, Seattle WA
Susan J. Eggers  University of Washington, Seattle WA
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 30,   Citation Count: 2
Additional Information:

abstract   references   cited by   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/503272.503284
What is a DOI?

ABSTRACT

Some compilation systems, such as offline partial evaluators and selective dynamic compilation systems, support staged optimizations. A staged optimization is one where a logically single optimization is broken up into stages, with the early stage(s) performing preplanning set-up work, given any available partial knowledge about the program to be compiled, and the final stage completing the optimization. The final stage can be much faster than the original optimization by having much of its work performed by the early stages. A key limitation of current staged optimizers is that they are written by hand, sometimes in an ad hoc manner. We have developed a framework called the Staged Compilation Framework (SCF) for systematically and automatically converting single-stage optimizations into staged versions. The framework is based on a combination of aggressive partial evaluation and dead-assignment elimination. We have implemented SCF in Standard ML. A preliminary evaluation shows that SCF can speed up classical optimization of some commonly used C functions by up to 12× (and typically between 4.5× and 5.5×).


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
 
3
 
4
5
 
6
C. Chambers, J. Dean, and D. Grove. Whole-program optimization of objectoriented languages. Technical Report TR-96-06-02, Department of Computer Science and Engineering. University of Washington, June 1996.
 
7
8
9
10
11
 
12
 
13
14
15
 
16
17
 
18
19
20
 
21
M. Leone and P. Lee. Optimizing ML with run-time code generation. Technical report CMU-CS-95-205, School of Computer Science, Carnegie Mellon University, December 1995.
 
22
23
 
24
 
25
26
 
27
 
28
J. C. Reynolds. Automatic computation of data set definitions. In A. J. H. Morrell, editor, Information Processing 68, volume 1, pages 456-461, Amsterdam, 1969. North-Holland.
 
29
30
31
 
32
 
33

Collaborative Colleagues:
Matthai Philipose: colleagues
Craig Chambers: colleagues
Susan J. Eggers: colleagues