OpenMPC: Extended OpenMP Programming and Tuning for GPUs

Seyong Lee, Rudolf Eigenmann
Sch. of ECE, Purdue Univ. West Lafayette, West Lafayette, IN, USA
International Conference for High Performance Computing, Networking, Storage and Analysis (SC), 2010


   title={OpenMPC: Extended OpenMP programming and tuning for GPUs},

   author={Lee, S. and Eigenmann, R.},

   booktitle={Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis},



   organization={IEEE Computer Society}


Download Download (PDF)   View View   Source Source   



General-Purpose Graphics Processing Units (GPGPUs) are promising parallel platforms for high performance computing. The CUDA (Compute Unified Device Architecture) programming model provides improved programmability for general computing on GPGPUs. However, its unique execution model and memory model still pose significant challenges for developers of efficient GPGPU code. This paper proposes a new programming interface, called OpenMPC, which builds on OpenMP to provide an abstraction of the complex CUDA programming model and offers high-level controls of the involved parameters and optimizations. We have developed a fully automatic compilation and user-assisted tuning system supporting OpenMPC. In addition to a range of compiler transformations and optimizations, the system includes tuning capabilities for generating, pruning, and navigating the search space of compilation variants. Our results demonstrate that OpenMPC offers both programmability and tunability. Our system achieves 88% of the performance of the hand-coded CUDA programs.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: