Mode-4 GPGPUs NVIDIA - CUDA/OpenCL AMD APP OpenCL GPGPUs - OpenCL GPGPUs : Power & Perf. Home





hyPACK-2013 : PGI Compilers OpenACC CUDA enabled NVIDIA GPU

NVIDIA\92s Compute Unified Device Architecture (CUDA) is a software platform for massively parallel high-performance computing on the company's powerful GPUs. PGI compilers deliver world-class performance across a wide spectrum of applications and benchmarks. PGI is the compiler-of-choice among many popular performance-critical applications used in the fields of geophysical modeling, mechanical engineering, computational chemistry, weather forecasting, and high-energy physics.

The Portland Group, a leader in GPGPU development tools and technologies for HPC, offers one and two day courses on NVIDIA GPU Programming with CUDA C, CUDA Fortran and the PGI Accelerator programming model.The PGI Fortran & C accelerator programming model document covers only user-directed accelerator programming, where the user specifies the regions of a host program to be targeted for offloading to an accelerator device.

Application -Porting a 3D Elastic Wave Simulator to GPUs Using PGI Accelerator

Using MAGMA with PGI Fortran

Using the CULA GPU-enabled LAPACK Library with CUDA Fortran

Parallel Random Number Generation Using OpenMP, OpenCL and PGI Accelerator Directives

Codes : NVIDIA - PGI OpenACC Compilation & Execution


References & Web-Pages : OpenACC       Web-Sites : NVIDIA CUDA

PGI 2012 compilers language support exisit for full CUDA C/C++ compiler for targettting multi-core x64 platforms. For GPU Computing, support for the OpenACC GPU programming directives specification v1.0 and Asynchronous data transfers and kernel launch are provided. One of the objectives to use PGI compiler on CUDA enabled NVIDIA GPUs is to introduce a collection of compiler directives in the specific regions of code in Fortran and C programs that can be offloaded from a host CPU to an attached CUDA enable d NVIDIA GPU accelerator. This method provides a model for accelerator programming that is portable across operating systems and various types of host CPUs and accelerators.

For more information PGI Accelerator Programming Model for Fortran & C

Module : Summary of Programs on OpenACC in hyPACK-2013 workshop

Set of Programs on Numerical Linear Algebra and Solution of Possion Equations by Finite Difference method (FDM) will be discussed.

PGI tutorials on applications will be provided.


NVIDIA - PGI OpenACC Compilation & Execution

Detatils of Compilation and execution of "openacc" program is given below.






References
1. NVIDIA Kepler Architecture
2. NVIDIA CUDA toolkit 5.0 Preview Release April 2012
3. NVIDIA Developer Zone
4. RDMA for NVIDIA GPUDirect coming in CUDA 5.0 Preview Release, April 2012
5. NVIDIA CUDA C Programmig Guide Version 4.2 dated 4/16/2012 (April 2012)
6. Dynamic Parallelism in CUDA Tesla K20 Kepler GPUs - Prelease of NVIDIA CUDA 5.0
7. NVIDIA Developer ZONE - CUDA Downloads CUDA TOOLKIT 4.2
8. NVIDIA Developer ZONE - GPUDirect
9. OpenACC - NVIDIA
10. Nsight, Eclipse Edition Pre-release of CUDA 5.0, April 2012
11. NVIDIA OpenCL Programming Guide for the CUDA Architecture version 4.0 Feb, 2011 (2/14,2011)
12. Optmization : NVIDIA OpenCL Best Practices Guide Version 1.0 Feb 2011
13. NVIDIA OpenCL JumpStart Guide - Technical Brief
14. NVIDA CUDA C BEST PRACTICES GUIDE (Design Guide) V4.0, May 2011
15. NVIDA CUDA C Programming Guide Version V4.0, May 2011 (5/6/2011)
16. NVIDIA GPU Computing SDK
17. Apple : Snowleopard - OpenCL
18. The OpenCL Specification, Version 1.1, Published by Khronos OpenCL Working Group, Aaftab Munshi (ed.), 2010.
19. The OpenCL Speciifcation Version : v1.0 Khronos OpenCL Working Group
20. Khronos V1.0 Introduction and Overview, June 2010
21. The OpenCL 1.1 Quick Reference card.
22. OpenCL 1.2 (pdf file)
23. OpenCL 1.1 Specification (Revision 44) June 1, 2011
24. OpenCL Reference Pages
25. MATLAB
26. NVIDIA - CUDA MATLAB Acceleration
27. CUDA BY EXAMPLE - An Introduction to General Purpose GPU Programnming, Jason Sanders, Edward Kandrot (Foreword by Jack Dongarra), Addison Wessely 2011, nvidia
28. Programming Massievely Parallel Processors - A Hands-on Approach, David B Kirk, Wen-mei W. Hwu nvidia corporation, 2010, Elsevier, Morgan Kaufmann Publishers, 2011
29. OpenCL Toolbox for MATLAB
30. NAG
31. OpenCL Progrmamin Guide, Aftab Munshi Benedict R Gaster, timothy F Mattson, James Fung, Dan Cinsburg, Addision Wesley, Pearson Education, 2012
32. The OpenCL 1.2 Specification Khronos OpenCL Working Group
33. The OpenCL 1.2 Quick-reference-card ; Khronos OpenCL Working Group

Centre for Development of Advanced Computing