Introduction to Programming with GPU and Applications in Scientific Computing (4,5-7,5hp)
Introduction to Programming with GPU and Applications in Scientific Computing (7,5hp)
Graphics processing units (GPU) will provide a significant part of the computational power used in scientific computing applications. Mastering parallel computing with these devices is therefore very interesting and becoming increasingly important. This course will provide the basic knowledge and practical experience of parallel computing with GPU and how to use it for the development of programs in the field of scientific computing.
The course provides the introduction to the programming with GPU, explains methods for performance optimizations. It introduces the software tools for the development and examples of algorithms from the field of scientific computing. A programming project will be performed to practice the programming.
After the course students will be able to:
- Understand the properties of GPU devices and assess their potential and limitations,
- Reason about the performance of programs running on it,
- Use the CUDA SDK and several libraries providing numerical algorithms as well as OpenACC,
- Write parallel programs for GPU.
General and specific hardware for parallel computing. Introduction to CUDA: Data Parallelism, CUDA Threads. Usage of CUDA memories. Libraries for simulation applications (CUBLAS, CUFFT, CUSPARSE, CURAND). Application case study. Introduction to OpenACC.
The assessment of the course will be a pass/fail grade. The focus for the assessment is on the programming projects.
- 2012-10-04, Lectures/Lab 09 - 16, Teknikringen 14, room 304
- 2012-10-25, Lectures/Lab 09 - 16, Teknikringen 14, room 304
- 2012-11-28, Lectures/Lab 09 - 16, Teknikringen 14, room 304
- 2013-01-31, Lectures/Lab 09 - 16, Teknikringen 14, room 304
Knowledge of the programming language C. Students need an account to access PCD computer systems. Furthermore you need a laptop to access PDC systems during the meetings.
Registration deadline: 2012-10-01
Course E-mail: course-dd3015 (at) pdc . kth . se