DocumentCode
652596
Title
Programming for GPUs: The Directive-Based Approach
Author
Grillo, Lucas ; de Sande, Francisco ; Fumero, Juan J. ; Reyes, Ruyman
Author_Institution
Dept. de EIO y Comput., Univ. de La Laguna, La Laguna, Spain
fYear
2013
fDate
28-30 Oct. 2013
Firstpage
612
Lastpage
617
Abstract
In the last years, hardware accelerators, such as GPUs have become ubiquitous in the HPC landscape and GPGPU has been massively adopted by the HPC research community. If something is slowing down further expansion of this technology are its difficulties in terms of programmability. Although several libraries and applications providing GPU support are available, the need of implementing new algorithms from scratch, or adapting sequential programs to accelerators, still exist. Writing programs to be executed on accelerators is not easy, particularly for non-expert developers coming from the science or engineering fields, as it requires deep understanding of the underlying architecture. Different alternatives have appeared aimed to diminish the GPU programming effort. In the wake of the success of OpenMP, several directive-oriented programming models have been created. Although future OpenMP releases will integrate accelerators, tools are needed in the meantime. In this work, we present a comparison of directive-based approaches for GPU platforms, hiCUDA, PGI Accelerator and OpenACC. For the last, in addition to the two commercial compilers available, we include results using accULL, our own OpenACC implementation. To illustrate the portability of these alternatives, we show performance figures for both Fermi and Kepler NVIDIA cards.
Keywords
graphics processing units; message passing; parallel architectures; program compilers; software libraries; Fermi card; GPU programming; HPC; Kepler NVIDIA card; OpenACC; OpenMP; PGI accelerator; accULL; compiler; directive-oriented programming model; hardware accelerator; hiCUDA; program execution; program library; sequential program; Graphics processing units; Kernel; Parallel processing; Programming; Runtime; Standards; CUDA; Compilers; GPGPU; HMPP; OpenACC; PGI; accULL;
fLanguage
English
Publisher
ieee
Conference_Titel
P2P, Parallel, Grid, Cloud and Internet Computing (3PGCIC), 2013 Eighth International Conference on
Conference_Location
Compiegne
Type
conf
DOI
10.1109/3PGCIC.2013.106
Filename
6681300
Link To Document