Calpa: A Tool for Automating Selective Dynamic Compilation

M. Mock, C. Chambers, and S. Eggers

Department of Computer Science and Engineering
University of Washington

In the proceedings of the 33rd Annual ACM SIGMICRO Symposium on Microarchitecture (MICRO-33) , December 2000, pp. 291-202.

ACM's Copyright Policy.

`
  • PostScript (961kB)
  • Compressed PostScript (compress, 506kB)
  • Compressed PostScript (gzip, 475kB)
  • PDF (166kB)
  • 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

    Selective dynamic compilation systems, typically driven by annotations that identify run-time constants, can achieve significant program speedups. However, manually inserting annotations is a tedious and time-consuming process that requires careful inspection of a program's static characteristics and run-time behavior and much trial and error in order to select the most beneficial annotations. Calpa is a system that generates annotations automatically for the DyC dynamic compiler. Calpa combines execution frequency and value profile information with a model of dynamic compilation cost and dynamically generated code benefit to choose run-time constants and other dynamic compilation strategies. For the programs tested so far, Calpa 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, but without the need for programmer intervention.


    Last updated December 10, 2001.
    Markus Mock (mock@cs.washington.edu)