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 条
  • [41] Locality-Based Optimizations in the Chapel Compiler
    Kayraklioglu, Engin
    Ronaghan, Elliot
    Ferguson, Michael P.
    Chamberlain, Bradford L.
    LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING (LCPC 2021), 2022, 13181 : 3 - 17
  • [42] Analyzing the Effects of Compiler Optimizations on Application Reliability
    Demertzi, Melina
    Annavaram, Murali
    Hall, Mary
    2011 IEEE INTERNATIONAL SYMPOSIUM ON WORKLOAD CHARACTERIZATION (IISWC), 2011, : 184 - 193
  • [43] The effects of compiler optimizations in face recognition system
    Daud, Shuhaizar
    Khalib, Zahereel Ishwar Abdul
    Ahmad, R. Badlishah
    Juhari, M. Rizon
    2008 INTERNATIONAL CONFERENCE ON COMPUTER AND COMMUNICATION ENGINEERING, VOLS 1-3, 2008, : 833 - +
  • [44] Enhancing compiler techniques for memory energy optimizations
    Zambreno, J
    Kandemir, MT
    Choudhary, A
    EMBEDDED SOFTWARE, PROCEEDINGS, 2002, 2491 : 364 - 381
  • [45] Microarchitecture sensitive empirical models for compiler optimizations
    Vaswani, Kapil
    Thazhuthaveetil, Matthew J.
    Srikant, Y. N.
    Joseph, P. J.
    CGO 2007: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2007, : 131 - +
  • [46] Automated Programmable Control and Parameterization of Compiler Optimizations
    Yi, Qing
    2011 9TH ANNUAL IEEE/ACM INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION (CGO), 2011, : 97 - 106
  • [47] Assessing the Impact of Compiler Optimizations on GPUs Reliability
    Dos Santos, Fernando Fernandes
    Carro, Luigi
    Vella, Flavio
    Rech, Paolo
    ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2024, 21 (02)
  • [48] Parallel Pattern Compiler for Automatic Global Optimizations
    Schmitz, Adrian
    Burak, Semih
    Miller, Julian
    Mueller, Matthias S.
    PARALLEL COMPUTING, 2024, 122
  • [49] The IPS Compiler: Optimizations, Variants and Concrete Efficiency
    Lindell, Yehuda
    Oxman, Eli
    Pinkas, Benny
    ADVANCES IN CRYPTOLOGY - CRYPTO 2011, 2011, 6841 : 259 - 276
  • [50] Program partitioning optimizations in an HPF prototype compiler
    Sato, M
    Hirooka, T
    Wada, K
    Yamamoto, F
    TWENTIETH ANNUAL INTERNATIONAL COMPUTER SOFTWARE & APPLICATIONS CONFERENCE (COMPSAC'96), PROCEEDINGS, 1996, 20 : 124 - 131