flux-pmi(1)
SYNOPSIS
DESCRIPTION
flux pmi is a standalone Process Management Interface (PMI) client that embeds the same PMI client plugins as flux-broker(1). It can be used to test the PMI service offered by flux-shell(1) to parallel programs launched by Flux, or to probe the PMI services of an external launcher like Slurm or Hydra in isolation, without the complications of starting a Flux instance.
flux pmi tries a sequence of PMI plugins until one successfully
initializes. Alternatively, the specific plugin can be forced with the
--method
option. Initialization is followed by a subcommand-specific
sequence of PMI operations that mimics a common pattern, and then PMI
finalization.
OPTIONS
- -v, --verbose[=LEVEL]
Trace PMI operations. This is equivalent to setting
FLUX_PMI_DEBUG
in the broker environment.
- --method=URI
Specify the PMI method to use, where the scheme portion of the URI specifies a plugin and the path portion specifies plugin-specific options. The builtin plugins are
- simple
Use the simple PMI-1 wire protocol.
- libpmi2[:PATH]
dlopen()
libpmi2.so
and use the PMI-2 API, optionally at a specific PATH.- libpmi[:PATH]
dlopen()
libpmi.so
and use the PMI-1 API, optionally at a specific PATH.- single
Become a singleton.
- --libpmi-noflux
Fail if the libpmi or libpmi2 methods find the Flux
libpmi.so
.
- --libpmi2-cray
Force the libpmi2 Cray workarounds to be enabled for testing. Normally they are enabled only if a heuristic detects that Cray libpmi2 is in use. The workarounds are
Encode all KVS values with base64.
Immediately fail an attempt to fetch any KVS with a
flux.
prefix.
COMMANDS
barrier
flux pmi barrier does the following:
Execute PMI barrier
Execute PMI barrier
Print elapsed time of (2)
- --count=N
Execute N barrier (step 2) operations (default 1).
exchange
flux pmi exchange does the following:
Execute PMI barrier
Put rank specific key to PMI KVS
Execute PMI barrier
Get rank specific key from PMI KVS for all other ranks
Execute PMI barrier
Print elapsed time of (2-5)
- --count=N
Execute N exchange (step 2-5) operations (default 1).
get
flux pmi get fetches a pre-set key from the PMI KVS.
- --ranks=RANKS
Print the value on specified RANKS, an RFC 22 idset or
all
(default 0).
RESOURCES
Flux: http://flux-framework.org
Flux RFC: https://flux-framework.readthedocs.io/projects/flux-rfc