1 / 9

Calpa: A Tool for Automating Dynamic Compilation

Calpa: A Tool for Automating Dynamic Compilation. Markus Mock, Mark Berryman, Craig Chambers, and Susan J. Eggers University of Washington. Outline. Motivation Overview of DyC Calpa System Experimental Results Conclusion Discussion. Motivation. Run time constants Optimizations

oona
Download Presentation

Calpa: A Tool for Automating Dynamic Compilation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Calpa: A Tool for Automating Dynamic Compilation Markus Mock, Mark Berryman, Craig Chambers, and Susan J. Eggers University of Washington

  2. Outline • Motivation • Overview of DyC • Calpa System • Experimental Results • Conclusion • Discussion

  3. Motivation • Run time constants • Optimizations • Constant propagation • Loop unrolling • Specialized code regions • Dynamic optimization > run-time cost

  4. DyC: Dynamic Compiler • Annotation directed run time specialization • Manual annotation requires • Good knowledge of application run-time behavior • Run time costs? • Legal annotation? • X = 3 /* run time constant (but not really…) */

  5. Motivation for Calpa • Manual annotation is difficult, and often becomes bottleneck • Automated annotation = Calpa

  6. Calpa • Combines program analysis and profile information to automatically derive annotations • Cost / Benefit Model predicts effect of annotation • Implemented with SUIF

  7. Experimental Results • Small and medium applications annotated • Instrumented program size: x 8-14 • Run time of instrumented executable: x 2 – 4 orders of magnitude (x = un-instrumented application)

  8. Conclusion • Calpa automates annotation process for dynamic compilation • It is faster and produces better annotations than manual process

  9. Discussion • Dynamic Compiler needs more work • Too slow for actual gains • Run time constants can boost ILP and memory prefetching • What about phase oriented optimizations?

More Related