# cwltool.mpi

Experimental support for MPI.

## Attributes

`MpiConfigT` |
`MPIRequirementName` |

## Classes

`MpiConfig` |

## Module Contents

cwltool.mpi.MpiConfigT

cwltool.mpi.MPIRequirementName = 'http://commonwl.org/cwltool#MPIRequirement'

class cwltool.mpi.MpiConfig(runner='mpirun', nproc_flag='-n', default_nproc=1, extra_flags=None, env_pass=None, env_pass_regex=None, env_set=None)
  Parameters:

    - runner (str)

    - nproc_flag (str)

    - default_nproc (int | str)

    - extra_flags (list[str] | None)

    - env_pass (list[str] | None)

    - env_pass_regex (list[str] | None)

    - env_set (collections.abc.Mapping[str, str] | None)

  runner = 'mpirun'
  nproc_flag = '-n'
  default_nproc = 1
  extra_flags = []
  env_pass = []
  env_pass_regex = []
  env_set
  classmethod load(config_file_name)

    Create the MpiConfig object from the contents of a YAML file.

    The file must contain exactly one object, whose attributes must be in the list allowed in the class initialiser (all are optional).

    Parameters:

      config_file_name (str)

    Return type:

      MpiConfigT

  pass_through_env_vars(env)

    Take the configured list of environment variables and pass them to the executed process.

    Parameters:

      env (collections.abc.MutableMapping[str, str])

    Return type:

      None

  set_env_vars(env)

    Set some variables to the value configured.

    Parameters:

      env (collections.abc.MutableMapping[str, str])

    Return type:

      None