Process Management Interface (PMI)
- group Process Management Interface
This implemented getters and setters for the PMI interface in MPC.
Defines
-
MPC_LAUNCH_PMI_SUCCESS 0
Wrapper for PMI_SUCCESS.
-
MPC_LAUNCH_PMI_FAIL -1
Wrapper for PMI_FAIL.
Functions
-
int mpc_launch_pmi_init()
Main initialization point for MPI support.
Main initialization point for MPI support.
- Returns:
int SCTK_PMI_SUCCESS / _FAIL
-
int mpc_launch_pmi_finalize()
Main release point for PMI support.
Main release point for PMI support.
- Returns:
int SCTK_PMI_SUCCESS / _FAIL
-
int mpc_launch_pmi_get_max_key_len()
Maximum length of a PMI key.
- Returns:
int max key len
-
int mpc_launch_pmi_get_max_val_len()
Maximum length of a PMI value.
- Returns:
int max value len
-
int mpc_launch_pmi_is_initialized()
Check if PMI was initialized.
- Returns:
int 1 if initialized 0 otherwise
-
void mpc_launch_pmi_abort(const int return_code)
Abort the process using PMI.
- Parameters:
return_code – [in] Return code to return from the processes
-
int mpc_launch_pmi_barrier()
Execute a PMI barrier between UNIX processes.
Execute a PMI barrier between UNIX processes.
- Returns:
int SCTK_PMI_SUCCESS / _FAIL
-
int mpc_launch_pmi_put_as_rank(char *value, int tag, int is_local)
Put a value in KVS for rank using an integer tag.
- Parameters:
value – Data to be stored in the PMI
tag – identifier of the stored value
- Returns:
int SCTK_PMI_SUCCESS / _FAIL
-
int mpc_launch_pmi_get_as_rank(char *value, size_t size, int tag, int rank)
Get a value in KVS for rank using an integer tag.
- Parameters:
value – Data to be retrieved from the PMI
size – maximum size of the expected data
tag – tag of the data to be retrieved
rank – rank to retrieve data for
- Returns:
int SCTK_PMI_SUCCESS / _FAIL
-
int mpc_launch_pmi_put(char *value, char *key, int is_local)
Set a value at key in the KVS.
- Parameters:
value – value to be set
key – corresponding key
is_local – if the value is to be stored locally not over net
- Returns:
int SCTK_PMI_SUCCESS / _FAIL
-
int mpc_launch_pmi_get(char *value, size_t size, char *key, int remote)
Get a value at key in the KVS.
- Parameters:
value – value to be retrieved
size – maximum value size
key – corresponding key
remote – remote rank to query
- Returns:
int SCTK_PMI_SUCCESS / _FAIL
-
int mpc_launch_pmi_get_process_layout(struct mpc_launch_pmi_process_layout **layout)
Retrieve a UTHASH hash-table gathering process layout on nodes.
- Parameters:
layout – [OUT] where to store the pointer (not to free)
- Returns:
int SCTK_PMI_SUCCESS / _FAIL
-
int mpc_launch_pmi_get_global_rank_from_local(const int remote)
Translates a local (to the node) rank into a global rank.
- Parameters:
remote – [in] Local rank to translate
- Returns:
Global rank of the given peer
-
int mpc_launch_pmi_get_job_id(uint64_t *id)
Get the job id.
- Parameters:
id – Pointer to store the job id
-
MPC_LAUNCH_PMI_SUCCESS 0