Introduction to Parallelization with MPI
The goal of this three-session (2 hours each ) sequel is to teach basic and, to some extent, intermediate MPI material. Specifically, the course covers the message-passing model for parallel programming as implemented by the MPI standard. Within that framework, it covers point-to-point MPI process communication as well as collective communications between processes. To a good extent the presentation of the material is example driven. A list of the specific topics includes the following:
- message passing concepts
- layout of an MPI program
- compilation and running of MPI programs
- loop iteration scheduling and parallelization
- point-to-point communication calls, mpi_send & mpi_recv in blocking and unblocking mode
- ancillary routines for point-to-point calls: mpi_test; mpi_wait; etc.
- collective communications: mpi_bcast; mpi_gather; etc.
- examples of various levels of difficulty are given for all of the above
Throughout the presentation an interactive environment with the lecturer is encouraged.