The Message Passing Interface (MPI) is a language-independent message passing library standard. It has been implemented in several languages, including Fortran, C/C++, and Python. This book will use the Mpi4py implementation. Chapter 3, Stepping Up to IPython for Parallel Computing, outlined the process for starting IPython using MPI. It will be assumed that IPython has been started this way in the following examples.
Here is the MPI "Hello world"
program. It has every process reply with a simple string, along with the rank of the process:
from mpi4py import MPI comm = MPI.COMM_WORLD rank = comm.Get_rank() print("hello world from process ", rank)
Line 2: This obtains a communicator object. A communicator is a logical structure that defines which processes are allowed to send and receive messages.
COMM_WORLD
is the communicator that contains all the processes in this session.Line 3: The
Get_rank( )
method returns the rank of this process. Each process inside a communicator...