MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Automatic, Template-Based Run-Time Specialization: Implementation and Experimental Study (1998) [47 citations — 12 self]

by François Noël ,  Luke Hornof ,  Charles Consel ,  Julia L. Lawall
In International Conference on Computer Languages
Add To MetaCart

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 1...

Citations

183 A General Approach for Run-Time Specialization and its Application to C – Consel, Nol - 1996
174 MetaML and multi-stage programming with explicit annotations – Taha, Sheard
144 Optimizing ML with run-time code generation – Lee, Leone - 1996
101 C: a language for high-level, efficient, and machine-independent dynamic code generation – Engler, Hsieh, et al. - 1996
99 effective dynamic compilation – Fast - 1996
97 The Synthesis kernel – Pu, Massalin, et al. - 1988
72 A uniform approach for compile-time and run-time specialization – Consel, Hornof, et al. - 1996
58 A case for runtime code generation – Keppel, Eggers, et al. - 1991
56 Numerical Analysis – Kincaid, Cheney - 2002
52 Lightweight run-time code generation – Leone, Lee - 1994
47 Declarative Specialization of Object-Oriented Programs – Volanschi, Consel, et al. - 1997
43 A code generation interface for ANSI C – Fraser, Hanson - 1990
39 Hardware/software trade-offs for bitmap graphics on the Blit – Pike, Locanthi, et al. - 1985
37 Accurate binding-time analysis for imperative languages: Flow, context, and return sensitivity – Hornof, Noy
21 Multiplication by Integer Constants – Bernstein - 1986
21 Two for the price of one: Composing partial evaluation and compilation – Sperber, Thiemann - 1997
19 A declarative approach to run-time code generation – Leone, Lee - 1996
18 Eoeective specialization of realistic programs via use sensitivity – Hornof, Noy, et al. - 1997
17 Binding-time analysis applied to mathematical algorithms – Glück, Nakashige, et al. - 1995
11 Resource-bounded partial evaluation – Debray - 1997
11 Fast bitblt() with asm() and cpp – Locanthi - 1987
9 JIT vs. Offline Compilers: Limits and Benefits of Bytecode Compilation – Muller, Moura, et al. - 1996
6 Static Analyses for the Effective Specialization of Realistic Applications – Hornof - 1997
2 Abstract Interpretation of Partial-Evaluation Algorithms – Malmkjaer - 1993
2 Sp'ecialisation dynamique de code par 'evaluation partielle – Noel - 1996
1 QuaC: Binary optimization for fast runtime code generation in C – Yarvin, Sah - 1994