FAROS: A Framework to Analyze OpenMP Compilation Through Benchmarking and Compiler Optimization Analysis

被引:2
|
作者
Georgakoudis, Giorgis [1 ]
Doerfert, Johannes [2 ]
Laguna, Ignacio [1 ]
Scogland, Thomas R. W. [1 ]
机构
[1] Lawrence Livermore Natl Lab, Livermore, CA 94550 USA
[2] Argonne Natl Lab, Lemont, IL 60439 USA
关键词
Compilation analysis; OpenMP performance; Benchmarking and profiling;
D O I
10.1007/978-3-030-58144-2_1
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Compilers optimize OpenMP programs differently than their serial elision. Early outlining of parallel regions and invocation of parallel code via OpenMP runtime functions are two of the most profound differences. Understanding the interplay between compiler optimizations, OpenMP compilation, and application performance is hard and usually requires specialized benchmarks and compilation analysis tools. To this end, we present FAROS, an extensible framework to automate and structure the analysis of compiler optimization of OpenMP programs. FAROS provides a generic configuration interface to profile and analyze OpenMP applications with their native build configurations. Using FAROS on a set of 39 OpenMP programs, including HPC applications and kernels, we show that OpenMP compilation hinders optimization for the majority of programs. Comparing single-threaded OpenMP execution to its sequential counterpart, we observed slowdowns as much as 135.23%. In some cases, however, OpenMP compilation speeds up execution as much as 25.48% when OpenMP semantics help compiler optimization. Following analysis on compiler optimization reports enables us to pinpoint the reasons without in-depth knowledge of the compiler. The information can be used to improve compilers and also to bring performance on par through manual code refactoring.
引用
收藏
页码:3 / 17
页数:15
相关论文
共 5 条
  • [1] OpenMP to GPGPU: A Compiler Framework for Automatic Translation and Optimization
    Lee, Seyong
    Min, Seung-Jai
    Eigenmann, Rudolf
    [J]. ACM SIGPLAN NOTICES, 2009, 44 (04) : 101 - 110
  • [2] Piper: Pipelining OpenMP Offloading Execution Through Compiler Optimization For Performance
    Parasyris, Konstantinos
    Georgakoudis, Giorgis
    Doerfert, Johannes
    Laguna, Ignacio
    Scogland, Thomas R. W.
    [J]. 2022 IEEE/ACM INTERNATIONAL WORKSHOP ON PERFORMANCE, PORTABILITY AND PRODUCTIVITY IN HPC (P3HPC), 2022, : 100 - 110
  • [3] AM optimization framework for part and process attributes through geometric analysis
    Ahsan, Nazmul
    Khoda, Bashir
    [J]. ADDITIVE MANUFACTURING, 2016, 11 : 85 - 96
  • [4] Controllable Microfluidic System through Intelligent Framework: Data-Driven Modeling, Machine Learning Energy Analysis, Comparative Multiobjective Optimization, and Experimental Study
    Kouhkord, Afshin
    Hassani, Faridoddin
    Amirmahani, Moheb
    Golshani, Ali
    Naserifar, Naser
    Moghanlou, Farhad Sadegh
    Beris, Ali Tarlani
    [J]. INDUSTRIAL & ENGINEERING CHEMISTRY RESEARCH, 2024, 63 (30) : 13326 - 13344
  • [5] Architecting the metabolic reprogramming survival risk framework in LUAD through single-cell landscape analysis: three-stage ensemble learning with genetic algorithm optimization
    Sun, Xinti
    Nong, Minyu
    Meng, Fei
    Sun, Xiaojuan
    Jiang, Lihe
    Li, Zihao
    Zhang, Peng
    [J]. JOURNAL OF TRANSLATIONAL MEDICINE, 2024, 22 (01)