Towards Utilizing Remote GPUs for CUDA Program Execution

Xiaonan Ji, Spencer Davis, Erikson Hardesty, Liang Xu, Sabuj Saha, Hai Jiang · 2011

Abstract — The modern CPU has been designed to accelerate serial processing as much as possible. Recently, GPUs have been exploited to solve large parallelizable problems. As fast as a GPU is for general purpose massively parallel computing, some problems require an even larger scale of parallelism and pipelining. However, it has been difficult to scale algorithms beyond a local computer and distribute workloads among multiple computers housing GPUs. This paper proposes a Remote Kernel Launch (RKL) approach to transfer the kernel parts from a local machine to remote GPU servers. A lexical analyzer is used to identify and extract the kernels from local programs. The extracted kernel can then be distributed and executed on remote GPUs. A dynamic mapping scheme is explored to balance workloads among nodes. This approach allows a program to run optimally on a range of hardware configurations by eliminating the need to program for a specific environment. The experimental results demonstrate the effectiveness of RKL.

Read the paper · More papers on PaperTik