University of Heidelberg

This is an archive of our old website and not updated anymore

The current website can be found at conan.iwr.uni-heidelberg.de

Parallel Computing

Location and Time: Mo 9.11.- Mi 11.11. 2009 9-16 350(OMZ) U014, exercises U011

The course gives a thorough introduction to parallel programming. Topics covered are

  1. Overview of the architecture of parallel computers
  2. Characterisation of parallel algorithms (e.g. Speedup)
  3. Shared memory programming with OpenMP and Threads
  4. Distributed memory programming with MPI
  5. Parallel programming on graphic adapters (CUDA)
The lectures are accompanied by exercises where the usage of the different parallelization techniques are applied to solve practical problems.

Prerequisites: Programming skills in C or C++ (as e.g. acquired in the lecture Informatik I)

Registration: Due to number of computers available the maximal number of participants is 25. Please register by sending an E-Mail to ingrid.hellwig@iwr.uni-heidelberg.de before Wednesday November 4.

Schedule

Time Monday, Nov. 9 Tuesday, Nov. 10 Wednesday, Nov. 11
09.15 - 10.45 Lecture Parallel Hardware Lecture Basics of Parallel Algorithms and Mesage Passing Lecture Analysis of Parallel Algorithms
11.15 - 12.45 Lecture Shared Memory Concepts and OpenMP Excercises GNBP - OpenMP Excercises GNBP - MPI
14.15 - 15.45 Excercises Gravitational N-Body Problem (GNBP) Lecture (R. 532 in INF 368) The Message Passing Interface (MPI) Lecture Parallelization on Graphics Hardware with CUDA
16.15 - 17.45 Excercises GNBP - tiling Excercises GNBP - MPI Excercises GNBP - CUDA
If not stated otherwise, lectures take place in U 014 - OMZ - INF 350 and excercises take place in U 012 - OMZ - INF 350.

Script

The script is essentially identical to the transparencies, except it is better suited for printing. Printed copies will be provided for the course.

Transparencies

Transparencies

Exercises

Exercise sheet 1 (pdf) (Monday 14.15 - 17.45 and Tuesday 11.15 - 12.45)
  1. The Gravitational N-Body Problem (Code)
  2. OpenMP (Code, Solution)
  3. Tiling (Code, Solution)
  4. OpenMP+Tiling (Code, Solution)
Exercise sheet 2 (Tuesday 16.15 - 17.45 and Wednesday 11.15 - 12-45)
  1. MPI (Code, Solution)
Exercise sheet 3 (pdf) (Wednesday 16.15 - 17.45)
  1. Cuda (Code)

Revision: 344     Last changed: 2010-01-05 21