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

"Remote PE" fixes #24

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions content/memory_model.tex
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
by the \ac{PE} itself; these data objects cannot be accessed by other \acp{PE}
via \openshmem routines. Private data objects follow the memory model of
\Cstd. Remotely accessible objects, however, can be accessed by
remote \acp{PE} using \openshmem routines. Remotely accessible data objects are
target \acp{PE} using \openshmem routines. Remotely accessible data objects are
called \emph{Symmetric Data Objects}. Each symmetric data object has a
corresponding object with the same name, type, and size on all \acp{PE} where that object is
accessible via the \openshmem \ac{API}\footnote{For efficiency reasons,
Expand Down Expand Up @@ -72,7 +72,7 @@ \subsection{Pointers to Symmetric Objects}\label{subsec:pointers_to_symmetric_ob
requirements.

The \FUNC{shmem\_ptr} and \FUNC{shmem\_team\_ptr} routines allow the application to query a {\em local
address} to a remotely accessible data object at a specified \ac{PE}. The
address} to a remotely accessible data object at a specified target \ac{PE}. The
resulting pointer is valid for direct memory access; however, providing this
address as an argument of an \openshmem routine that requires a symmetric
address results in undefined behavior.
Expand Down
38 changes: 19 additions & 19 deletions content/programming_model_overview.tex
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
the \ac{PE} initiating the operation) and remotely accessible data objects. The key
feature of \openshmem is that data transfer operations are
\emph{one-sided} in nature. This means that a local \ac{PE} executing
a data transfer routine does not require the participation of the remote \ac{PE}
a data transfer routine does not require the participation of the target \ac{PE}
to complete the routine. This allows for overlap between communication and
computation to hide data transfer latencies, which makes \openshmem ideal for
unstructured, small-to-medium-sized data communication patterns. The \openshmem
Expand Down Expand Up @@ -35,10 +35,10 @@
where the \acp{PE} are either single or multithreaded.
\item \OPR{Query}: The local \ac{PE} may get the number of \acp{PE} running
the same program and its unique integer identifier.
\item \OPR{Accessibility}: The local \ac{PE} can find out if a remote \ac{PE} is
\item \OPR{Accessibility}: The local \ac{PE} can find out if a target \ac{PE} is
executing the same binary, or if a particular symmetric data object can be
accessed by a remote \ac{PE}, or may obtain a pointer to a symmetric data
object on the specified remote \ac{PE} on shared memory systems.
accessed by a target \ac{PE}, or may obtain a pointer to a symmetric data
object on the specified target \ac{PE} on shared memory systems.
\end{enumerate}

\item \textbf{Symmetric Data Object Management}
Expand All @@ -65,7 +65,7 @@
\acp{PE}. Teams are involved in both collective and point-to-point
communication operations. Collective communication operations are performed
on all \acp{PE} in a valid team and point-to-point communication operations
are performed between a local and remote \ac{PE} with team-based \ac{PE}
are performed between a local and target \ac{PE} with team-based \ac{PE}
numbering through team-based contexts.
\end{enumerate}

