PMIx - HPC Process Management Interface

HPC
Published

July 19, 2020

Modified

October 2, 2022

Use-Cases…implements…

Integration…where is it used…

Compatibility with OpenMPI

Slurm support Matrix…

Version Supports
16.05+ PMIx v1.2+ (specifically not PMIx v2.x and above)
17.11.0+ PMIx v1.2+ and v2.x
20.11+ PMIx v1.2+, v2.x and v3.x
22.05+ PMIx v2.x, v3.x., v4.x. and v5.x

PMI (Process Management Interface)…

Used by MPI libraries to interact with any compliant system (like Slurm):

PMIx (Process Management Interface - Exascale)…

Three distinct entities…

PRRTE

“PRTE” is the operational name in tools and wrappers

PMIx Reference Runtime Environment…

  • …full-featured PMIx environment
  • …affiliated with OpenPMIx library
  • …per-user development environment
  • …shim for environments missing some PMIx functionality
  • Derived from OpenRTE (ORTE)
    • …forked from OpenMPI
    • …standalone project in PMIx community
    • …distributed with PMIx
    • …replaces ORTE in OpenMPI 5+
  • Persistent DVM distributed virtual machine
    • …launch daemons on allocated nodes
    • …user launch applications against DVM
    • …tear down DVM when user session ends

Commands…

  • prte…start DVM
  • prun…launch jobs
    • --omca…OMPI parameters
    • --pmixmca…PMIx parameters
    • --prtemca…PRRTE parameters
    • …generic --mca picks best match
  • prte_info…build information
  • prted…PRRTE daemon for remote nodes
  • pterm…stop DVM

Install

Packages…

References

…with Slurm

Presentations…