TY - GEN
T1 - Optimization coaching
T2 - 2012 ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2012
AU - St-Amour, Vincent
AU - Tobin-Hochstadt, Sam
AU - Felleisen, Matthias
PY - 2012
Y1 - 2012
N2 - Optimizing compilers map programs in high-level languages to high-performance target language code. To most programmers, such a compiler constitutes an impenetrable black box whose inner workings are beyond their understanding. Since programmers often must understand the workings of their compilers to achieve their desired performance goals, they typically resort to various forms of reverse engineering, such as examining compiled code or intermediate forms. Instead, optimizing compilers should engage programmers in a dialog. This paper introduces one such possible form of dialog: optimization coaching. An optimization coach watches while a program is compiled, analyzes the results, generates suggestions for enabling further compiler optimization in the source program, and presents a suitable synthesis of its results to the programmer. We present an evaluation based on case studies, which illustrate how an optimization coach can help programmers achieve optimizations resulting in substantial performance improvements.
AB - Optimizing compilers map programs in high-level languages to high-performance target language code. To most programmers, such a compiler constitutes an impenetrable black box whose inner workings are beyond their understanding. Since programmers often must understand the workings of their compilers to achieve their desired performance goals, they typically resort to various forms of reverse engineering, such as examining compiled code or intermediate forms. Instead, optimizing compilers should engage programmers in a dialog. This paper introduces one such possible form of dialog: optimization coaching. An optimization coach watches while a program is compiled, analyzes the results, generates suggestions for enabling further compiler optimization in the source program, and presents a suitable synthesis of its results to the programmer. We present an evaluation based on case studies, which illustrate how an optimization coach can help programmers achieve optimizations resulting in substantial performance improvements.
KW - Optimization Coaching
KW - Visualization
UR - http://www.scopus.com/inward/record.url?scp=84869759254&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84869759254&partnerID=8YFLogxK
U2 - 10.1145/2384616.2384629
DO - 10.1145/2384616.2384629
M3 - Conference contribution
AN - SCOPUS:84869759254
SN - 9781450315616
T3 - Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications, OOPSLA
SP - 163
EP - 178
BT - SPLASH 2012
Y2 - 19 October 2012 through 26 October 2012
ER -