Appendices A A Brief Introduction to MPI
The Message-Passing Interface (MPI) is a software library providing the functionality for passing messages between processes in a distributed memory programming model. The MPI standard was developed to provide programmers with a single interface for message-passing that is portable to multiple architectures, and it is supported by essentially all distributed memory parallel computers used for scientific computing. We here give a brief introduction to MPI, demonstrating how to write a simple MPI program and discussing a few of the most widely used MPI functions for point-to-point and collective communication. This introduction is intended only to provide a rudimentary knowledge of MPI programming in a single-threaded context,∗ and the reader is referred elsewhere1-4 for more comprehensive discussions. While the MPI standard5 provides bindings for MPI functions for both ANSI C, C++, and Fortran, we will here use the C bindings only.