Applying the right compiler optimizations to a particular program can have a significant impact on program performance. Due to the non-linear interaction of compiler optimizations, however, determining the best setting is nontrivial. There have been several proposed techniques that search the space of compiler options to find good solutions; however such approaches can be expensive. This paper proposes a different approach using performance counters as a means of determining good compiler optimization settings. This is achieved by learning a model off-line which can then be used to determine good settings for any new program. We show that such an approach outperforms the state-ofthe-art and is two orders of magnitude faster on average. Furt...
Compiler optimizations are difficult to implement and add complexity to a compiler. For this reason,...
To meet the demands of modern architectures, optimizing compilers must incorporate an ever larger nu...
Current compilers fail to deliver satisfactory levels of performance on modern processors, due to ra...
Applying the right compiler optimizations to a particular program can have a significant impact on p...
Developing an optimizing compiler for a newly proposed architecture is extremely difficult when ther...
Modern compilers implement a number of optimization switches and they must be configured carefully i...
Compile-time optimizations generally improve program performance. Nevertheless, degradations caused ...
The highest optimization level of a compiler, such as-O3 in GCC, does not ensure the best performanc...
Cavazos, JohnIt has been shown that machine-learning driven optimizations often outperform bundled o...
Compile-time optimizations generally improve program performance. Nevertheless, degradations caused ...
Developing an optimizing compiler for a newly proposed architecture is ex-tremely difficult when the...
Although compile-time optimizations generally improve program performance, degradations caused by in...
Although compile-time optimizations generally improve program performance, degradations caused by in...
Many optimisations in modern compilers have been traditionally based around using analysis to examin...
Cavazos, JohnThe number of optimizations that are available in modern day compilers are in their hun...
Compiler optimizations are difficult to implement and add complexity to a compiler. For this reason,...
To meet the demands of modern architectures, optimizing compilers must incorporate an ever larger nu...
Current compilers fail to deliver satisfactory levels of performance on modern processors, due to ra...
Applying the right compiler optimizations to a particular program can have a significant impact on p...
Developing an optimizing compiler for a newly proposed architecture is extremely difficult when ther...
Modern compilers implement a number of optimization switches and they must be configured carefully i...
Compile-time optimizations generally improve program performance. Nevertheless, degradations caused ...
The highest optimization level of a compiler, such as-O3 in GCC, does not ensure the best performanc...
Cavazos, JohnIt has been shown that machine-learning driven optimizations often outperform bundled o...
Compile-time optimizations generally improve program performance. Nevertheless, degradations caused ...
Developing an optimizing compiler for a newly proposed architecture is ex-tremely difficult when the...
Although compile-time optimizations generally improve program performance, degradations caused by in...
Although compile-time optimizations generally improve program performance, degradations caused by in...
Many optimisations in modern compilers have been traditionally based around using analysis to examin...
Cavazos, JohnThe number of optimizations that are available in modern day compilers are in their hun...
Compiler optimizations are difficult to implement and add complexity to a compiler. For this reason,...
To meet the demands of modern architectures, optimizing compilers must incorporate an ever larger nu...
Current compilers fail to deliver satisfactory levels of performance on modern processors, due to ra...