Developers,

I just committed back to the trunk the Aggregate MCA (AMCA) Parameter Set work that Jeff Squyres and I have been working on. This will be a part of the eventual v1.3 release.

The motivation for creating AMCA parameter sets came from the realization that for certain applications a large number of MCA parameters needed to be set for the job to run well and/or as the user expects. So the goal of this work was to help reduce the number of MCA parameters that the user has to manage, therefore leading to a better end user experience with Open MPI.

AMCA parameter set files are formated exactly like the "~/.openmpi/ mca-params.conf" configuration files. In addition when AMCA parameter sets are used the user may still override the parameters on the command line if they like.

For example, let's say there is a set of MCA parameters that a user would need to set to get good performance out of Netpipe when using Open IB. They would typically run the application as:
  shell$ mpirun -np 2 NPmpi

To use the AMCA parameter set for Open IB the user would run:
  shell$ mpirun -np 2 -am  btl-openib-benchmark NPmpi

This will load a series of MCA parameters for the user. If they wanted to override the max_btls MCA parameter for tuning reasons they would run: shell$ mpirun -np 2 -am btl-openib-benchmark -mca btl_open_ib_max_btls 10 NPmpi

AMCA parameter sets can be coupled. If we take the example above and wanted to also use an AMCA parameter set for TCP, the user would run: shell$ mpirun -np 2 -am btl-openib-benchmark:btl-tcp-benchmark - mca btl_open_ib_max_btls 10 NPmpi

The AMCA parameter sets are loaded in priority order. This means that the OpenIB AMCA set has priority over the TCP AMCA set. So if the TCP AMCA sets the MCA parameter "mpi_leave_pinned=0" and the OpenIB AMCA sets it to "mpi_leave_pinned=1" then the latter, OpenIB version, will be used.

Additional Related MCA parameters:
 - mca_base_param_file_prefix
     (Default: NULL)
This is the fullname of the "-am" mpirun option. Used to specify a ':' separated list of AMCA parameter set files.
 - mca_base_param_file_path
     (Default: $SYSCONFDIR/amca-param-sets/:$CWD)
The path to search for AMCA files with relative paths. A warning will be printed if the AMCA file cannot be found.


If you have any problems with this new feature let me know. There will be an FAQ coming shortly about this I suspect.

Cheers,
Josh


----
Josh Hursey
jjhur...@open-mpi.org
http://www.open-mpi.org/

----
Josh Hursey
jjhur...@open-mpi.org
http://www.open-mpi.org/

Reply via email to