Releases: pmix/pmix-standard
PMIx Standard v4.0 Release Candidate 3
This PMIx Standard v4.0 release candidate contains a number of updates and additions since the v3.1 release. See Chapter 2.8 for a complete changelog.
Changes Since rc2
PMIx Standard v3.2 Release Candidate 2
The PMIx Standard v3.2 release candidate contains a number of updates since v3.1. See Section 1.11 for details.
Changes Since rc1
- PR #290 : Update Acknowledgements
PMIx Standard v4.0 Release Candidate 2
This PMIx Standard v4.0 release candidate contains a number of updates and additions since the v3.1 release. See Chapter 2.8 for a complete changelog.
Changes Since rc1
PMIx Standard v4.0 Release Candidate 1
This PMIx Standard v4.0 release candidate contains a number of updates and additions since the v3.1 release. See Chapter 2.8 for a complete changelog.
PMIx Standard v3.2 Release Candidate 1
This PMIx Standard v3.2 release candidate contains the following updates since the v3.1 release:
- Correct an error in the PMIx_Allocation_request function signature, and clarify the allocation ID attributes
- Rename the PMIX_ALLOC_ID attribute to PMIX_ALLOC_REQ_ID to clarify that this is a string the user provides as a means to identify their request to query status
- Add a new PMIX_ALLOC_ID attribute that contains the identifier (provided by the host environment) for the resulting allocation which can later be used to reference the allocated resources in, for example, a call to PMIx_Spawn
- Update the PMIx_generate_regex and PMIx_generate_ppn descriptions to clarify that the output from these generator functions may not be a NULL-terminated string, but instead could be a byte array of arbitrary binary content.
- Add a new PMIX_REGEX constant that represents a regular expression data type.
PMIx Standard v3.1
The v3.1 update includes clarifications and corrections from the v3.0 document:
- Direct modex upcall function (pmix_server_dmodex_req_fn_t) cannot complete atomically as the API cannot return the requested information except via the provided callback function
- Fix typo in name of PMIX_FWD_STDDIAG attribute
- Correctly identify the information retrieval and storage attributes as ``new'' to v3 of the standard
- Add missing pmix_data_array_t definition and support macros
- Add a rule divider between implementer and host environment required attributes for clarity
- Add PMIX_QUERY_QUALIFIERS_CREATE macro to simplify creation of pmix_query_t qualifiers
- Add PMIX_APP_INFO_CREATE macro to simplify creation of pmix_app_t directives
- Add new attributes to specify the level of information being requested where ambiguity may exist
- Add new attributes to assemble information by its level for storage where ambiguity may exist
- Add flag and PMIX_INFO_IS_END macro for marking and detecting the end of a pmix_info_t array
- Clarify that PMIX_NUM_SLOTS is duplicative of (a) PMIX_UNIV_SIZE when used at the session level and (b) PMIX_MAX_PROCS when used at the job and application levels, but leave it in for backward compatibility.
- Clarify difference between PMIX_JOB_SIZE and PMIX_MAX_PROCS
- Clarify that PMIx_server_setup_application must be called per-job instead of per-application as the name implies. Unfortunately, this is a historical artifact. Note that both PMIX_NODE_MAP and PMIX_PROC_MAP must be included as input in the info array provided to that function. Further descriptive explanation of the ``instant on'' procedure will be provided in the next version of the PMIx Standard.
- Clarify how the PMIx server expects data passed to the host by pmix_server_fencenb_fn_t should be aggregated across nodes, and provide a code snippet example
PMIx Standard v2.2
The v2.2 update includes the following clarifications and corrections from the v2.1 document:
- Direct modex upcall function (pmix_server_dmodex_req_fn_t) cannot complete atomically as the API cannot return the requested information except via the provided callback function
- Add missing pmix_data_array_t definition and support macros
- Add a rule divider between implementer and host environment required attributes for clarity
- Add PMIX_QUERY_QUALIFIERS_CREATE macro to simplify creation of pmix_query_t qualifiers
- Add PMIX_APP_INFO_CREATE macro to simplify creation of pmix_app_t directives
- Add missing PMIX_INFO_IS_OPTIONAL macro
- Add flag and PMIX_INFO_IS_END macro for marking and detecting the end of a pmix_info_t array
- Clarify the allowed hierarchical nesting of the PMIX_SESSION_INFO_ARRAY, PMIX_JOB_INFO_ARRAY, and associated attributes
- Clarify that PMIX_NUM_SLOTS is duplicative of (a) PMIX_UNIV_SIZE when used at the session level and (b) PMIX_MAX_PROCS when used at the job and application levels, but leave it in for backward compatibility.
PMIx Standard v3.0
Initial release of version 3.0 of the PMIx Standard. Additions/changes from version 2.1 include:
The following APIs were introduced in v3.0 of the PMIx Standard:
- Client APIs
- PMIx_Log , PMIx_Job_control
- PMIx_Allocation_request , PMIx_Process_monitor
- PMIx_Get_credential , PMIx_Validate_credential
- Server APIs
- PMIx_server_IOF_deliver
- PMIx_server_collect_inventory , PMIx_server_deliver_inventory
- Tool APIs
- PMIx_IOF_pull , PMIx_IOF_push , PMIx_IOF_deregister
- PMIx_tool_connect_to_server
- Common APIs
- PMIx_IOF_channel_string
The document added a chapter on security credentials, a new section for Input/Output (IO) forwarding to the Process Management chapter, and a few blocking forms of previously-existing non-blocking APIs. Attributes supporting the new APIs were introduced, as well as additional attributes for a few existing functions.
PMIx Standard v2.1
The v2.1 update includes clarifications and corrections, plus addition of examples:
- Clarify description of PMIx_Connect and PMIx_Disconnect APIs.
- Explain that values for the PMIX_COLLECTIVE_ALGO are environment-dependent
- Identify the namespace/rank values required for retrieving attribute-associated information using the PMIx_Get API
- Provide definitions for session, job, application, and other terms used throughout the document
- Clarify definitions of PMIX_UNIV_SIZE versus PMIX_JOB_SIZE
- Clarify server module function return values
- Provide examples of the use of PMIx_Get for retrieval of information
- Clarify the use of PMIx_Get versus PMIx_Query_info_nb
- Clarify return values for non-blocking APIs and emphasize that callback functions must not be invoked prior to return from the API
- Provide detailed example for construction of the PMIx_server_register_nspace input information array
- Define information levels (e.g., session vs job) and associated attributes for both storing and retrieving values
- Clarify roles of PMIx server library and host environment for collective operations
- Clarify definition of PMIX_UNIV_SIZE
PMIx Standard v2.0
Initial release of the PMIx Standard for version 2