diff --git a/Chap_API_Data_Mgmt.tex b/Chap_API_Data_Mgmt.tex index 8bd23acd..87e92577 100644 --- a/Chap_API_Data_Mgmt.tex +++ b/Chap_API_Data_Mgmt.tex @@ -48,7 +48,7 @@ \section{Support Macros} Provide a static initializer for the \refstruct{pmix_data_buffer_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_DATA_BUFFER_STATIC_INIT @@ -600,7 +600,7 @@ \subsection{\code{PMIx_Data_embed}} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t diff --git a/Chap_API_Fabric.tex b/Chap_API_Fabric.tex index cc007343..2b5058e2 100644 --- a/Chap_API_Fabric.tex +++ b/Chap_API_Fabric.tex @@ -129,7 +129,7 @@ \subsection{Fabric endpoint support macros} Provide a static initializer for the \refstruct{pmix_endpoint_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_ENDPOINT_STATIC_INIT @@ -230,7 +230,7 @@ \subsection{Fabric coordinate support macros} Provide a static initializer for the \refstruct{pmix_coord_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_COORD_STATIC_INIT @@ -334,7 +334,7 @@ \subsection{Fabric geometry support macros} Provide a static initializer for the \refstruct{pmix_geometry_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_GEOMETRY_STATIC_INIT @@ -541,7 +541,7 @@ \subsubsection{Static initializer for the fabric structure} Provide a static initializer for the \refstruct{pmix_fabric_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_FABRIC_STATIC_INIT diff --git a/Chap_API_Proc_Mgmt.tex b/Chap_API_Proc_Mgmt.tex index a7898d47..9d9c719a 100644 --- a/Chap_API_Proc_Mgmt.tex +++ b/Chap_API_Proc_Mgmt.tex @@ -625,7 +625,7 @@ \subsubsection{App structure support macros} Provide a static initializer for the \refstruct{pmix_app_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_APP_STATIC_INIT @@ -1164,7 +1164,7 @@ \subsubsection{Topology support macros} Provide a static initializer for the \refstruct{pmix_topology_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_TOPOLOGY_STATIC_INIT @@ -1197,7 +1197,7 @@ \subsubsection{Topology support macros} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} void @@ -1572,7 +1572,7 @@ \subsection{Device distance support macros} Provide a static initializer for the \refstruct{pmix_device_distance_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_DEVICE_DIST_STATIC_INIT diff --git a/Chap_API_Publish.tex b/Chap_API_Publish.tex index 6d802baa..f2819ab2 100644 --- a/Chap_API_Publish.tex +++ b/Chap_API_Publish.tex @@ -421,7 +421,7 @@ \subsubsection{Lookup data structure support macros} Provide a static initializer for the \refstruct{pmix_pdata_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_LOOKUP_STATIC_INIT diff --git a/Chap_API_Query.tex b/Chap_API_Query.tex index e3376df0..c5f76bec 100644 --- a/Chap_API_Query.tex +++ b/Chap_API_Query.tex @@ -463,7 +463,7 @@ \subsubsection{Query structure support macros} Provide a static initializer for the \refstruct{pmix_query_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_QUERY_STATIC_INIT diff --git a/Chap_API_Server.tex b/Chap_API_Server.tex index 0b26eba3..9ddc991d 100644 --- a/Chap_API_Server.tex +++ b/Chap_API_Server.tex @@ -1417,7 +1417,7 @@ \subsubsection{Attribute registration structure support macros} Provide a static initializer for the \refstruct{pmix_regattr_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_REGATTR_STATIC_INIT @@ -1785,7 +1785,7 @@ \subsubsection{Cpuset support macros} Provide a static initializer for the \refstruct{pmix_cpuset_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_CPUSET_STATIC_INIT diff --git a/Chap_API_Struct.tex b/Chap_API_Struct.tex index 89f6ca68..2ca077f5 100644 --- a/Chap_API_Struct.tex +++ b/Chap_API_Struct.tex @@ -46,7 +46,7 @@ \section{Constants} \end{constantdesc} \adviceimplstart -\refconst{PMIX_MAX_NSLEN} should have a minimum value of 63 characters. Namespace arrays in \ac{PMIx} defined structures must reserve +Namespace arrays in \ac{PMIx} defined structures must reserve a space of size \refconst{PMIX_MAX_NSLEN}+1 to allow room for the \code{NULL} terminator \adviceimplend @@ -57,7 +57,7 @@ \section{Constants} \end{constantdesc} \adviceimplstart -\refconst{PMIX_MAX_KEYLEN} should have a minimum value of 63 characters. Key arrays in \ac{PMIx} defined structures must reserve +Key arrays in \ac{PMIx} defined structures must reserve a space of size \refconst{PMIX_MAX_KEYLEN}+1 to allow room for the \code{NULL} terminator \adviceimplend @@ -87,10 +87,8 @@ \subsection{PMIx Return Status Constants} \adviceimplend \adviceuserstart -Other than \refconst{PMIX_SUCCESS} (which is required to be zero), the integer value of any \ac{PMIx} error constant is left to the \ac{PMIx} library implementer with the constraint that it be negative and greater magnitude (i.e. of larger absolute value) -than -\refconst{PMIX_EXTERNAL_ERR_BASE}. -Thus, users are advised to always refer to constants by name, and not by a specific implementation's integer value, for portability between implementations and compatibility across library versions. +Other than \refconst{PMIX_SUCCESS} (which is required to be zero), the integer value of any \ac{PMIx} error constant are negative and of greater magnitude (i.e. of larger absolute value) than\refconst{PMIX_EXTERNAL_ERR_BASE}. +For compatibility with future versions, users are advised to always refer to constants by name, and not by their integer value which may be specific to an \ac{ABI} version. \adviceuserend The presentation of each \ac{API} in this document includes a list of return status constants which are either specific to that \ac{API} or are expected to be returned by the \ac{API} in normal use. @@ -473,7 +471,7 @@ \subsubsection{Process structure support macros} Provide a static initializer for the \refstruct{pmix_proc_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_PROC_STATIC_INIT @@ -797,7 +795,7 @@ \subsubsection{Process information structure support macros} Provide a static initializer for the \refstruct{pmix_proc_info_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_PROC_INFO_STATIC_INIT @@ -981,7 +979,7 @@ \subsubsection{Value structure support} Provide a static initializer for the \refstruct{pmix_value_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_VALUE_STATIC_INIT @@ -1072,7 +1070,7 @@ \subsubsection{Value structure support} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t @@ -1107,7 +1105,7 @@ \subsubsection{Value structure support} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t @@ -1146,7 +1144,7 @@ \subsubsection{Value structure support} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t @@ -1211,7 +1209,7 @@ \subsubsection{Info structure support macros} Provide a static initializer for the \refstruct{pmix_info_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_INFO_STATIC_INIT @@ -1288,7 +1286,7 @@ \subsubsection{Info structure support macros} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t @@ -1325,7 +1323,7 @@ \subsubsection{Info structure support macros} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t @@ -1383,7 +1381,7 @@ \subsubsection{Info structure list macros} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} void* @@ -1408,7 +1406,7 @@ \subsubsection{Info structure list macros} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t @@ -1445,7 +1443,7 @@ \subsubsection{Info structure list macros} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t @@ -1480,7 +1478,7 @@ \subsubsection{Info structure list macros} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} pmix_status_t @@ -1515,7 +1513,7 @@ \subsubsection{Info structure list macros} %%%% \format -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} void @@ -1733,7 +1731,7 @@ \subsubsection{Environmental variable support macros} Provide a static initializer for the \refstruct{pmix_envar_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_ENVAR_STATIC_INIT @@ -1837,7 +1835,7 @@ \subsubsection{Byte object support macros} Provide a static initializer for the \refstruct{pmix_byte_object_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_BYTE_OBJECT_STATIC_INIT @@ -1939,7 +1937,7 @@ \subsubsection{Data array support macros} Provide a static initializer for the \refstruct{pmix_data_array_t} fields. -\versionMarker{4.2} +\versionMarker{5.0} \cspecificstart \begin{codepar} PMIX_DATA_ARRAY_STATIC_INIT diff --git a/Chap_Terms.tex b/Chap_Terms.tex index 9dbd352d..9ae6f5e1 100644 --- a/Chap_Terms.tex +++ b/Chap_Terms.tex @@ -30,7 +30,7 @@ \chapter{PMIx Terms and Conventions} \item \declareterm{job} refers to a set of one or more \emph{applications} executed as a single invocation by the user within a session with a unique identifier, the \emph{job ID}, assigned by the \ac{RM} or launcher. For example, the command line ``\textit{mpiexec -n 1 app1 : -n 2 app2}'' generates a single \ac{MPMD} job containing two applications. A user may execute multiple \emph{jobs} within a given session, either sequentially or concurrently. -\item \declareterm{namespace} refers to a character string value assigned by the \ac{RM} to a \textit{job}. All \textit{applications} executed as part of that \textit{job} share the same \emph{namespace}. The \emph{namespace} assigned to each \emph{job} must be unique within the scope of the governing \ac{RM} and often is implemented as a string representation of the numerical emph{Job ID}. The \emph{namespace} and \emph{job} terms will be used interchangeably throughout the document. +\item \declareterm{namespace} refers to a character string value assigned by the \ac{RM} to a \textit{job}. All \textit{applications} executed as part of that \textit{job} share the same \emph{namespace}. The \emph{namespace} assigned to each \emph{job} must be unique within the scope of the governing \ac{RM} and often is implemented as a string representation of the numerical \emph{Job ID}. The \emph{namespace} and \emph{job} terms will be used interchangeably throughout the document. \item \declareterm{application} represents a set of identical, but not necessarily unique, execution contexts within a \emph{job}. @@ -165,4 +165,4 @@ \section{Procedure Conventions} Many \ac{PMIx} interfaces, particularly nonblocking interfaces, use a \code{(void*)} callback data object passed to the function that is then passed to the associated callback. On the client side, the callback data object is an opaque, client-provided context that the client can pass to a non-blocking call. When the nonblocking call completes, the callback data object is passed back to the client without modification by the \ac{PMIx} library, thus allowing the client to associate a context with that callback. This is useful if there are many outstanding nonblocking calls. -A similar model is used for the server module functions (see \ref{server:module_fns}). In this case, the \ac{PMIx} library is making an upcall into its host via the \ac{PMIx} server module callback function and passing a specific callback function pointer and callback data object. The \ac{PMIx} library expects the host to call the cbfunc with the necessary arguments and pass back the original callback data obect upon completing the operation. This gives the server-side \ac{PMIx} library the ability to associate a context with the call back (since multiple operations may be outstanding). The host has no visibility into the contents of the callback data object object, nor is permitted to alter it in any way. +A similar model is used for the server module functions (see \ref{server:module_fns}). In this case, the \ac{PMIx} library is making an upcall into its host via the \ac{PMIx} server module callback function and passing a specific callback function pointer and callback data object. The \ac{PMIx} library expects the host to call the cbfunc with the necessary arguments and pass back the original callback data obect upon completing the operation. This gives the server-side \ac{PMIx} library the ability to associate a context with the callback (since multiple operations may be outstanding). The host has no visibility into the contents of the callback data object object, nor is permitted to alter it in any way.