Expand All @@ -82,43 +82,43 @@
\item \textbf{\acfp{AMO}}
\begin{enumerate}
\item \OPR{Fetch}: The \ac{PE} initiating the fetch returns the value of the
symmetric data object on the remote \ac{PE}.
symmetric data object on the target \ac{PE}.
\item \OPR{Set}: The \ac{PE} initiating the set copies a new value to the
symmetric data object on the remote \ac{PE}.
symmetric data object on the target \ac{PE}.
\item \OPR{Swap}: The \ac{PE} initiating the swap copies a new value to the
symmetric data object on the remote \ac{PE} and returns the old value.
symmetric data object on the target \ac{PE} and returns the old value.
\item \OPR{Increment}: The \ac{PE} initiating the increment adds 1 to the
symmetric data object on the remote \ac{PE}.
symmetric data object on the target \ac{PE}.
\item \OPR{Add}: The \ac{PE} initiating the add specifies the value to be added
to the symmetric data object on the remote \ac{PE}.
to the symmetric data object on the target \ac{PE}.
\item \OPR{Bitwise Operations}: The \ac{PE} initiating the bitwise
operation specifies the operand value to the bitwise operation to be
performed on the symmetric data object on the remote \ac{PE}.
performed on the symmetric data object on the target \ac{PE}.
\item \OPR{Compare and Swap}: The \ac{PE} initiating the compare and swap
conditionally copies a new value to the symmetric data object on the
remote \ac{PE} and returns the old value.
target \ac{PE} and returns the old value.
\item \OPR{Fetch and Increment}: The \ac{PE} initiating the increment adds 1
to the symmetric data object on the remote \ac{PE} and returns the old
to the symmetric data object on the target \ac{PE} and returns the old
value.
\item \OPR{Fetch and Add}: The \ac{PE} initiating the add specifies the value to
be added to the symmetric data object on the remote \ac{PE} and returns
be added to the symmetric data object on the target \ac{PE} and returns
the old value.
\item \OPR{Fetch and Bitwise Operations}: The \ac{PE} initiating the bitwise
operation specifies the operand value to the bitwise operation to be
performed on the symmetric data object on the remote \ac{PE}
performed on the symmetric data object on the target \ac{PE}
and returns the old value.
\end{enumerate}

\item \textbf{Signaling Operations}
\begin{enumerate}
\item \OPR{Put Signal}: The local \ac{PE} specifies the \source{} data object
to be copied to the symmetric data object on the remote \ac{PE} and
another symmetric data object on the remote \ac{PE} is subsequently
to be copied to the symmetric data object on the target \ac{PE} and
another symmetric data object on the target \ac{PE} is subsequently
updated to signal completion.
\item \OPR{Signal Add}: The local \ac{PE} specifies a value to be added to
the symmetric data object on the remote \ac{PE}.
the symmetric data object on the target \ac{PE}.
\item \OPR{Signal Set}: The local \ac{PE} specifies a value to be copied to
the symmetric data object on the remote \ac{PE}.
the symmetric data object on the target \ac{PE}.
\item \OPR{Signal Fetch}: The local \ac{PE} returns the value of a local data
object.
\end{enumerate}
Expand Down
10 changes: 5 additions & 5 deletions content/shmem_addr_accessible.tex
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
\apisummary{
Determines whether an address is accessible via \openshmem data transfer
routines from the specified remote \ac{PE}.
routines from the specified target \ac{PE}.
}

\begin{apidefinition}
Expand All @@ -11,24 +11,24 @@

\begin{apiarguments}
\apiargument{IN}{addr}{Local address of data object to query.}
\apiargument{IN}{pe}{Integer id of a remote \ac{PE}.}
\apiargument{IN}{pe}{Integer id of a target \ac{PE}.}
\end{apiarguments}

\apidescription{
\FUNC{shmem\_addr\_accessible} is a query routine that indicates whether
the address \VAR{addr} can be used to access the given data object on the
specified \ac{PE} via \openshmem routines.
specified target \ac{PE} via \openshmem routines.

This routine verifies that the data object is symmetric and accessible with
respect to a remote \ac{PE} via \openshmem data transfer routines. The
respect to a target \ac{PE} via \openshmem data transfer routines. The
specified address \VAR{addr} is the local address of the data object on the
local \ac{PE}.
}

\apireturnvalues{
The return value is \CONST{1} if the local address \VAR{addr} is also a symmetric
address and the given data object is accessible via \openshmem routines on
the specified remote \ac{PE}; otherwise, it is \CONST{0}.
the specified target \ac{PE}; otherwise, it is \CONST{0}.
}

