Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v5: Sync provisional/errata from v4 #396

Merged
merged 12 commits into from
Apr 12, 2022
56 changes: 55 additions & 1 deletion Chap_API_Data_Mgmt.tex
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,20 @@ \section{Support Macros}

\ac{PMIx} provides a set of convenience macros for creating, initiating, and releasing data buffers.

%%%%
\littleheader{Static initializer for the data buffer structure}
\declaremacroProvisional{PMIX_DATA_BUFFER_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_data_buffer_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_DATA_BUFFER_STATIC_INIT
\end{codepar}
\cspecificend


%%%%%%%%%%%
\littleheader{\code{PMIX_DATA_BUFFER_CREATE}}
\declaremacro{PMIX_DATA_BUFFER_CREATE}
Expand Down Expand Up @@ -543,7 +557,7 @@ \subsection{\code{PMIx_Data_decompress}}
\begin{codepar}
bool
PMIx_Data_decompress(const uint8_t *inbytes, size_t size,
uint8_t **outbytes, size_t *nbytes,);
uint8_t **outbytes, size_t *nbytes);
\end{codepar}
\cspecificend

Expand Down Expand Up @@ -574,3 +588,43 @@ \subsection{\code{PMIx_Data_decompress}}
unexpected and potentially catastrophic results.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\subsection{\code{PMIx_Data_embed}}
\declareapiProvisional{PMIx_Data_embed}

%%%%
\summary

Embed a data payload into a buffer

%%%%
\format

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
pmix_status_t
PMIx_Data_embed(pmix_data_buffer_t *buffer,
const pmix_byte_object_t *payload);
\end{codepar}
\cspecificend

\begin{arglist}
\argout{buffer}{Address of the buffer where the payload is to be embedded (handle)}
\argin{payload}{Address of the \refstruct{pmix_byte_object_t} structure containing the data to be embedded into the buffer (handle)}
\end{arglist}

Returns one of the following:
\begin{constantdesc}
\item \refconst{PMIX_SUCCESS} The data has been embedded as requested
\item \refconst{PMIX_ERR_BAD_PARAM} The destination and/or source pointer is \code{NULL}
\item \refconst{PMIX_ERR_NOT_SUPPORTED} The \ac{PMIx} implementation does not support this function.
\end{constantdesc}

%%%%
\descr

The embed function is identical in operation to \refapi{PMIx_Data_load}
except that it does \emph{not} clear the payload object upon completion.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
56 changes: 56 additions & 0 deletions Chap_API_Fabric.tex
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,20 @@ \subsection{Fabric endpoint support macros}

The following macros are provided to support the \refstruct{pmix_endpoint_t} structure.

