DocumentCode
3315346
Title
Automatic, template-based run-time specialization: implementation and experimental study
Author
Noel, François ; Hornof, Luke ; Consel, Charles ; Lawall, Julia L.
Author_Institution
IRISA, Rennes, France
fYear
1998
fDate
14-16 May 1998
Firstpage
132
Lastpage
142
Abstract
Specializing programs with respect to run time values has been shown to drastically improve code performance on realistic programs ranging from operating systems to graphics. Recently, various approaches to specializing code at run time have been proposed. However, these approaches still suffer from shortcomings that limit their applicability: they are manual, too expensive, or require programs to be written in a dedicated language. We solve these problems by introducing new techniques to implement run time specialization. The key to our approach is the use of code templates. Templates are automatically generated from ordinary programs and are optimized before run time, allowing high quality code to be quickly generated at run time. Experimental results obtained on scientific and graphics code indicate that our approach is highly effective. Little run time overhead is introduced, since code generation primarily consists of copying instructions. Run time specialized programs run up to 10 times faster, and are nearly as fast as fully optimized programs (80% on average). The combination of low run time overhead and high code quality enables specialization to be amortized in as few as 3 runs. Although this approach is highly effective, its implementation is relatively simple since it exploits existing partial evaluation and compiler technologies
Keywords
automatic programming; computer graphics; partial evaluation (compilers); software reusability; automatic template based run time specialization; code generation; code performance; code templates; compiler technologies; copying instructions; dedicated language; graphics code; high quality code; operating systems; partial evaluation; program transformation; run time overhead; run time specialization; run time specialized programs; run time values; Computer science; Contracts; Graphics; Information science; Operating systems; Performance evaluation; Program processors; Runtime; Telecommunication computing;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer Languages, 1998. Proceedings. 1998 International Conference on
Conference_Location
Chicago, IL
ISSN
1074-8970
Print_ISBN
0-8186-8454-2
Type
conf
DOI
10.1109/ICCL.1998.674164
Filename
674164
Link To Document