Mpirun is a .NET Assembly. It is used to launch MPI and non-MPI processes
on local and remote computers.
Example: mpirun -np 4 myexecutable.exe
In this example, the machines file and executable
must be in the directory in which you issue the mpirun command.
How do you specify on which machines your
program will be run
- The simplest way is to call the machinemaker script in H:\CTC Tools\ to produce
a file called machines, which consists of a list of the nodes your
batch job has allocated. If the machines
file is produced, the -mach_file and -pg_file parameters for mpirun
are unnecessary.
- If you do not have a SPMD program, you will probably need to
use the -pg_file parameter for mpirun. In
this case you would need to create a file called myfile.pg,
which consists of the nodes that have been allocated, along with the executables
to be run on each. Here is an example of a .pg file:
ctcdev01.tc.cornell.edu 4 demo.exe
ctcdev02.tc.cornell.edu 3 demoSub.exe
ctcdev03.tc.cornell.edu 2 demoSub2.exe
The following items are commonly-used parameters for the
mpirun command.
- -np specifies the number of tasks to run
- -wd specifies the working directory to be used by the MPI processes.
It is only necessary if your current directory and desired working
directory are not the same.
- -h | -help displays the command line arguments for mpirun
- -verbose prints verbose output for debugging purposes
- -mpi_debug invokes extra checks on the input parameters and extra output
if errors occur at runtime.
- -mpi_verbose switch to verbose output mode for the MPI/Pro application.
This information is different from that produced by the -verbose flag.