[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1.3-65-g6e8bc70

Service Account noreply at mpich.org
Fri Oct 31 13:42:41 CDT 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MPICH primary repository".

The branch, master has been updated
       via  6e8bc706ec866096809047a25c09781e3788a6c7 (commit)
      from  818438fcaff31b76682925e5c1ada517466c528e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.mpich.org/mpich.git/commitdiff/6e8bc706ec866096809047a25c09781e3788a6c7

commit 6e8bc706ec866096809047a25c09781e3788a6c7
Author: Min Si <msi at il.is.s.u-tokyo.ac.jp>
Date:   Fri Oct 31 10:27:47 2014 -0500

    Bug-fix: use normal PUT/ACC + FLUSH in req ops test.
    
    In reqops.c, the ring communication test assumes remote
    completion after MPI_RPut/MPI_Racc + MPI_Wait, which
    is not correct. MPI_Wait only guarantees local completion.
    
    Here we fixed it by replace MPI_Rput/MPI_Racc + MPI_Wait
    with MPI_Put/MPI_Acc + MPI_Win_flush.
    
    Signed-off-by: Xin Zhao <xinzhao3 at illinois.edu>

diff --git a/test/mpi/rma/reqops.c b/test/mpi/rma/reqops.c
index ef2636f..36ef18e 100644
--- a/test/mpi/rma/reqops.c
+++ b/test/mpi/rma/reqops.c
@@ -114,9 +114,9 @@ int main( int argc, char *argv[] )
         assert(req != MPI_REQUEST_NULL);
         MPI_Wait(&req, MPI_STATUS_IGNORE);
 
-        MPI_Rput(&rank, 1, MPI_INT, 0, 0, 1, MPI_INT, window, &req);
-        assert(req != MPI_REQUEST_NULL);
-        MPI_Wait(&req, MPI_STATUS_IGNORE);
+        /* Use flush to guarantee remote completion */
+        MPI_Put(&rank, 1, MPI_INT, 0, 0, 1, MPI_INT, window);
+        MPI_Win_flush(0, window);
 
         exp = (rank + nproc-1) % nproc;
 
@@ -153,9 +153,9 @@ int main( int argc, char *argv[] )
         assert(req != MPI_REQUEST_NULL);
         MPI_Wait(&req, MPI_STATUS_IGNORE);
 
-        MPI_Raccumulate(&rank, 1, MPI_INT, 0, 0, 1, MPI_INT, MPI_REPLACE, window, &req);
-        assert(req != MPI_REQUEST_NULL);
-        MPI_Wait(&req, MPI_STATUS_IGNORE);
+        /* Use flush to guarantee remote completion */
+        MPI_Accumulate(&rank, 1, MPI_INT, 0, 0, 1, MPI_INT, MPI_REPLACE, window);
+        MPI_Win_flush(0, window);
 
         exp = (rank + nproc-1) % nproc;
 

-----------------------------------------------------------------------

Summary of changes:
 test/mpi/rma/reqops.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list