AutoPar-Clava: An Automatic Parallelization source-to-source tool for C code applications

被引:6
|
作者
Arabnejad, Hamid [1 ]
Bispo, Joao [2 ]
Barbosa, Jorge G. [3 ]
Cardoso, Joao M. P. [2 ]
机构
[1] Univ Porto, Fac Engn FEUP, Porto, Portugal
[2] Univ Porto, Fac Engn FEUP, INESC TEC, Porto, Portugal
[3] Univ Porto, Fac Engn FEUP, LIACC, Porto, Portugal
来源
PARMA-DITAM 2018: 9TH WORKSHOP ON PARALLEL PROGRAMMING AND RUNTIME MANAGEMENT TECHNIQUES FOR MANY-CORE ARCHITECTURES AND 7TH WORKSHOP ON DESIGN TOOLS AND ARCHITECTURES FOR MULTICORE EMBEDDED COMPUTING PLATFORMS | 2018年
关键词
Automatic parallelization; source-to-source Compilation; Parallel Programming; OpenMP; DEPENDENCE; EFFICIENT;
D O I
10.1145/3183767.3183770
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Automatic parallelization of sequential code has become increasingly relevant in multicore programming. In particular, loop parallelization continues to be a promising optimization technique for scienti.c applications, and can provide considerable speedups for program execution. Furthermore, if we can verify that there are no true data dependencies between loop iterations, they can be easily parallelized. This paper describes Clava AutoPar, a library for the Clava weaver that performs automatic and symbolic parallelization of C code. The library is composed of two main parts, parallel loop detection and source-to-source code parallelization. The system is entirely automatic and attempts to statically detect parallel loops for a given input program, without any user intervention or profiling information. We obtained a geometric mean speedup of 1.5 for a set of programs from the C version of the NAS benchmark, and experimental results suggest that the performance obtained with Clava AutoPar is comparable or better than other similar research and commercial tools.
引用
收藏
页码:13 / 19
页数:7
相关论文
共 50 条
  • [21] Towards the Implementation of a Source-to-Source Transformation Tool for CHR Operational Semantics
    Fakhry, Ghada
    Sharaf, Nada
    Abdennadher, Slim
    LOGIC-BASED PROGRAM SYNTHESIS AND TRANSFORMATION, LOPSTR 2013, 2014, 8901 : 145 - 163
  • [22] From OpenMP to MPI: first experiments of the STEP source-to-source transformation tool
    Millot, Daniel
    Muller, Alain
    Parrot, Christian
    Silber-Chaussumier, Frederique
    PARALLEL COMPUTING: FROM MULTICORES AND GPU'S TO PETASCALE, 2010, 19 : 669 - 676
  • [23] A Tool Supporting C code Parallelization
    Bluemke, Ilona
    Fugas, Joanna
    INNOVATIONS IN COMPUTING SCIENCES AND SOFTWARE ENGINEERING, 2010, : 259 - 264
  • [24] A CPU-FPGA Holistic Source-To-Source Compilation Approach for Partitioning and Optimizing C/C plus plus Applications
    Santos, Tiago
    Bispo, Joao
    Cardoso, Joao M. P.
    2023 32ND INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES, PACT, 2023, : 320 - 322
  • [25] Understanding Source-to-Source Transformations for Frequent Porting of Applications on Changing Cloud Architectures
    Khan, Mohsin
    Priyanka, N.
    Ahmed, Waseem
    Radhika, N.
    Pavithra, M.
    Parimala, K.
    2014 INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED AND GRID COMPUTING (PDGC), 2014, : 350 - 354
  • [26] On the Portability of GPU-Accelerated Applications via Automated Source-to-Source Translation
    Sathre, Paul
    Gardner, Mark
    Feng, Wu-chun
    PROCEEDINGS OF INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING IN ASIA-PACIFIC REGION (HPC ASIA 2019), 2019, : 1 - 8
  • [27] Automatic Parallelization of C Code Using OpenMP
    Singal, Gaurav
    Gopalani, Dinesh
    Kushwaha, Riti
    Badal, Tapas
    EMERGING TECHNOLOGIES IN COMPUTER ENGINEERING: MICROSERVICES IN BIG DATA ANALYTICS, 2019, 985 : 298 - 309
  • [28] Package templates: A definition by semantics-preserving source-to-source transformations to efficient java code
    Department of Informatics, University of Oslo, Postboks 1080, Blindern, 0316 Oslo, Norway
    Proc. Int. Conf. Generative Program. Compon. Eng., GPCE, 1600, (50-59):
  • [29] Effects Dependence Graph: A Key Data Concept for C Source-to-Source Compilers
    Lossing, Nelson
    Guillou, Pierre
    Irigoin, Francois
    2016 IEEE 16TH INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM), 2016, : 167 - 176
  • [30] Source-to-Source Instrumentation for Profiling Runtime Behavior of C plus plus Containers
    Jungblut, Pascal
    Kowalewski, Roger
    Fuerlinger, Karl
    IEEE 20TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS / IEEE 16TH INTERNATIONAL CONFERENCE ON SMART CITY / IEEE 4TH INTERNATIONAL CONFERENCE ON DATA SCIENCE AND SYSTEMS (HPCC/SMARTCITY/DSS), 2018, : 948 - 953