CECAM Tutorial "Programming Parallel Computers" 2008
Workshop, 11-15 February 2008, Jülich Supercomputing Centre
This tutorial gives you a thorough introduction to scientific parallel programming. After an overview of parallel computing, algorithms, and programming, in the main part of the course you learn how to write parallel programs using the standard Message Passing Interface (MPI). The third part of the tutorial introduces you to shared memory programming with OpenMP.
Lectures alternate with hands-on exercises. The exercises provide an excellent opportunity to apply the techniques just presented. Attendees will receive copies of the lectures and additional reference material on MPI and OpenMP. There will also be time for discussions with scientists from various fields of computational science, including parallel numerical computing, quantum chemistry, and molecular dynamics.
Prerequisites
- Good knowledge of a sequential programming language (e.g., C, Fortran, C++)
- Experience in scientific and numerical programming
Outline
[Day 1] Introduction to Parallel Programming
- Parallel computer architectures and computer systems
- Parallel algorithms and software
- Parallel programming
[Day 2-4] Introduction to MPI Programming
- Basic concepts
- Point-to-point message passing
- Collective communication
- Advanced topics
[Day 5] Introduction to OpenMP Programming