Exploration of Compiler Optimization Sequences Using a Hybrid Approach

Authors

  • Tiago Cariolano de Souza Xavier Departament of Informatics, State University of Maringá
  • Anderson Faustino da Silva State University of Maringá

Keywords:

Compilers, optimizations, sequence, performance

Abstract

Finding a program-specific compiler optimization sequence is a challenge, due to the large number of optimizations provided by optimizing compilers. As a result, researchers have proposed design-space exploration schemes. This paper also presents a design-space exploration scheme, which aims to search for a compiler optimization sequence. Our hybrid approach relies on sequences previously generated for a set of training programs, with the purpose of finding optimizations and their order of application. In the first step, a clustering algorithm chooses optimizations, and in the second step, a metaheuristic algorithm discovers the sequence, in which the compiler will apply each optimization. We evaluate our approach using the LLVM compiler, and an I7 processor, respectively. The results show that we can find optimization sequences that result in target codes that, when executed on the I7 processor, outperform the standard optimization level O3, by an average improvement of 8.01 % and 6.07 %, on Polybench and cBench benchmark suites, respectively. In addition, our approach outperforms the method proposed by Purini and Jain, Best10, by an average improvement of 24.22 % and 38.81 %, considering the two benchmarks suites.

Downloads

Download data is not yet available.

Downloads

Published

2018-05-03

How to Cite

de Souza Xavier, T. C., & da Silva, A. F. (2018). Exploration of Compiler Optimization Sequences Using a Hybrid Approach. Computing and Informatics, 37(1), 165–185. Retrieved from http://147.213.75.17/ojs/index.php/cai/article/view/2018_1_165

Most read articles by the same author(s)