It is possible to run a parallel program with different executables with several of the device including the ch_p4, ch_mpl, and globus2 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. For the globus2 device, see Section Computational Grids: the globus2 device . For the ch_p4 device, see Section The P4 Procgroup File and look for a discussion of procgroup files. For the ch_mpl device, you will need to check the POE documentation for your site for details on running MPMD programs.