You are here: Home Education DD3015

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)

Course Announcement

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.

Goals

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.

Syllabus

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.

Examination

The assessment of the course will be a pass/fail grade. The focus for the assessment is on the programming projects.

Schedule

  • 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

Prerequisites

Knowledge of the programming language C. Students need an account to access PDC computer systems. Furthermore you need a laptop to access PDC systems during the meetings.

Registration deadline: 2012-10-01

Course Responsible

Prof. Erwin Laure

Michael Schliephake

Course E-mail: course-dd3015 (at) pdc . kth . se