Event Detail


Parallel Programming Workshop



  • Rolf Rabenseifner, HLRS
  • Neil Stringfellow, CSCS
Registration fee

This fee covers administrative charges, all coffee breaks as well as the slides, CD and manuals provided during the course.


  • Employees/students from Swiss educational/research institutions: CHF 150
  • Employees/students from non-Swiss educational/research institutions: CHF 150


  • Employees from industry: CHF 1500.
Technical RequirementsAll participants must bring their own laptop to work on. Required software must be pre-installed before the start of the course. Please see below for software requirements.


Microsoft Windows (XP/2003/Vista)

X Window Server available from Sourceforge website.

Please install the following three executables:

  • Xming-6-9-0-31-setup
  • Xming-fonts-7-4-0-3-setup
  • Xming-mesa-6-9-0-31-setup
You should also get a PuTTY-SSH client preinstalled.


Ensure you have an SSH distribution installed and have access to secure shell, secure copy and ftp commands:

  • which ssh
  • which scp
  • which sftp
If this is not the case download OpenSSH from the following website.

Check you are running an X Window System (X11) with an OpenGL implementation that supports 2D and 3D graphic applications: 

  • who -r
  • glxinfo | grep -1 opengl
The output of the first command for the current runlevel should return the value "5".

Test it running the basic OpenGL Gears 3D application provided by default to any OpenGL implementation:

  • glxgears
A window will open with a 3 colored gears rotating all-together. 

See http://www.x.org/wiki/ for downloading/ configuring/ installing X.org.

Mac OS X (10.5 or later)

You will find the "X11" application under Applications/Utilities/X11

ssh should be available by default.


3-Day-Course -- 1st day
Message Passing Interface (MPI-1, part 1)
9:10Parallel Architectures and Programming Models (2)
10:10Coffee break
10:25MPI-1 - Introduction to the Message Passing Interface (3+3a)
10:25Chap. 1 MPI Overview (talk)
10:45Chap. 2 MPI Process model (talk + practical)
12:00Lunch break
13:00Chap. 3 Messages and Point-to-Point Communication (talk + practical)
14:15Coffee break
14:30Chap. 4 Non-Blocking Communication (talk + practical)
15:45Coffee break
16:00Chap. 5 Derived Data types (talk + practical)
17:00Parallel debugging (5) (talk)
3-Day-Course -- 2nd day
Message Passing Interface (MPI-1, part 2) and OpenMP
8:30Introduction to CSCS Computing Resources (lecture by CSCS)
9:00Chap. 6 Virtual Topologies (3, continued) (talk + practical)
10:10Coffee break
10:25Chap. 7 Collective Communication (talk + practical)
11:00Coffee break
11:15Chap. 8 Other MPI-1 features (talk)
11:40Heat conduction program, a parallelization example with MPI (6) (talk)
12:00Lunch break
13:00OpenMP - Overview and execution model (7+7a) (talk + practical)
14:00Coffee break
14:15OpenMP - Work sharing directives (talk + practical)
15:15OpenMP - Data environment (talk + practical)
16:00Coffee break
16:15OpenMP - Summary and Pitfalls (talk)
17:15Assure/ThreadChecker - detection of OpenMP race conditions (8) (talk)
18:15  End
3-Day-Course -- 3rd day
8:30MPI-2 overview (10) (talk)
8:45MPI-2 one-sided comm. (12) (talk)
9:15Parallel file I/O (basics) (11) (talk + practical)
10:15Coffee break
10:30Parallel file I/O (fileviews) (talk + practical)
11:30Parallel file I/O (access methods) (talk)
12:00Lunch break
13:00Parallel programming models on hybrid systems / MPI+OpenMP (23) (talk)
14:00Coffee break
14:15PETSc Tutorial (41) (talk)
15:00Laplace-Example with PETSc (42a+c)
15:45Performance analysis at CSCS (lecture by CSCS)

Back to listing