A Halide-based Synergistic Computing Framework for Heterogeneous Systems

被引:3
|
作者
Liao, Shih-Wei [1 ]
Kuang, Shao-Yun [1 ]
Kao, Chia-Lung [1 ]
Tu, Chia-Heng [2 ]
机构
[1] Natl Taiwan Univ, Dept Comp Sci & Informat Engn, Taipei 106, Taiwan
[2] Natl Cheng Kung Univ, Dept Comp Sci & Informat Engn, Tainan 701, Taiwan
关键词
Halide; Heterogeneous computing; Graphic processing units; Synergistic computing; Runtime system;
D O I
10.1007/s11265-017-1283-1
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
New programming models have been developed to embrace contemporary heterogeneous machines, each of which may contain several types of processors, e.g., CPUs, GPUs, FPGAs and ASICs. Unlike the conventional ones, which use separate programming schemes for different processors of the machine, e.g., OpenMP for the CPU and CUDA for the GPU, the new ones tend to offer a unified programming model to abstract details of heterogeneous computing engines. One such programming model is Halide that is designed for high performance image processing. Halide programmers are allowed to map data and computation to either the CPUs or GPUs through high-level C++ functions, which are converted to various code targets, including x86, ARM, CUDA, and OpenCL, by the Halide compiler. Nevertheless, it becomes complex when the programmers attempt to write a Halide program for cooperative computation on both the CPU and GPU. In this work, we propose the synergistic computing framework that extends Halide to improve program execution performance. Several key issues are tackled, including data coherence, workload partitioning, job dispatching and communication/synchronization, so that the Halide programmers are allowed to take advantage of the heterogeneous computing engines with the two developed C++ classes, one is for static workload partitioning/dispatching and the other is the dynamic counterpart. Furthermore, optimizations are developed to improve performance by generating adequate the CPU code, and eliminating extra memory copies. We characterize and discuss the performance of two image processing programs and our framework on the heterogeneous platforms, i.e., Android Nexus 7 smartphone and x86-based computers. Our results show that significant performance gain can be achieved while the CPU and GPU execute a program synergistically with the proposed framework.
引用
收藏
页码:219 / 233
页数:15
相关论文
共 50 条
  • [21] Low thermal quenching of metal halide-based metal-organic framework phosphor for light-emitting diodes
    Yang, Xiao-Gang
    Chen, Ying-Jun
    Yin, Pei-Pei
    Li, Yan
    Yang, Shu-Yao
    Li, Yi-Man
    Ma, Lu-Fang
    [J]. CHEMICAL SCIENCE, 2024, 15 (35) : 14202 - 14208
  • [22] A Simulation Framework for Memristor-Based Heterogeneous Computing Architectures
    Liu, Haikun
    Xu, Jiahong
    Liao, Xiaofei
    Jin, Hai
    Zhang, Yu
    Mao, Fubing
    [J]. IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2022, 41 (12) : 5476 - 5488
  • [23] Interaction Mechanism between Cellobiose and Imidazolium Halide-based Ionic Liquids
    Yang, Ling
    Peng, Hong
    He, Hongwei
    Liu, Ling
    Fu, Guiming
    Liu, Yuhuan
    Wan, Yin
    [J]. BIORESOURCES, 2023, 18 (01) : 1590 - 1601
  • [24] Recent Advances in Metal Halide-Based Perovskite Light-Emitting Diodes
    Kumawat, Naresh K.
    Gupta, Dhritiman
    Kabra, Dinesh
    [J]. ENERGY TECHNOLOGY, 2017, 5 (10) : 1734 - 1749
  • [25] A profile-guided synergistic computation framework for Halide
    Liao, Shih-Wei
    Kao, Chia-Lung
    Shimizu, Yuki
    [J]. JOURNAL OF SYSTEMS ARCHITECTURE, 2017, 81 : 54 - 61
  • [26] A Heterogeneous Computing framework for Computational Finance
    Inggs, Gordon
    Thomas, David
    Luk, Wayne
    [J]. 2013 42ND ANNUAL INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING (ICPP), 2013, : 688 - 697
  • [27] Catalytic Rosenmund-von Braun reaction in halide-based ionic liquids
    Wu, JX
    Beck, B
    Ren, RX
    [J]. TETRAHEDRON LETTERS, 2002, 43 (03) : 387 - 389
  • [28] Enhancement of Exciton Emission in Lead Halide-Based Layered Perovskites by Cation Mixing
    Era, Masanao
    Komatsu, Yumeko
    Sakamoto, Naotaka
    [J]. JOURNAL OF NANOSCIENCE AND NANOTECHNOLOGY, 2016, 16 (04) : 3338 - 3342
  • [29] SmartNet: A scheduling framework for heterogeneous computing
    Kidd, T
    Hensgen, D
    Freund, R
    Moore, L
    [J]. SECOND INTERNATIONAL SYMPOSIUM ON PARALLEL ARCHITECTURES, ALGORITHMS, AND NETWORKS (I-SPAN '96), PROCEEDINGS, 1996, : 514 - 521
  • [30] On Batch-Processing Based Coded Computing for Heterogeneous Distributed Computing Systems
    Wang, Baoqian
    Xie, Junfei
    Lu, Kejie
    Wan, Yan
    Fu, Shengli
    [J]. IEEE TRANSACTIONS ON NETWORK SCIENCE AND ENGINEERING, 2021, 8 (03): : 2438 - 2454