MPMD Programs


Up: Programming Tools Next: Debugging Previous: Passing Environment Variables to Programs under MPD

It is possible to run a parallel program with different executables with several of the devices including the ch_p4, ch_mpl, and globus2 devices. It is currently not possible to do this with the ch_shmem or ch_p4mpd devices. This style of parallel programming is often called MPMD for ``multiple program multiple data''. In many cases, it is easy to convert a MPMD program into a single program that uses the rank of the process to invoke a different routine; doing so makes it easier to start parallel programs and often to debug them. If converting a MPMD program to a SPMD (single program multiple data, not to be confused with single instruction multiple data, or SIMD) is not feasible, then you can run MPMD programs using mpich. However, you will not be able to use mpirun to start the programs; instead, you will need to follow the instructions for each device.



Up: Programming Tools Next: Debugging Previous: Passing Environment Variables to Programs under MPD