Skip to main content

MPI is a communication protocol for parallel programming based on message exchange between individual processes. These processes can be executed on distributed memory systems with multiple nodes. This makes MPI scalable on systems larger than single computers. MPI offers a range of tools to maintain the flow of information between individual processes. This enables the execution of a parallel program that can be divided into several smaller parts. In the course of necessary communication, overhead always occurs, which normally limits the scalability of a parallel program. However, a properly optimized program opens up the possibility of using MPI on a distributed memory system (e.g., cluster or supercomputer) with satisfactory efficiency, where thousands or tens of thousands of nodes can be used. This course also offers the opportunity for intensive exchange with the instructors and other course participants.