DocumentCode :
3199985
Title :
A Pattern Specification and Optimizations Framework for Accelerating Scientific Computations on Heterogeneous Clusters
Author :
Linchuan Chen ; Xin Huo ; Agrawal, Gagan
Author_Institution :
Dept. of Comput. Sci. & Eng., Ohio State Univ., Columbus, OH, USA
fYear :
2015
fDate :
25-29 May 2015
Firstpage :
591
Lastpage :
600
Abstract :
Clusters with accelerators at each node have emerged as the dominant high-end architecture in recent years. Such systems can be extremely hard to program because of the underlying heterogeneity and the need for exploiting parallelism at multiple levels. Thus, easing parallel programming today requires not only high-level programming models, but ones from which hybrid parallelism can be extracted. In this paper, we focus on the following question: "can simple APIs be developed for several classes of popular scientific applications, to ease application development and yet maintain parallel efficiency, on clusters with accelerators?". We approach this problem by individually considering popular patterns that arise in scientific computations. By developing APIsfor generalized reductions, irregular reductions, and stencil computations, we show that several complex scientific applications can be supported. We enable compact specification of these applications (40% of the code size of MPI), while also enabling parallelization across nodes and devices within a node, and with work distribution across CPU and GPU cores. We enable a number of optimizations that are normally implemented by hand by scientific programmers. We compare well against existing MPI applications while scaling across nodes, and against handwritten CUDA applications for executions on a single GPU, and yet can scale by using all parallelism simultaneously. On a cluster with 64GPUs, we achieve speedups between 600 and 1800 over sequential(single CPU core) versions.
Keywords :
application program interfaces; graphics processing units; message passing; parallel architectures; parallel programming; APIs; GPU cores; MPI applications; clusters with accelerators; handwritten CUDA applications; heterogeneous clusters; high-level programming models; hybrid parallelism; parallel programming; pattern optimization framework; pattern specification; scientific computations; Arrays; Graphics processing units; Kernel; Optimization; Parallel processing; Programming; Runtime; Heterogeneous Clusters; Optimizations Framework; Pattern Specification;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel and Distributed Processing Symposium (IPDPS), 2015 IEEE International
Conference_Location :
Hyderabad
ISSN :
1530-2075
Type :
conf
DOI :
10.1109/IPDPS.2015.13
Filename :
7161547
Link To Document :
بازگشت