Early evaluation of directive-based GPU programming models for productive exascale computing
- 1 November 2012
- conference paper
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 21674329,p. 1-11
- https://doi.org/10.1109/sc.2012.51
Abstract
Graphics Processing Unit (GPU)-based parallel computer architectures have shown increased popularity as a building block for high performance computing, and possibly for future Exascale computing. However, their programming complexity remains as a major hurdle for their widespread adoption. To provide better abstractions for programming GPU architectures, researchers and vendors have proposed several directive-based GPU programming models. These directive-based models provide different levels of abstraction, and required different levels of programming effort to port and optimize applications. Understanding these differences among these new models provides valuable insights on their applicability and performance potential. In this paper, we evaluate existing directive-based models by porting thirteen application kernels from various scientific domains to use CUDA GPUs, which, in turn, allows us to identify important issues in the functionality, scalability, tunability, and debuggability of the existing models. Our evaluation shows that directive-based models can achieve reasonable performance, compared to hand-written GPU codes.Keywords
This publication has 14 references indexed in Scilit:
- The tradeoffs of fused memory hierarchies in heterogeneous computing architecturesPublished by Association for Computing Machinery (ACM) ,2012
- Experiences with High-Level Programming Directives for Porting Applications to GPUsLecture Notes in Computer Science, 2012
- Keeneland: Bringing Heterogeneous GPU Computing to the Computational Science CommunityComputing in Science & Engineering, 2011
- Performance Implications of Nonuniform Device Topologies in Scalable Heterogeneous ArchitecturesIEEE Micro, 2011
- The International Exascale Software Project roadmapThe International Journal of High Performance Computing Applications, 2011
- OpenMPC: Extended OpenMP Programming and Tuning for GPUsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2010
- An effective GPU implementation of breadth-first searchPublished by Association for Computing Machinery (ACM) ,2010
- hiCUDA: High-Level GPGPU ProgrammingIEEE Transactions on Parallel and Distributed Systems, 2010
- A mapping path for multi-GPGPU accelerated computers from a portable high level programming abstractionPublished by Association for Computing Machinery (ACM) ,2010
- Rodinia: A benchmark suite for heterogeneous computingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2009