DocumentCode :
2704813
Title :
Predicting unroll factors using supervised classification
Author :
Stephenson, Mark ; Amarasinghe, Saman
Author_Institution :
Comput. Sci. & Artificial Intelligence Lab., MIT, Cambridge, MA, USA
fYear :
2005
fDate :
20-23 March 2005
Firstpage :
123
Lastpage :
134
Abstract :
Compilers base many critical decisions on abstracted architectural models. While recent research has shown that modeling is effective for some compiler problems, building accurate models requires a great deal of human time and effort. This paper describes how machine learning techniques can be leveraged to help compiler writers model complex systems. Because learning techniques can effectively make sense of high dimensional spaces, they can be a valuable tool for clarifying and discerning complex decision boundaries. In this work we focus on loop unrolling, a well-known optimization for exposing instruction level parallelism. Using the Open Research Compiler as a testbed, we demonstrate how one can use supervised learning techniques to determine the appropriateness of loop unrolling. We use more than 2,500 loops - drawn from 72 benchmarks - to train two different learning algorithms to predict unroll factors (i.e., the amount by which to unroll a loop) for any novel loop. The technique correctly predicts the unroll factor for 65% of the loops in our dataset, which leads to a 5% overall improvement for the SPEC 2000 benchmark suite (9% for the SPEC 2000 floating point benchmarks).
Keywords :
heuristic programming; learning (artificial intelligence); optimising compilers; parallelising compilers; program control structures; Open Research Compiler; SPEC 2000 benchmark suite; branch prediction; heuristic programming; instruction level parallelism; loop unrolling; machine learning; optimising compilers; program compilers; supervised learning; Artificial intelligence; Computer science; History; Humans; Laboratories; Machine learning; Optimizing compilers; Pipeline processing; Support vector machine classification; Support vector machines;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Code Generation and Optimization, 2005. CGO 2005. International Symposium on
Print_ISBN :
0-7695-2298-X
Type :
conf
DOI :
10.1109/CGO.2005.29
Filename :
1402082
Link To Document :
بازگشت