::RUNNING MPICH APPLICATIONS:
Use MPIRun.exe to launch the application. It is in the [MPICH Home]\bin directory.
Usage:
The preferred format is "MPIRun myapp.cfg" where the config file determines the executable and hosts to launch on.
Configuration files.
The config file format is as follows:
[opt push] exe c:\somepath\myapp.exe OR \\host\share\somepath\myapp.exe [args arg1 arg2 arg3 ...] [env VAR1=VAL1|VAR2=VAL2|...|VARn=VALn] hosts hostA #procs hostB #procs hostC #procs ...
Bracketed lines are optional. The # character will comment out a line
Here is a sample configuration file:
opt push exe c:\temp\mandel.exe env MINX=0|MAXX=2|MINY=0|MAXY=2 args -i c:\temp\cool.points hosts fry 2 #light 2 jazz 1
I provided a sample application and config file for you to try.
Username and Password
When you run an application, MPIRun will prompt you for an account and password to launch the processes as. You can avoid this prompt by running MPIRegister. MPIRegister will encrypt an account and password to the registry for the current user only. Then when you use MPIRun it won't prompt you for a user and password. MPIRegister -remove will delete this information from the registry.
Command line options for MPIRun
-np #procs
Launch #procs, starting on the current machine and then one on each of the rest of the machines specified at install time until #procs are launched. This mechanism loops if more processes are specified than there are machines available.
-push
The push option copies the executable to a temporary file on each node, executes it, and then deletes the file after the process has terminated. If this option is not specified then the path to the executable must be the valid on all the nodes. Note: The launcher cannot resolve network drives. The executable must reside on the local file system of each node or be reachable by a network share (\\host\share\mpiapp.exe).
-localonly #procs
This runs the application on the local machine using the shared memory device.
-localonly #procs -tcp
Add the -tcp switch to force the use of sockets instead of shared memory
-env var1=val1|var2=val2|var3=val3|...varn=valn
This will set the environment variables specified in the string before each process is launched. Remember to quote the string so the command prompt doesn't interpret the vertical bar as a pipe command.
main
Installation
Compiling an MPI application
MPIRun
Re-Building MPICH.NT
Launcher
Running applications without using the launcher
Subtle configuration options