Artigo Acesso aberto

Using annotations to reduce dynamic optimization time

2001; Association for Computing Machinery; Volume: 36; Issue: 5 Linguagem: Inglês

10.1145/381694.378831

ISSN

1558-1160

Autores

Chandra Krintz, Brad Calder,

Tópico(s)

Software System Performance and Reliability

Resumo

Dynamic compilation and optimization are widely used in heterogenous computing environments, in which an intermediate form of the code is compiled to native code during execution. An important trade off exists between the amount of time spent dynamically optimizing the program and the running time of the program. The time to perform dynamic optimizations can cause significant delays during execution and also prohibit performance gains that result from more complex optimization. In this research, we present an annotation framework that substantially reduces compilation overhead of Java programs. Annotations consist of analysis information collected off-line and are incorporated into Java programs. The annotations are then used by dynamic compilers to guide optimization. The annotations we present reduce compilation overhead incurred at all stages of compilation and optimization as well as enable complex optimizations to be performed dynamically. On average, our annotation optimizations reduce optimized compilation overhead by 78% and enable speedups of 7% on average for the programs examined.

Referência(s)