PATC training course "GPU Programming"
(Course no. 76/2014 in the training programme of Forschungszentrum Jülich)
Target audience: | Scientists who want to use GPU systems |
Contents: | |
Prerequisites: | Working knowledge of C |
Language: | This course is given in English. |
Duration: | 3 days |
Date: | 7- 9 April 2014, 9:00-16:30 |
Venue: | Jülich Supercomputing Centre, Ausbildungsraum 1, building 16.3, room 021 |
Number of participants: | maximum 25 |
Instructors: | Dr. Jan Meinke, Jochen Kreutz, Peter Philippen, Dr. Andrew Adinets, Anke Zitz, JSC; Jiri Kraus, NVIDIA |
Contact: | Willi Homberg |
Registration: | Please register until 3 April 2014 via the form at the PRACE web site |
Many-core programming is a very dynamic research area. Many scientific applications have been ported to GPU architectures in recent years. We will give an introduction to CUDA, OpenACC, OpenCL, and multi-GPU programming using examples of increasing complexity. After introducing the basics the focus will be on optimization and tuning of scientific applications. Topics covered will include:
- Programming models: CUDA, OpenACC, OpenCL
- Using libraries as interface for GPU programming (e.g. Thrust)
- Partitioning and granularity of parallel applications
- Debugging and profiling of CUDA kernels
- Performance optimizations
- Multi-GPU programming
This course is a PATC course (PRACE Advanced Training Centres).