Bug-fix: waiting for ACKs for Active Target Synchronization.
The original implementation of FENCE and PSCW does not guarantee the remote completion of issued-out RMA operations when MPI_Win_complete and MPI_Win_fence returns. They only guarantee the local completion of issued-out operations and the completion of coming-in operations. This is not correct if we try to get updated values on target side using synchronizations with MPI_MODE_NOCHECK. Here we modify it by making runtime wait for ACKs from all targets before returning from MPI_Win_fence and MPI_Win_complete. Signed-off-by: Pavan Balaji <email@example.com>
Showing with 53 additions and 8 deletions