Directive-Based Parallelization of For-Loops at LLVM IR Level

被引:0
|
作者
Jingu, Kengo [1 ]
Shigenobu, Kohta [1 ]
Ootsu, Kanemitsu [1 ]
Ohkawa, Takeshi [1 ]
Yokota, Takashi [1 ]
机构
[1] Utsunomiya Univ, Grad Sch Engn, Utsunomiya, Tochigi, Japan
来源
2019 20TH IEEE/ACIS INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ARTIFICIAL INTELLIGENCE, NETWORKING AND PARALLEL/DISTRIBUTED COMPUTING (SNPD) | 2019年
关键词
LLVM; loop parallelization; IR code; parallelization directives;
D O I
10.1109/snpd.2019.8935667
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Currently, multicore processors widely spread and many computers can improve processing performance by multithreading. However, many programs are still processed sequentially, and they do not make full use of their parallelism. To solve this problem, it is quite promising to automatically parallelize the binary code of the program by using binary translation techniques. Based on this background, we have proposed a system that automatically optimizes and parallelizes a binary code using LLVM. In this paper, we design the IR-level parallelization directives for the LLVM infrastructure and implement them in LLVM. This allows us to independently develop the compilation pass of code analysis and the pass of the code generation for parallelization. The separation of code analysis and code generation can realize the ease of the reuse of them. Evaluation results show that our LLVM compiler pass can generate parallelized IR code from sequential IR code with IR-level parallelization directives. The parallelized IR code achieved speedup as highly as the parallelized source code using OpenMP.
引用
收藏
页码:421 / 426
页数:6
相关论文
共 50 条
  • [31] NAS Parallel Benchmarks for GPGPUs Using a Directive-Based Programming Model
    Xu, Rengan
    Tian, Xiaonan
    Chandrasekaran, Sunita
    Yan, Yonghong
    Chapman, Barbara
    LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING (LCPC 2014), 2015, 8967 : 67 - 81
  • [32] Interactive Program Debugging and Optimization for Directive-Based, Efficient GPU Computing
    Lee, Seyong
    Li, Dong
    Vetter, Jeffrey S.
    2014 IEEE 28TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM, 2014,
  • [33] A Directive-based Data Layout Abstraction for Performance Portability of OpenACC Applications
    Hoshino, Tetsuya
    Maruyama, Naoya
    Matsuoka, Satoshi
    PROCEEDINGS OF 2016 IEEE 18TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS; IEEE 14TH INTERNATIONAL CONFERENCE ON SMART CITY; IEEE 2ND INTERNATIONAL CONFERENCE ON DATA SCIENCE AND SYSTEMS (HPCC/SMARTCITY/DSS), 2016, : 1147 - 1154
  • [34] Dealing with Portability and Performance on Heterogeneous Systems with Directive-based Programming Approaches
    Bodin, F.
    2012 SC COMPANION: HIGH PERFORMANCE COMPUTING, NETWORKING, STORAGE AND ANALYSIS (SCC), 2012, : 2001 - 2064
  • [35] IR2Vec: LLVM IR Based Scalable Program Embeddings
    Venkatakeerthy S.
    Aggarwal R.
    Jain S.
    Desarkar M.S.
    Upadrasta R.
    Srikant Y.N.
    ACM Transactions on Architecture and Code Optimization, 2020, 17 (04)
  • [36] Early Evaluation of Directive-Based GPU Programming Models for Productive Exascale Computing
    Lee, Seyong
    Vetter, Jeffrey S.
    2012 INTERNATIONAL CONFERENCE FOR HIGH PERFORMANCE COMPUTING, NETWORKING, STORAGE AND ANALYSIS (SC), 2012,
  • [37] ZEN: A directive-based language for automatic experiment management of distributed and parallel programs
    Prodan, R
    Fahringer, T
    2002 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING, PROCEEDING, 2002, : 93 - 100
  • [38] Evaluation of Directive-Based Programming Models for Stencil Computation on Current GPGPU Architectures
    Shan, Baodi
    Araya-Polo, Mauricio
    Chapman, Barbara
    ADVANCING OPENMP FOR FUTURE ACCELERATORS, IWOMP 2024, 2024, 15195 : 126 - 140
  • [39] A Type System for Data Independence of Loop Iterations in a Directive-Based PGAS Language
    Abe, Tatsuya
    PROCEEDINGS OF THE 16TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON MANAGED PROGRAMMING LANGUAGES AND RUNTIMES (MPLR '19), 2019, : 50 - 62
  • [40] Directive-based Auto-tuning for the Finite Difference Method on the Xeon Phi
    Katagiri, Takahiro
    Ohshima, Satoshi
    Matsumoto, Masaharu
    2015 IEEE 29TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS, 2015, : 1221 - 1230