In this paper, we propose an OpenCL framework for heterogeneous CPU/GPU clusters, and show that the framework achieves both high performance and ease of programming. The framework provides an illusion of a single system for the user. It allows the application to utilize multiple heterogeneous compute devices, such as multicore CPUs and GPUs, in a remote node as if they were in a local node. No communication API, such as the MPI library, is required in the application source. We implement the OpenCL framework and evaluate its performance on a heterogeneous CPU/GPU cluster that consists of one host node and nine compute nodes using eleven OpenCL benchmark applications.
['Jungwon Kim', 'Sangmin Seo', 'Jun Lee', 'Jeongho Nah', 'Gangwon Jo', 'Jaejin Lee']
OpenCL as a unified programming model for heterogeneous CPU/GPU clusters