The course gives basic knowledge in programming distributed memory machines using the Message Passing Interface (MPI) industry standard.
After a short introduction to the foundations of HPC and the areas of their application the MPI standard is introduced and some techniques for profiling and debugging of parallel applications are discussed. After thar a detailed presentation of the MPI standard is given, focusing on its implementation for the development of parallel programs. Some specific profiling and fine tuning techniques are introduced.
A practical hands-on tutirial on a real 8-node Linux cluster is included. The assessment consists of two tests and one final course project.
MPI is very important industrial standard in the domain of High Performance Computing (HPC). The knowledge and skills obtained from students during the course will enable students to use it in real industrial settings, including the following software platforms involving MPI implementations: Sun SunFire, IBM SP2, SGI, Cray T3, HPC clusters, Grids, etc.