From b3b04c031a0b5ce6e31fb7d2f208338a32db7fa1 Mon Sep 17 00:00:00 2001 From: ferrol aderholdt Date: Wed, 31 Jan 2024 14:42:14 -0800 Subject: [PATCH 1/3] Add Clarification of Progress Model --- content/execution_model.tex | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/content/execution_model.tex b/content/execution_model.tex index a1ea1a69e..3c73f4e1b 100644 --- a/content/execution_model.tex +++ b/content/execution_model.tex @@ -32,13 +32,20 @@ \subsection{Progress of OpenSHMEM Operations}\label{subsec:progress} The \openshmem model assumes that computation and communication are naturally overlapped. \openshmem programs are expected to exhibit progression of -communication both with and without \openshmem calls. Consider a \ac{PE} that is +communication both with and without \openshmem calls. For point-to-point +operations, consider a \ac{PE} that is engaged in a computation with no \openshmem calls. Other \acp{PE} should be able to communicate (e.g., \OPR{put}, \OPR{get}, \OPR{atomic}, etc.) and complete communication operations with that computationally-bound \ac{PE} without that \ac{PE} issuing any explicit \openshmem calls. One-sided \openshmem communication calls involving that \ac{PE} should progress regardless of when -that \ac{PE} next engages in an \openshmem call. +that \ac{PE} next engages in an \openshmem call. Similarly, +for non-blocking collectives, consider the \acp{PE} that are part of a team +issuing a non-blocking collective and overlapping collective completion with +computation. Once a non-blocking collective operation is initiated by +all of the \acp{PE} in the team of the collective, any \ac{PE} in the team must +eventually observe completion through a call to \FUNC{shmem\_req\_test} or +\FUNC{shmem\_req\_wait}. \parimpnotes{ An \openshmem implementation for hardware that does not provide From 1d5d49db389111c3a968200c345cc67add4fcfb0 Mon Sep 17 00:00:00 2001 From: ferrol aderholdt Date: Thu, 11 Apr 2024 23:52:29 -0700 Subject: [PATCH 2/3] Separate test and wait --- content/execution_model.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/execution_model.tex b/content/execution_model.tex index 3c73f4e1b..3b76c46e7 100644 --- a/content/execution_model.tex +++ b/content/execution_model.tex @@ -44,8 +44,8 @@ \subsection{Progress of OpenSHMEM Operations}\label{subsec:progress} issuing a non-blocking collective and overlapping collective completion with computation. Once a non-blocking collective operation is initiated by all of the \acp{PE} in the team of the collective, any \ac{PE} in the team must -eventually observe completion through a call to \FUNC{shmem\_req\_test} or -\FUNC{shmem\_req\_wait}. +eventually observe completion through at least one call to +\FUNC{shmem\_req\_test} or a call to \FUNC{shmem\_req\_wait}. \parimpnotes{ An \openshmem implementation for hardware that does not provide From 58569d6fa4ae36d894d7be6aa6f4f21a4c5077f2 Mon Sep 17 00:00:00 2001 From: ferrol aderholdt Date: Mon, 29 Apr 2024 23:11:37 -0700 Subject: [PATCH 3/3] Update based on committee feedback --- content/execution_model.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/execution_model.tex b/content/execution_model.tex index 3b76c46e7..0faa54e45 100644 --- a/content/execution_model.tex +++ b/content/execution_model.tex @@ -44,8 +44,8 @@ \subsection{Progress of OpenSHMEM Operations}\label{subsec:progress} issuing a non-blocking collective and overlapping collective completion with computation. Once a non-blocking collective operation is initiated by all of the \acp{PE} in the team of the collective, any \ac{PE} in the team must -eventually observe completion through at least one call to -\FUNC{shmem\_req\_test} or a call to \FUNC{shmem\_req\_wait}. +eventually observe completion through a call to \FUNC{shmem\_req\_test} or a +call to \FUNC{shmem\_req\_wait}. \parimpnotes{ An \openshmem implementation for hardware that does not provide