Skip to content

Commit

Permalink
Capturing a few updates that need to be made
Browse files Browse the repository at this point in the history
Signed-off-by: James Dinan <[email protected]>
  • Loading branch information
jdinan committed Apr 26, 2024
1 parent f0545bd commit e5d2493
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 17 deletions.
13 changes: 0 additions & 13 deletions content/backmatter.tex
Original file line number Diff line number Diff line change
Expand Up @@ -143,19 +143,6 @@ \chapter{Undefined Behavior in OpenSHMEM}\label{sec:undefined}
immediately upon an \openshmem call into the uninitialized library.
\tabularnewline
\hline
Multiple calls to initialization routines & In an \openshmem program where
the initialization routines \FUNC{shmem\_init} or \FUNC{shmem\_init\_thread}
have already been called, any subsequent calls to these initialization routines
result in undefined behavior.
\tabularnewline
\hline
Specifying invalid \ac{PE} numbers & For \openshmem routines that accept a
\ac{PE} number as an argument, if the \ac{PE} number is invalid for the
team associated with the operation (either implicitly or explicitly), the
behavior is undefined. An invalid \ac{PE} number includes those that are
negative or greater than or equal to the size of the associated team.
\tabularnewline
\hline
Use of non-symmetric variables & Some routines require remotely accessible
variables to perform their function. For example, a \PUT{} to a non-symmetric variable may
be trapped where possible and the library may abort the program. Another
Expand Down
8 changes: 4 additions & 4 deletions content/execution_model.tex
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@
other \openshmem library routines.
An \openshmem program concludes its use of the \openshmem library when all \acp{PE} call
\FUNC{shmem\_finalize} or any \ac{PE} calls \FUNC{shmem\_global\_exit}.
During a call to \FUNC{shmem\_finalize}, the \openshmem library must
During the last call to \FUNC{shmem\_finalize}, the \openshmem library must
complete all pending communication and release all the resources associated to
the library using an implicit collective synchronization across \acp{PE}.
Calling any \openshmem routine before initialization or after
\FUNC{shmem\_finalize} leads to undefined behavior. After finalization, a
subsequent initialization call also leads to undefined behavior.
%% FIXME: SHMEM allocated memory can't be freed until the last finalization call
%% FIXME: Does the non-last call to finalize include an implicit synchronization
%% FIXME: These semantics need to be moved to the finalize function definition

The \acp{PE} of the \openshmem program are identified by unique integers. The
identifiers are integers assigned in a monotonically increasing manner from zero
Expand Down

0 comments on commit e5d2493

Please sign in to comment.