Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

toc-local

Introduction

rumpirun is a RUSS-specific wrapper for the underlying mpirun program as provided by OpenMPI or MPICH. Most all arguments provided to rumpirun are passed to the underlying mpirun without change to be processed it. rumpirun uses rurun to launch MPI programs onto the targets.

Environment Variables

Many of the rumpirun-specific environment variables correspond to those of rurun.

NameReq/OptDescription
RUMPIRUN_ENVoptionalComma-separated list of environment variable names to be passed to targets.
RUMPIRUN_HOSTFILErequiredHost file containing index values of targets.
RUMPIRUN_LAUNCHERoptionalLauncher used to start tasks on targets. Default is rurun-mpi.
RUMPIRUN_MPIRUNoptionalPath of mpirun program. Default is the mpirun.
RUMPIRUN_PNET_ADDRrequired*pnet server address used to connect to targets.
RUMPIRUN_PNET_TARGETSFILErequired*Targets file used by pnet server.
RUMPIRUN_SHELLoptionalAlternative shell to run on target.
* One of RUMPIRUN_PNET_ADDR or RUMPIRUN_PNET_TARGETSFILE is required.

RUMPIRUN_SHELL

See RURUN_SHELL for details. RUMPIRUN_SHELL allows setting up on the target prior to launching the task.

Usage

See respective MPI implementations for usage.

MPICH

The following environment variables are set by rumpirun:

  • HYDRA_BOOTSTRAP
  • HYDRA_BOOTSTRAP_EXE
  • HYDRA_LAUNCHER
  • HYDRA_LAUNCHER_EXEC
  • HYDRA_HOST_FILE
  • HYDRA_LAUNCHER_AUTOFORK

and the following options:

  • -disable-hostname-propagation - forces hostname determinated to be done at the target

OpenMPI

The following environment variables are automatically set by rumpirun:

  • OMPI_MCA_orte_default_hostfile
  • OMPI_MCA_orte_rsh_agent
  • OMPI_plm_rsh_disable_qrsh

Examples

To run an MPI job (e.g., mpihello):

No Format
rumpirun mpihello

Notes:

  • depends on the underlying mpirun for determining number of tasks

To run MPI job with 4 tasks:

No Format
rumpirun -n 4 mpihello

Notes:

  • -n (and its synonym -np) is understood by openmpi and mpich implementations

Pass some environment variables (PATHXYZ):

No Format
export RUMPIRUN_ENV="${RUMPIRUN_ENV} PATH XYZ"

Notes:

  • the named environment variables will be passed independently of mpirun (for both openmpi and mpich)
  • the named environment variables are available before the MPI helper (e.g., orted for openmpi) are even started