TY - GEN
T1 - Collaborative computing for heterogeneous integrated systems
AU - Chang, Li Wen
AU - Gómez-Luna, Juan
AU - El Hajj, Izzat
AU - Huang, Sitao
AU - Chen, Deming
AU - Hwu, Wen Mei
N1 - Publisher Copyright:
© 2017 ACM.
PY - 2017/4/17
Y1 - 2017/4/17
N2 - Computing systems today typically employ, in addition to powerful CPUs, various types of specialized devices such as Graphics Processing Units (GPUs) and Field-Programmable Gate Arrays (FPGAs). Such heterogeneous systems are evolving towards tighter integration of CPUs and devices for improved performance and reduced energy consumption. Compared to traditional use of GPUs and FPGAs as offload accelerators, this tight integration enables close collaboration between processors and devices, which is important for better utilization of system resources and higher performance. Programming interfaces are also adapting rapidly to these tightly integrated heterogeneous platforms by introducing features such as shared virtual memory, memory coherence, and system-wide atomics, making collaborative computing even more practical. In this paper, we survey current integrated heterogeneous systems and corresponding collaboration techniques. We evaluate the impact of 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.
AB - Computing systems today typically employ, in addition to powerful CPUs, various types of specialized devices such as Graphics Processing Units (GPUs) and Field-Programmable Gate Arrays (FPGAs). Such heterogeneous systems are evolving towards tighter integration of CPUs and devices for improved performance and reduced energy consumption. Compared to traditional use of GPUs and FPGAs as offload accelerators, this tight integration enables close collaboration between processors and devices, which is important for better utilization of system resources and higher performance. Programming interfaces are also adapting rapidly to these tightly integrated heterogeneous platforms by introducing features such as shared virtual memory, memory coherence, and system-wide atomics, making collaborative computing even more practical. In this paper, we survey current integrated heterogeneous systems and corresponding collaboration techniques. We evaluate the impact of 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.
UR - http://www.scopus.com/inward/record.url?scp=85019016184&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85019016184&partnerID=8YFLogxK
U2 - 10.1145/3030207.3030244
DO - 10.1145/3030207.3030244
M3 - Conference contribution
AN - SCOPUS:85019016184
T3 - ICPE 2017 - Proceedings of the 2017 ACM/SPEC International Conference on Performance Engineering
SP - 385
EP - 388
BT - ICPE 2017 - Proceedings of the 2017 ACM/SPEC International Conference on Performance Engineering
PB - Association for Computing Machinery
T2 - 8th ACM/SPEC International Conference on Performance Engineering, ICPE 2017
Y2 - 22 April 2017 through 26 April 2017
ER -