Automatic CPU/GPU Generation of Multi-versioned OpenCL Kernels for C plus plus Scientific Applications

被引:2
|
作者
Sotomayor, Rafael [1 ]
Miguel Sanchez, Luis [1 ]
Garcia Blas, Javier [1 ]
Fernandez, Javier [1 ]
Daniel Garcia, J. [1 ]
机构
[1] Univ Carlos III Madrid, Av Univ 30, Madrid 28911, Spain
关键词
OpenCL; C plus; Multi-versioning; Code generation;
D O I
10.1007/s10766-016-0425-6
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Parallelism has become one of the most extended paradigms used to improve performance. However, it forces software developers to adapt applications and coding mechanisms to exploit the available computing devices. Legacy source code needs to be re-written to take advantage of multi- core and many-core computing devices. Writing parallel applications in a traditional way is hard, expensive, and time consuming. Furthermore, there is often more than one possible transformation or optimization that can be applied to a single piece of legacy code. Therefore many parallel versions of the same original sequential code need to be considered. In this paper, we describe an automatic parallel source code generation workflow (REWORK) for parallel heterogeneous platforms. REWORK automatically identifies promising kernels on legacy C++ source code and generates multiple specific versions of kernels for improving C++ applications, selecting the most adequate version based on both static source code and target platform characteristics.
引用
收藏
页码:262 / 282
页数:21
相关论文
共 25 条
  • [21] Hands on with OpenMP4.5 and Unified Memory: Developing Applications for IBM's Hybrid CPU plus GPU Systems (Part II)
    Grinberg, Leopold
    Bertolli, Carlo
    Haque, Riyaz
    SCALING OPENMP FOR EXASCALE PERFORMANCE AND PORTABILITY (IWOMP 2017), 2017, 10468 : 17 - 29
  • [22] Feasibility Study of Implementing Multi-Channel Correlation for DSP applications on Reconfigurable CPU plus FPGA Platform
    Leonov, Maxim
    Kitaev, Vyacheslav
    PDCAT 2008: NINTH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED COMPUTING, APPLICATIONS AND TECHNOLOGIES, PROCEEDINGS, 2008, : 159 - 166
  • [23] BuildIt: A Type-Based Multi-stage Programming Framework for Code Generation in C plus
    Brahmakshatriya, Ajay
    Amarasinghe, Saman
    CGO '21: PROCEEDINGS OF THE 2021 IEEE/ACM INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION (CGO), 2021, : 39 - 51
  • [24] Automatic generation control of a multi-area system using ant lion optimizer algorithm based PID plus second order derivative controller
    Raju, More
    Saikia, Lalit Chandra
    Sinha, Nidul
    INTERNATIONAL JOURNAL OF ELECTRICAL POWER & ENERGY SYSTEMS, 2016, 80 : 52 - 63
  • [25] Pr3+-doped B2O3-Bi2O3-ZnO-NaF glasses comprising alkali/mixed alkali oxides for potential warm white light generation, blue laser, and E- plus S- plus C-optical bands amplification applications
    Lakshminarayana, G.
    Meza-Rocha, A. N.
    Soriano-Romero, O.
    Huerta, E. F.
    Caldino, U.
    Lira, A.
    Lee, Dong-Eun
    Yoon, Jonghun
    Park, Taejoon
    JOURNAL OF MATERIALS RESEARCH AND TECHNOLOGY-JMR&T, 2021, 13 : 2501 - 2526