A Content Based Filtering Approach for the Automatic Tuning of Compiler Optimizations
Main Article Content
Abstract
Recently a large number of compiler conversions have been implemented to optimize programs. A comprehensive exploration of all possible sequences of optimization is not practical because the search space is huge considering the large number of compiler optimizations passes. In addition, predicting the effectiveness of these optimizations is not an easy task. In this work, the suggested approach offers automatic tuning of compiler optimization sequences in place of manually tuning by recommended optimization sequences based on program features. Techniques inspired from the Recommendation System (RS) field to provide a solution to the autotuning of compiler optimizations problem. Content Based filtering method is finding a group of programs that are closest to the unseen program based on the similarity of their features. Then the best optimization sequences for these programs are recommended to the unseen one. Two versions of the CBF method, with and without rate value are presented.
The approach is evaluated using three benchmark suites PolyBench, Shootout, and Stanford, including 50 different programs and using LLVM (Low Level Virtual Machine) compiler passes down Linux Ubuntu. Results obtained showed that such method is superior to the standard level of optimization -O3 of LLVM compiler in improving the execution time by an average of 9.3 % for CBF without rate, 13.7% for CBF with rate.
Downloads
Metrics
Article Details
You are free to:
- Share — copy and redistribute the material in any medium or format for any purpose, even commercially.
- Adapt — remix, transform, and build upon the material for any purpose, even commercially.
- The licensor cannot revoke these freedoms as long as you follow the license terms.
Under the following terms:
- Attribution — You must give appropriate credit , provide a link to the license, and indicate if changes were made . You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
Notices:
You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation .
No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.