A GPU cluster in which each node provides a few GPUs connected with PCIe (PCI Express) is commonly used for acceleration of a large application program requiring the performance beyond a single GPU. However, in such a system, programmers are required to describe two parallel programming between nodes in MPIs or other message passing library as well as the fine grained parallel programming for intra-GPUs. As a cost effective alternative of such clusters, we propose a novel multi-GPU system with ExpEther, a virtualization technique which extends PCIe of a host CPU to Ethernet. All devices connected by ExpEther can be treated as if they were directly connected to the host. Evaluation with two application programs with and without GPU-GPU communication revealed that the proposed system with four GPUs achieved 3.88 and 3.29 times performance improvement respectively compared with a single GPU system. Compared with GPU cluster system in which each node provides a GPU, the proposed system achieved about 7% and 30% performance improvement, respectively.
[1]
Atsushi Iwata,et al.
ExpressEther - Ethernet-Based Virtualization Technology for Reconfigurable Hardware Platform
,
2006,
14th IEEE Symposium on High-Performance Interconnects (HOTI'06).
[2]
Hiroki Honda,et al.
FLAT: a GPU programming framework to provide embedded MPI
,
2012,
GPGPU-5.
[3]
Hideharu Amano,et al.
Vegeta: An Implementation and Evaluation of Development-Support Middleware on Multiple OpenCL Platform
,
2011,
2011 Second International Conference on Networking and Computing.
[4]
Takashi Nakamura,et al.
Hybrid OpenCL: Enhancing OpenCL for Distributed Processing
,
2011,
2011 IEEE Ninth International Symposium on Parallel and Distributed Processing with Applications.