Contribute in GitHub: Edit online

Setting MCA parameters

IBM Spectrum™ MPI gives precedence to parameter values that are set by using the mpirun command. Therefore, a parameter's value that was set by using the mpirun command overrides the same parameter that was previously set as an environment variable or in a text file.

Setting MCA parameters with the mpirun command

To specify MCA parameters on the mpirun command line, use the --mca option. The basic syntax is:

mpirun --mca param_name value

In the following example, the MCA mpi_show_handle_leaks parameter is set to a value of 1 and the program a.out is run with four processes:

mpirun --mca mpi_show_handle_leaks 1 -np 4 a.out

Note that if you want to specify a value that includes multiple words, you must surround the value in quotes so that the shell and IBM Spectrum MPI understand that it is a single value.

For example:

mpirun --mca param "multiple word value" ...

Setting MCA parameters as environment variables

An ssh style example is:

OMPI_MCA_param="multiple word value"

A csh style example is:

setenv OMPI_MCA_param "multiple word value"

The way in which you specify an MCA parameter as an environment variable differs, depending on the shell that you are using.

For ssh style shells, the syntax of this example would be:

OMPI_MCA_mpi_show_handle_leaks=1 export OMPI_MCA_mpi_show_handle_leaks mpirun -np 4 a.out

For csh style shells, the syntax of this example would be:

setenv OMPI_MCA_mpi_show_handle_leaks 1 mpirun -np 4 a.out

Note that if you want to specify a value that includes multiple words, you must surround the value in quotes so that the shell and IBM Spectrum MPI understand that it is a single value.

Setting MCA parameters with a text file

MCA parameter values can be provided in a text file, called mca-params.conf. At runtime, IBM Spectrum MPI searches for the mca-params.conf file in one of the following locations, and in the following order:

Note$prefix is the base SMPI install directory, which by default is /opt/ibm/spectrum_mpi.

The mca_param_files parameter specifies a colon-delimited path of files to search for MCA parameters. Files to the left have lower precedence, while files to the right have higher precedence.

The mca-params.conf file contains multiple parameter definitions, in which each parameter is specified on a separate line. The following example shows the mpi_show_handle_leaks parameter, as it is specified in a file:

# This is a comment
# Set the same MCA parameter as in previous examples
  mpi_show_handle_leaks = 1

In MCA parameter files, quotes are not necessary for setting values that contain multiple words. If you include quotes in the MCA parameter file, they will be used as part of the value itself.


Parent topic: Tuning the runtime environment