%%%%
\littleheader{Static initializer for the endpoint structure}
\declaremacroProvisional{PMIX_ENDPOINT_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_endpoint_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_ENDPOINT_STATIC_INIT
\end{codepar}
\cspecificend


%%%%
\littleheader{Initialize the endpoint structure}
\declaremacro{PMIX_ENDPOINT_CONSTRUCT}
Expand Down Expand Up @@ -210,6 +224,20 @@ \subsection{Fabric coordinate support macros}

The following macros are provided to support the \refstruct{pmix_coord_t} structure.

%%%%
\littleheader{Static initializer for the coord structure}
\declaremacroProvisional{PMIX_COORD_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_coord_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_COORD_STATIC_INIT
\end{codepar}
\cspecificend


%%%%
\littleheader{Initialize the coord structure}
\declaremacro{PMIX_COORD_CONSTRUCT}
Expand Down Expand Up @@ -300,6 +328,20 @@ \subsection{Fabric geometry support macros}

The following macros are provided to support the \refstruct{pmix_geometry_t} structure.

%%%%
\littleheader{Static initializer for the geometry structure}
\declaremacroProvisional{PMIX_GEOMETRY_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_geometry_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_GEOMETRY_STATIC_INIT
\end{codepar}
\cspecificend


%%%%
\littleheader{Initialize the geometry structure}
\declaremacro{PMIX_GEOMETRY_CONSTRUCT}
Expand Down Expand Up @@ -493,6 +535,20 @@ \subsection{Fabric registration structure}

\optattrend

%%%%
\subsubsection{Static initializer for the fabric structure}
\declaremacroProvisional{PMIX_FABRIC_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_fabric_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_FABRIC_STATIC_INIT
\end{codepar}
\cspecificend


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsubsection{Initialize the fabric structure}
\declaremacro{PMIX_FABRIC_CONSTRUCT}
Expand Down
76 changes: 76 additions & 0 deletions Chap_API_Proc_Mgmt.tex
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,9 @@ \subsection{\code{PMIx_Spawn}}
\pasteAttributeItem{PMIX_COSPAWN_APP}
\pasteAttributeItem{PMIX_SPAWN_TOOL}
\pasteAttributeItem{PMIX_EVENT_SILENT_TERMINATION}
\pasteAttributeItem{PMIX_ENVARS_HARVESTED}
\pasteAttributeItem{PMIX_JOB_TIMEOUT}
\pasteAttributeItem{PMIX_SPAWN_TIMEOUT}

\optattrend

Expand Down Expand Up @@ -285,6 +288,9 @@ \subsection{\code{PMIx_Spawn_nb}}
\pasteAttributeItem{PMIX_COSPAWN_APP}
\pasteAttributeItem{PMIX_SPAWN_TOOL}
\pasteAttributeItem{PMIX_EVENT_SILENT_TERMINATION}
\pasteAttributeItem{PMIX_ENVARS_HARVESTED}
\pasteAttributeItem{PMIX_JOB_TIMEOUT}
\pasteAttributeItem{PMIX_SPAWN_TIMEOUT}

\optattrend

Expand Down Expand Up @@ -320,6 +326,18 @@ \subsection{Spawn-specific constants}
\declareconstitemvalueNEW{PMIX_ERR_JOB_FAILED_TO_LAUNCH}{-181}
One or more processes in the job request failed to launch
%
\declareconstitemProvisional{PMIX_ERR_JOB_EXE_NOT_FOUND}
Specified executable not found
%
\declareconstitemProvisional{PMIX_ERR_JOB_INSUFFICIENT_RESOURCES}
Insufficient resources to spawn job
%
\declareconstitemProvisional{PMIX_ERR_JOB_SYS_OP_FAILED}
System library operation failed
%
\declareconstitemProvisional{PMIX_ERR_JOB_WDIR_NOT_FOUND}
Specified working directory not found
%
\end{constantdesc}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Expand Down Expand Up @@ -527,6 +545,22 @@ \subsection{Spawn attributes}
\declareAttribute{PMIX_EVENT_SILENT_TERMINATION}{"pmix.evsilentterm"}{bool}{
Do not generate an event when this job normally terminates.
}
%
\declareAttributeProvisional{PMIX_ENVARS_HARVESTED}{"pmix.evar.hvstd"}{bool}{
Environmental parameters have been harvested by the spawn requestor - the server
does not need to harvest them.
}
%
\declareAttributeProvisional{PMIX_JOB_TIMEOUT}{"pmix.job.time"}{int}{
Time in seconds before the spawned job should time out and be terminated (0 => infinite), defined as the total runtime of the job (equivalent to the walltime limit of typical batch schedulers).
}
%
\declareAttributeProvisional{PMIX_SPAWN_TIMEOUT}{"pmix.sp.time"}{int}{
Time in seconds before spawn operation should time out (0 => infinite).
Logically equivalent to passing the \refattr{PMIX_TIMEOUT} attribute to the
\refapi{PMIx_Spawn} \ac{API}, it is provided as a separate attribute to distinguish
it from the \refattr{PMIX_JOB_TIMEOUT} attribute
}

\vspace{\baselineskip}
Attributes used to adjust remote environment variables prior to spawning the specified application processes.
Expand Down Expand Up @@ -585,6 +619,20 @@ \subsection{Application Structure}
\subsubsection{App structure support macros}
The following macros are provided to support the \refstruct{pmix_app_t} structure.

%%%%
\littleheader{Static initializer for the app structure}
\declaremacroProvisional{PMIX_APP_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_app_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_APP_STATIC_INIT
\end{codepar}
\cspecificend


%%%%%%%%%%%
\littleheader{Initialize the app structure}
\declaremacro{PMIX_APP_CONSTRUCT}
Expand Down Expand Up @@ -1110,6 +1158,20 @@ \subsubsection{Topology support macros}

The following macros support the \refstruct{pmix_topology_t} structure.

%%%%
\littleheader{Static initializer for the topology structure}
\declaremacroProvisional{PMIX_TOPOLOGY_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_topology_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_TOPOLOGY_STATIC_INIT
\end{codepar}
\cspecificend


\littleheader{Initialize the topology structure}
\declaremacro{PMIX_TOPOLOGY_CONSTRUCT}

Expand Down Expand Up @@ -1505,6 +1567,20 @@ \subsection{Device distance support macros}

The following macros are provided to support the \refstruct{pmix_device_distance_t} structure.

%%%%
\littleheader{Static initializer for the device distance structure}
\declaremacroProvisional{PMIX_DEVICE_DIST_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_device_distance_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_DEVICE_DIST_STATIC_INIT
\end{codepar}
\cspecificend


%%%%
\littleheader{Initialize the device distance structure}
\declaremacro{PMIX_DEVICE_DIST_CONSTRUCT}
Expand Down
14 changes: 14 additions & 0 deletions Chap_API_Publish.tex
Original file line number Diff line number Diff line change
Expand Up @@ -414,6 +414,20 @@ \subsubsection{Lookup data structure support macros}

The following macros are provided to support the \refstruct{pmix_pdata_t} structure.

%%%%
\littleheader{Static initializer for the pdata structure}
\declaremacroProvisional{PMIX_LOOKUP_STATIC_INIT}

Provide a static initializer for the \refstruct{pmix_pdata_t} fields.

\versionMarker{4.2}
\cspecificstart
\begin{codepar}
PMIX_LOOKUP_STATIC_INIT
\end{codepar}
\cspecificend


\littleheader{Initialize the pdata structure}
\declaremacro{PMIX_PDATA_CONSTRUCT}

Expand Down
4 changes: 4 additions & 0 deletions Chap_API_Reserved_Keys.tex
Original file line number Diff line number Diff line change
Expand Up @@ -491,6 +491,10 @@ \subsection{Node realm keys}
\declareAttribute{PMIX_LOCAL_SIZE}{"pmix.local.size"}{uint32_t}{
Number of processes in the specified job or application realm on the caller's node. Defaults to job realm unless the \refattr{PMIX_APP_INFO} and the \refattr{PMIX_APPNUM} qualifiers are given.
}
%
\declareAttributeProvisional{PMIX_NODE_OVERSUBSCRIBED}{"pmix.ndosub"}{bool}{
True if the number of processes from this job on this node exceeds the number of slots allocated to it
}

\vspace{\baselineskip}

Expand Down
Loading