Raced Profiles: Efficient Selection of Competing Compiler Optimizations

被引:0
|
作者
Leather, Hugh [1 ]
O'Boyle, Michael [1 ]
Worton, Bruce [2 ]
机构
[1] Univ Edinburgh, Sch Informat, Edinburgh EH8 9YL, Midlothian, Scotland
[2] Univ Edinburgh, Sch Math, Edinburgh EH8 9YL, Midlothian, Scotland
关键词
Measurement; Performance; Iterative Compilation; Statistics;
D O I
10.1145/1543136.1542460
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Many problems in embedded compilation require one set of optimizations to be selected over another based on run time performance. Self-tuned libraries, iterative compilation and machine learning techniques all compare multiple compiled program versions. In each, program versions are timed to determine which has the best performance. The program needs to be run multiple times for each version because there is noise inherent in most performance measurements. The number of runs must be enough to compare different versions, despite the noise, but executing more than this will waste time and energy. The compiler writer must either risk taking too few runs, potentially getting incorrect results, or taking too many runs increasing the time for their experiments or reducing the number of program versions evaluated. Prior works choose constant size sampling plans where each compiled version is executed a fixed number of times without regard to the level of noise. In this paper we develop a sequential sampling plan which can automatically adapt to the experiment so that the compiler writer can have both confidence in the results and also be sure that no more runs were taken than were needed. We show that our system is able to correctly determine the best optimization settings with between 76% and 87% fewer runs than needed by a brute force, constant sampling size approach. We also compare our approach to JavaSTATS(10); we needed 77% to 89% fewer runs than it needed.
引用
收藏
页码:50 / 59
页数:10
相关论文
共 50 条
  • [1] Raced Profiles: Efficient Selection of Competing Compiler Optimizations
    Leather, Hugh
    O'Boyle, Michael
    Worton, Bruce
    LCTES'09: PROCEEDINGS OF THE 2009 ACM SIGPLAN/SIGBED CONFERENCE ON LANGUAGES, COMPILERS, AND TOOLS FOR EMBEDDED SYSTEMS, 2009, : 50 - 59
  • [2] Automatic Selection of Compiler Optimizations by Machine Learning
    Peker, Melih
    Ozturk, Ozcan
    Yildirim, Suleyman
    Ozturk, Mahiye Uluyagmur
    2023 31ST SIGNAL PROCESSING AND COMMUNICATIONS APPLICATIONS CONFERENCE, SIU, 2023,
  • [3] An Automatic Compiler Optimizations Selection Framework for Embedded Applications
    Hung, Shih-Hao
    Tu, Chia-Heng
    Lin, Huang-Sen
    Chen, Chi-Meng
    2009 INTERNATIONAL CONFERENCE ON EMBEDDED SOFTWARE AND SYSTEMS, PROCEEDINGS, 2009, : 381 - +
  • [4] Compiler Optimizations for OpenMP
    Doerfert, Johannes
    Finkel, Hal
    EVOLVING OPENMP FOR EVOLVING ARCHITECTURES, 2018, 11128 : 113 - 127
  • [5] COMPILER OPTIMIZATIONS FOR THE WAM
    TURK, AK
    LECTURE NOTES IN COMPUTER SCIENCE, 1986, 225 : 657 - 662
  • [6] Phase Directed Compiler Optimizations
    Jain, Era
    Roy, Subhajit
    PROCEEDINGS OF 2016 IEEE 23RD INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING (HIPC), 2016, : 270 - 279
  • [7] Incremental Verification of Compiler Optimizations
    Fedyukovich, Grigory
    Gurfinkel, Arie
    Sharygina, Natasha
    NASA FORMAL METHODS, NFM 2014, 2014, 8430 : 300 - 306
  • [8] GRAPHICAL VISUALIZATION OF COMPILER OPTIMIZATIONS
    BOYD, MR
    WHALLEY, DB
    JOURNAL OF PROGRAMMING LANGUAGES, 1995, 3 (02): : 69 - 94
  • [9] Detection of Optimizations Missed by the Compiler
    Zhang, Yi
    PROCEEDINGS OF THE 31ST ACM JOINT MEETING EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, ESEC/FSE 2023, 2023, : 2192 - 2194
  • [10] ADVANCED COMPILER OPTIMIZATIONS FOR SUPERCOMPUTERS
    PADUA, DA
    WOLFE, MJ
    COMMUNICATIONS OF THE ACM, 1986, 29 (12) : 1184 - 1201