\apinotes{
Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_add.tex
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the atomic add operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_and.tex
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the bitwise AND operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
6 changes: 3 additions & 3 deletions content/shmem_atomic_compare_swap.tex
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,15 @@
unchanged. In either case, the old value of the remote \VAR{dest} is
returned as the routine return value. \VAR{cond} must be of the same data
type as \VAR{dest}.}
\apiargument{IN}{value}{The value to be atomically written to the remote \ac{PE}.
\apiargument{IN}{value}{The value to be atomically written to the target \ac{PE}.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

\apidescription{
The conditional swap routines conditionally update a \VAR{dest} data object on
the specified \ac{PE} and return the prior contents of the data object in one
the specified target \ac{PE} and return the prior contents of the data object in one
atomic operation.
}

Expand Down
6 changes: 3 additions & 3 deletions content/shmem_atomic_compare_swap_nbi.tex
Original file line number Diff line number Diff line change
Expand Up @@ -35,20 +35,20 @@
\apiargument{IN}{value}{The value to be atomically written to the remote
\ac{PE}.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

\apidescription{
The nonblocking conditional swap routines conditionally update a \VAR{dest}
data object on the specified \ac{PE} as an atomic operation and fetches the prior contents of the
data object on the specified target \ac{PE} as an atomic operation and fetches the prior contents of the
\VAR{dest} data object into the \VAR{fetch} local data object.
This routine returns after initiating the operation. The operation
is considered complete after a subsequent call to \FUNC{shmem\_quiet}. At the
completion of \FUNC{shmem\_quiet}, prior contents of the \VAR{dest} data
object have been fetched into \VAR{fetch} local data object and the
contents of \VAR{value} have been conditionally updated into \VAR{dest} on the
remote \ac{PE}.
target \ac{PE}.
}

\apireturnvalues{
Expand Down
4 changes: 2 additions & 2 deletions content/shmem_atomic_fetch.tex
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
the default context.}
\apiargument{IN}{source}{Symmetric address of the source data object.
The type of \source{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} on which \VAR{source} resides
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} on which \VAR{source} resides
relative to the team associated with the given \VAR{ctx} when provided, or the
default context otherwise.}
\end{apiarguments}
Expand All @@ -51,7 +51,7 @@
}

\apireturnvalues{
The contents at the \VAR{source} address on the remote \ac{PE}.
The contents at the \VAR{source} address on the target \ac{PE}.
The data type of the return value is the same as the type of
the remote data object.
}
Expand Down
4 changes: 2 additions & 2 deletions content/shmem_atomic_fetch_add.tex
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the atomic fetch-and-add operation. The
type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand All @@ -55,7 +55,7 @@
}

\apireturnvalues{
The contents that had been at the \VAR{dest} address on the remote \ac{PE}
The contents that had been at the \VAR{dest} address on the target \ac{PE}
prior to the atomic addition operation. The data type of the return value is
the same as the \VAR{dest}.
}
Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_add_nbi.tex
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the atomic fetch-and-add operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_and.tex
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the bitwise AND operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_and_nbi.tex
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the bitwise AND operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
4 changes: 2 additions & 2 deletions content/shmem_atomic_fetch_inc.tex
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
the default context.}
\apiargument{OUT}{dest}{Symmetric address of the destination data object.
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand All @@ -50,7 +50,7 @@
}

\apireturnvalues{
The contents that had been at the \dest{} address on the remote \ac{PE} prior to
The contents that had been at the \dest{} address on the target \ac{PE} prior to
the increment. The data type of the return value is the same as the \dest.
}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_inc_nbi.tex
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
The type of \VAR{fetch} should match that implied in the SYNOPSIS section.}
\apiargument{OUT}{dest}{Symmetric address of the destination data object.
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_nbi.tex
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
The type of \VAR{fetch} should match that implied in the SYNOPSIS section.}
\apiargument{OUT}{source}{Symmetric address of the source data object.
The type of \source{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_or.tex
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the bitwise OR operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_or_nbi.tex
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the bitwise OR operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_xor.tex
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the bitwise XOR operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_fetch_xor_nbi.tex
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the bitwise XOR operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_inc.tex
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
the default context.}
\apiargument{OUT}{dest}{Symmetric address of the destination data object.
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_or.tex
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the bitwise OR operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
2 changes: 1 addition & 1 deletion content/shmem_atomic_set.tex
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
The type of \dest{} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{value}{The operand to the atomic set operation.
The type of \VAR{value} should match that implied in the SYNOPSIS section.}
\apiargument{IN}{pe}{\ac{PE} number of the remote \ac{PE} relative to the team associated
\apiargument{IN}{pe}{\ac{PE} number of the target \ac{PE} relative to the team associated
with the given \VAR{ctx} when provided, or the default context otherwise.}
\end{apiarguments}

Expand Down
Loading