MPI Programming
Parallel computing entails simultaneous use of cpus to solve a task. If the job entails repeated execution of the same program, perhaps with different data or parameter input, then it can be run in parallel using a job array. For more involved problems, however, passing of information among cpus might be required. Of the several paradigms for exchanging information among cpus the message passing model best uses the resources of Lewis. The Message Passing Interface (MPI) is a library specification (and the industry standard) for message passing. There are a number of sites where one can learn about programming with MPI. Some are listed here:
- Useful information about MPI programming for statistical and engineering problems can be found in the slide presentations posted at the Parallel & Cluster Computer Workshop given at the Oklahoma Supercomputing Symposium 2007.
- Cyberinfrastructure Tutor You will need to register and then choose the course you want to take.
- The Message Passing Interface (MPI) standard at Argonne National Labs