Introduction to GPU Accelerated Computing WS 2017/2018 Block Course with Exercises

NEWS: Block Course, March 26-29, 2018 .
Room: CIP Pool KIP INF 227, 1.401
Begin of Lecture : Monday, March 26, 10:15 a.m. our GPU lecture will start at Kirchhoff Institute (KIP) Im Neuenheimer Feld 227, CIP Pool KIP 1.401. (If you arrive more than 15 minutes late, but want to keep your place in the course it is important that you let me know in advance, otherwise I may give spaces to the waiting list).

Files: Slides of Lectures March 26-29
XX Lecture Slides Jason Sanders complete
XX NVIDIA Slides on User API's
XX On the Histogram Programs
User Handbook kepler cluster
NBODY6++ Lecture Slides of Wed/Thu Mar 28/29
NBODY6++ Technical Manual
NBODY6++ Our Experiments Description Mar 29
XX : These files are password protected, registered participants get the password on request.
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/826
Lecturer: Prof. Rainer Spurzem; ZAH/ARI, Mönchhofstr. 12-14, 69120 Heidelberg
Email: spurzem@ari.uni-heidelberg.de
Time and Place: Monday - Thursday, March 26-29, 2018; Lecture: 10:15 - 13:00 Uhr, Exercises: 14:15 - 17:00, BOTH at CIP Pool KIP, INF 227, Room 1.401 .
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.


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