A Flexible and General-Purpose Platform for Heterogeneous Computing

被引:3
|
作者
Garcia-Hernandez, Jose Juan [1 ]
Morales-Sandoval, Miguel [1 ]
Elizondo-Rodriguez, Erick [1 ]
机构
[1] IPN CINVESTAV, Ctr Res & Adv Studies, Unidad Tamaulipas, Ciudad Victoria 87130, Mexico
关键词
heterogeneous computing; OpenCL; automated algorithm deployment; ACCELERATORS;
D O I
10.3390/computation11050097
中图分类号
O1 [数学];
学科分类号
0701 ; 070101 ;
摘要
In the big data era, processing large amounts of data imposes several challenges, mainly in terms of performance. Complex operations in data science, such as deep learning, large-scale simulations, and visualization applications, can consume a significant amount of computing time. Heterogeneous computing is an attractive alternative for algorithm acceleration, using not one but several different kinds of computing devices (CPUs, GPUs, or FPGAs) simultaneously. Accelerating an algorithm for a specific device under a specific framework, i.e., CUDA/GPU, provides a solution with the highest possible performance at the cost of a loss in generality and requires an experienced programmer. On the contrary, heterogeneous computing allows one to hide the details pertaining to the simultaneous use of different technologies in order to accelerate computation. However, effective heterogeneous computing implementation still requires mastering the underlying design flow. Aiming to fill this gap, in this paper we present a heterogeneous computing platform (HCP). Regarding its main features, this platform allows non-experts in heterogeneous computing to deploy, run, and evaluate high-computational-demand algorithms following a semi-automatic design flow. Given the implementation of an algorithm in C with minimal format requirements, the platform automatically generates the parallel code using a code analyzer, which is adapted to target a set of available computing devices. Thus, while an experienced heterogeneous computing programmer is not required, the process can run over the available computing devices on the platform as it is not an ad hoc solution for a specific computing device. The proposed HCP relies on the OpenCL specification for interoperability and generality. The platform was validated and evaluated in terms of generality and efficiency through a set of experiments using the algorithms of the Polybench/C suite (version 3.2) as the input. Different configurations for the platform were used, considering CPUs only, GPUs only, and a combination of both. The results revealed that the proposed HCP was able to achieve accelerations of up to 270x for specific classes of algorithms, i.e., parallel-friendly algorithms, while its use required almost no expertise in either OpenCL or heterogeneous computing from the programmer/end-user.
引用
收藏
页数:15
相关论文
共 50 条
  • [41] MicroIP: A general-purpose microservice-based integration platform
    Nebel, Andres
    Gonzalez, Laura
    Llambias, Guzman
    2021 XLVII LATIN AMERICAN COMPUTING CONFERENCE (CLEI 2021), 2021,
  • [42] Scheduling algorithm for general-purpose liquid handling and automation platform
    Tian H.
    Cheng W.
    Wang J.
    Tang Y.
    Huazhong Keji Daxue Xuebao (Ziran Kexue Ban)/Journal of Huazhong University of Science and Technology (Natural Science Edition), 2024, 52 (05): : 130 - 135
  • [43] Taskflow: A General-Purpose Parallel and Heterogeneous Task Programming System
    Huang, Tsung-Wei
    Lin, Dian-Lun
    Lin, Yibo
    Lin, Chun-Xun
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2022, 41 (05) : 1448 - 1452
  • [44] General-purpose data stream processing on heterogeneous architectures with WindFlow
    Mencagli, Gabriele
    Torquati, Massimo
    Griebler, Dalvan
    Fais, Alessandra
    Danelutto, Marco
    JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2024, 184
  • [45] General-purpose definition
    Emerson, DM
    DATAMATION, 1995, 41 (23): : 14 - 14
  • [46] General-purpose cells?
    Solter, D
    Gearhart, J
    RECHERCHE, 1999, (320): : 32 - 34
  • [47] A GENERAL-PURPOSE MACROGENERATOR
    STRACHEY, C
    COMPUTER JOURNAL, 1965, 8 (03): : 225 - 241
  • [48] GENERAL-PURPOSE COMPUTER
    TAUBE, M
    SCIENCE, 1962, 136 (3515) : 590 - &
  • [49] GENERAL-PURPOSE MICROPROCESSORS
    不详
    ELECTRONIC DESIGN, 1980, 28 (24) : 150 - &
  • [50] A GENERAL-PURPOSE ELECTROMETER
    FRY, RM
    JOURNAL OF SCIENTIFIC INSTRUMENTS, 1954, 31 (08): : 269 - 271