PATC-Trainingskurs "GPU Programming"
(Kurs-Nr. 72/2013 im Trainingsprogramm des Forschungszentrums)
Referenten: | Dr. Jan Meinke, Jochen Kreutz, Peter Philippen, Willi Homberg, JSC; Suraj Prabhakaran, GRS; Jiri Kraus, NVIDIA |
Sprache: | Der Kurs wird auf Englisch gehalten. |
Inhalt: | |
Dauer: | 3 Tage |
Termin: | 15. - 17. April 2013, 9.00 - 16.30 Uhr |
Ort: | Jülich Supercomputing Centre, Ausbildungsraum 1, Geb. 16.3, R. 021 |
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, 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 using MPI
Prerequisites: Knowledge in C
This course is a PATC course (PRACE Advanced Training Centres).