University of Heidelberg

Introduction to GPU Accelerated Computing SS 2016 Block Course with Exercises

NEWS: Due to too many registrations and a problem with the dates Aug. 1-4 the course will be split into TWO courses: the first one July 25-28, 2016, the second one Oct. 4-7, 2016 . The July course is already in the LSF system with this link here . The October course will be published in the LSF information for the next term (WS 2016/2017) soon.
Files: Complete Slides of Lecture 1-3, Mon-Wed July 25-27
Lecture Slides Jason Sanders complete, Mon/Tue July 25/26
User Handbook kepler cluster
NVIDIA Slides on User API's
NBODY6++ Technical Manual
NBODY6++ Our Experiments Description
NBODY6++ Lecture Slides of Thu July 28
Summary: We will learn the basic technique to use GPU (graphical processing units, graphics cards) for numerical accelered computing at the example of CUDA - an extension of C.
Enrolment: Please use this link: https://uebungen.physik.uni-heidelberg.de/v/638
Lecturer: Prof. Rainer Spurzem; ZAH/ARI, Mönchhofstr. 12-14, 69120 Heidelberg
Email: spurzem@ari.uni-heidelberg.de
Time and Place: Monday - Thursday, July 25-28, 2016; Lecture: 10:15 - 13:00 Uhr, Exercises: 14:15 - 17:00, BOTH at Philosophenweg 12 (Physics/Astronomy), CIP Pool.
Requirements: Basic knowledge of a higher programming language such as C, C++, Fortran or similar

Topic: We will learn the basic technique to use GPU (graphical processing units, graphics cards) for numerical accelered computing at the example of CUDA - an extension of the C programming language. Also some general ideas of parallel programming will be discussed. GPU accelerated parallel computing is a technique used in many areas of computational physics and astrophysics. See for example this conference with current research been done: GPU 2016 Rome . After the basic introduction one or two application examples will be presented. This is a four day block course with lectures in the morning and practical hands-on exercises in the afternoon. Topics: Parallel Computing, GPU Hardware, Elements of CUDA Language, Data Transfer, Vector and Matrix Operations, Simple Application for N-Body Problem.
Literature: CUDA by Example, of Jason Sanders and Edward Kandrot . Our course is inspired by this book and lectures of the authors, but will cover much less details; on the other hand we will learn about some astrophysical application, which is not in the book.

Exercises: Mon- Fri, 14:15 - 17:00 Uhr, INF 227, CIP Pool KIP 1.401
Solution of Problems with help provided by the lecturer


(Responsible for contents: Rainer Spurzem )
Contact: D. Möricke
to top of page