To save the paper to a file using Netscape Navigator, right click
on one of the links at the left and select "Save Link As..."
Abstract
Declarative dynamic compilation systems are driven by user annotations
that identify runtime constants. Although manually inserting
annotations can achieve significant program speedups, it is a tedious
and time-consuming process that requires careful inspection of a
program's static characteristics and runtime behavior and much trial
and error in order to craft beneficial annotations. Calpa is a system
that generates annotations automatically for the DyC dynamic
compiler. Calpa utilizes execution frequency and value profile
information to drive a program analysis based on a (dynamic
compilation) cost/ (dynamically generated code) benefit model to
choose runtime constants and DyC's specialization policies. Although
only a subset of Calpa's eventual capabilities has been implemented,
for the programs tested so far, it generates annotations of the same
or better quality as those found by a human, but in a fraction of the
time. The result was equal or better program speedups from dynamic
compilation.