Continuous Compilation for Aggressive and Adaptive
Code Transformation

Speaker Dr. Bruce Childers
Department of Computer Science
University of Pittsburgh
Location IERF Conference Room 127
Date & Time May 13 , 2005
Refreshments at 2:30pm, Lecture begins at 3:00pm
Abstract Over the past several decades, the compiler research community has developed a number of sophisticated and powerful algorithms for a variety of code improvements. Although there are still promising directions for particular aspects of code optimization, research on optimizations is nearing the point of diminishing returns and other approaches are needed to achieve further performance improvements. Our research aims to address this challenge by investigating and developing an innovative framework and system for continuously and adaptively applying code improvements. Our system, the Continuous Compiler ( CoCo ), determines “optimization plans” at compile-time that describe the best way in which to apply both static and dynamic code transformations. The plans consider program and machine context, interaction among optimizations, and performance profit. Through such planning, CoCo can tailor and adapt its decisions to more synergistically apply a whole suite of code transformations.

This talk will describe the Continuous Compilation approach and present initial results. These results include novel analytic models that can accurately predict the performance benefit (profit) of applying an optimization without actually doing it or running the resulting program code. Using the analytic models, we have developed several planners that can guide a static optimizer. Initial results are very encouraging and show that optimizations can be effectively directed by planning. The talk will conclude with a brief discussion of CoCo ‘s run-time system, including its dynamic code translator, instrumentation optimizer, and source-level debugger for dynamically translated code.


Bruce Childers is an Assistant Professor in the Department of Computer Science at the University of Pittsburgh. Dr. Childers received a BS degree (Computer Science, 1991) from the College of William and Mary, and a PhD degree (Computer Science, 2000) from the University of Virginia. His research interests are compilers and software development tools, computer architecture, and embedded systems. Current projects include continuous compilation to synergistically apply both static and dynamic code optimizations, debugging for dynamically translated code, power-aware real-time systems, and demand-driven software testing.