• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

Computer Engineering & Science

Previous Articles     Next Articles

A heterogeneous computing oriented
structural parallel programming framework

LI Anmin,JI Weixing,LIAO Xinyi,GAO Jianhua,TAN Zhaonian,WANG Yizhuo,SHI Feng   

  1. (School of Computer Science & Technology,Beijing Institute of Technology,Beijing 100081,China)
  • Received:2018-09-05 Revised:2018-11-08 Online:2019-03-25 Published:2019-03-25

Abstract:

With the advent of artificial intelligence era, heterogeneous computing has been playing a more and more important role in deep learning and scientific computing. One of the bottlenecks that limit the application of heterogeneous computing systems is a lack of efficient software development framework. Existing programming frameworks like OpenCL and CUDA, base on C/C++ language and traditional parallel programming methods, and support hardware like GPU, DSP and FPGA, which are complained due to their low efficiency in software development as well as the difficulties in software reasoning and debugging, leading to clumsy handling of the cooperation and scheduling between computing devices. We introduce a scriptbased structural parallel programming framework for heterogeneous computing platforms, which provides a structural parallel programming interface to support the mapping of computing tasks to heterogeneous computing devices, and facilitate the reasoning and verification of parallel programs. We also design and implement a structural scheduling algorithm based on the genetic algorithm, which fully utilizes the computing capability of heterogeneous systems and enhances the efficiency of software development. Experimental results show that the proposed programming framework achieves 1.5× ~ 2.5× speedup in comparison to a single processor on the CPU+GPU platform.
 

Key words: heterogeneous computing, parallel computing, programming framework, structural programming