Message Passing: MPI
Here are several links for MPI - sample codes, details of library
calls, etc. You should also check CCR's training page for a list of links.
Details on library calls from the Maui Center
Tutorial, exercises and solutions from Argonne
Some of the large issues in writing parallel code: linear algebra especially matrix-matrix multiplication (see Templates for the solution of linear algebra), domain decomposition techniques, Monte Carlo methods and parallel random number generators (see Numerical Receipes).
Homework Port our Jacobi solver to MPI. Your choice as to exactly how communication is carried out. However, you need to carefully examine the scaling of the problem - how compute times vary as the problem size and the number of processors is changed. If you can, change the way communication is done, and see if your results change. DUE November 14.
Homework Port the matrix iteration/inverse solver to MPI. Your choice as to exactly how communication is carried out. However, you need to carefully examine the scaling of the problem - how compute times vary as the problem size and the number of processors is changed. If you can, change the way communication is done, and see if your results change. As you have seen with the OpenMP exercises, size matters. Your final work here should be with large matrices. DUE December 11, 4:30 p.m.; turn work into my math department mailbox.
Coding tricks for optimizing matrix-matrix multiplication