Notice that the MPICH2 definition contains the $mpiexec variable. This variable is defined elsewhere in the
parallel_support.tvd file as follows:
There is no limit to how many definitions you can place within the parallel_support.tvd file or within a variable. The definitions you create will appear in the
Parallel system pulldown list in the
File > New dialog box (TotalView) or the
Add parallel program screen (MemoryScape) and can be used as an argument to the
-mpi option of the CLI's
dload command.
Only use this option when style is set to
bootstrap. This variable is the definition of MPI_COMM_WORLD in C and C++. MPI_COMM_WORLD is usually a
#define or
enum to a special number or a pointer value. If you do not include this field, TotalView and MemoryScape cannot acquire the rank for each MPI process.
assign: The argument to be inserted to the command-line option named in
env_option is a comma-separated list of environment variable
name=value pairs; that is,
assign_space_repeat: The argument after
env_option is a space-separated name/value pair that is assigned to an environment variable. The command within
env_option is repeated for each environment variable; that is, suppose you enter:
This mode is primarily used for the mpiexec.py MPICH2 starter program.
export: The argument to be inserted after the command named in
env_option. This is a comma-separated list of environment variable names; that is,
force: Environment variables are forced into the ranked processes using a shell script. TotalView or MemoryScape will generate a script that launches the target program. The script also tells the starter to run that script. This clause requires that your home directory be visible on all remote nodes. In most cases, you will use this option when you need to dynamically link memory debugging into the target. While this option does not work with all MPI implementations, it is the most reliable method for MPICH1.
none: No argument is inserted after
env_option.
A short name describing the configuration. This name shows up in such places as the File > New dialog box and in the
Process > Startup Parameter's Parallel tab in TotalView and the
Add parallel program screen in MemoryScape. TotalView and MemoryScape remember which configuration you use when starting a program so that they can automatically reapply the configuration when you restart the program.
Names the command-line option (usually -nodes) that sets the number of node upon which your program runs. This statement does not define the value that is the argument to this command-line option.
%a: Replaced with the command-line arguments passed to rank processes.
%p: Replaced with the absolute pathname of the target program.
%s: Replaced with additional startup arguments. These are parameters to the starter process, not the rank processes.
When the user selects a value for the option indicated by the nodes_option and
tasks_options, the argument and the value are placed within the
%s parameter. If you enter a value of 0 for either of these, MemoryScape and TotalView omit the parameter. In MemoryScape, 0 is the default.
manager_process: The parallel system uses a binary manager process to oversee process creation and process lifetime. Our products attach to this process and communicate with it using its debug interface. For example, IBM's poe uses this style.
setup_script: The parallel system uses a script—which is often
mpirun—to set up the arguments, environment, and temporary files. However, the script does not run as part of the parallel job. This script must understand the
-tv command-line option and the TOTALVIEW environment variable.
bootstrap: The parallel system attempts to launch an uninstruemented MPI by interposing TotalView or MemoryScape inside the parallel launch sequence in place of the target program. This does not work for MPICH and SGI MPT.
(sometimes required) Lets you define the option (usually -np or -
procs) that controls the total number of tasks or processes.