Write a Blog >>
SPLASH 2017
Sun 22 - Fri 27 October 2017 Vancouver, Canada
Tue 24 Oct 2017 11:10 - 11:50 at Kensington - Session 2

The scope of compiler optimizations is often limited by control flow, which prohibits optimizations across basic block boundaries. Code duplication can solve this problem by extending basic block sizes, thus enabling subsequent optimizations. However, duplicating code for every optimization opportunity may lead to excessive code growth. Therefore, a holistic approach is required that is capable of finding optimization opportunities and classifying their impact.

This paper presents a novel approach to determine which code should be duplicated in order to improve peak performance. The approach analyzes duplication candidates for subsequent optimizations opportunities. It does so by simulating a duplication operation and analyzing its impact on other optimizations. This allows a compiler to weight up multiple success metrics in order to choose the code duplication operations with the maximum optimization potential. We further show how to map code duplication opportunities to an optimization cost model that allows us to maximize performance while minimizing code size increase.

Tue 24 Oct

Displayed time zone: Tijuana, Baja California change

10:30 - 12:00
10:30
40m
Talk
Genetic Improvement in Code Interpreters and Compilers
Doctoral Symposium
Oliver Krauss University of Applied Sciences Upper Austria
11:10
40m
Talk
Simulation-based Code Duplication for Enhancing Compiler Optimizations
Doctoral Symposium
David Leopoldseder Johannes Kepler University Linz