DocumentCode :
3001511
Title :
Towards High-Level Programming of Multi-GPU Systems Using the SkelCL Library
Author :
Steuwer, Michel ; Kegel, Philipp ; Gorlatch, Sergei
Author_Institution :
Dept. of Math. & Comput. Sci., Univ. of Munster, Munster, Germany
fYear :
2012
fDate :
21-25 May 2012
Firstpage :
1858
Lastpage :
1865
Abstract :
Application programming for GPUs (Graphics Processing Units) is complex and error-prone, because the popular approaches - CUDA and OpenCL - are intrinsically low-level and offer no special support for systems consisting of multiple GPUs. The SkelCL library presented in this paper is built on top of the OpenCL standard and offers pre-implemented recurring computation and communication patterns (skeletons) which greatly simplify programming for multi-GPU systems. The library also provides an abstract vector data type and a high-level data (re)distribution mechanism to shield the programmer from the low-level data transfers between the system´s main memory and multiple GPUs. In this paper, we focus on the specific support in SkelCL for systems with multiple GPUs and use a real-world application study from the area of medical imaging to demonstrate the reduced programming effort and competitive performance of SkelCL as compared to OpenCL and CUDA. Besides, we illustrate how SkelCL adapts to large-scale, distributed heterogeneous systems in order to simplify their programming.
Keywords :
abstract data types; electronic data interchange; electronic engineering computing; graphics processing units; parallel architectures; software libraries; CUDA; OpenCL standard; SkelCL library; abstract vector data type; application programming; communication patterns; competitive performance; distributed heterogeneous systems; graphics processing units; high-level data redistribution mechanism; high-level programming; large-scale system; low-level data transfers; medical imaging; multiGPU systems; programming effort; recurring computation; skeletons; system main memory; Graphics processing unit; Image reconstruction; Kernel; Programming; Skeleton; Vectors; Algorithmic Skeletons; GPU Computing; GPU Programming; Multi-GPU Systems; OpenCL; SkelCL;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2012 IEEE 26th International
Conference_Location :
Shanghai
Print_ISBN :
978-1-4673-0974-5
Type :
conf
DOI :
10.1109/IPDPSW.2012.229
Filename :
6270864
Link To Document :
بازگشت