HyperLink   Collaborative Computing for Heterogeneous Integrated Systems
   
Publication Year:
  2017
Authors
  Li-Wen Chang, Juan Gómez-Luna, Izzat El Hajj, Sitao Huang, Deming Chen, Wen-mei Hwu
   
Published:
  ACM/SPEC International Conference on Performance Engineering (ICPE), 2017
   
Abstract:

Heterogeneous systems are evolving towards tighter integration among devices for improved performance and reduced energy. In addition to powerful CPUs, systems today typically employ various types of specialized devices such as Graphics Processing Units (GPUs) or Field-Programmable Gate Arrays (FPGAs). In this tight integration, close collaboration among processors becomes crucial for better use of system resources and higher performance, compared to traditional use of GPUs or FPGAs as offload accelerators. Programming interfaces are also rapidly adapting to tightly integrated heterogeneous platforms by introducing emerging features, such as shared virtual memory, memory coherence, and system-wide atomics, making collaborative computing among different devices even more practical. In this paper, we survey the current heterogeneous integrated systems and corresponding techniques. We evaluate collaborative computing on two heterogeneous integrated systems, CPU-GPU and CPU-FPGA, using OpenCL. Finally, we discuss the limitation of OpenCL and envision what suitable programming languages for collaborative computing will look like.