[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.2b3-225-gc0feced

Service Account noreply at mpich.org
Mon Jul 13 15:45:53 CDT 2015


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  c0feceddc9b281fcac62078053f82a1e19c9a903 (commit)
       via  f282ffa24620b482c36b61c382d68c76325451b4 (commit)
       via  011038e11648991f1956982cb54ca6b29f367c58 (commit)
      from  8be270a824196a782f1bdb238116dfbbeb0be79c (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/c0feceddc9b281fcac62078053f82a1e19c9a903

commit c0feceddc9b281fcac62078053f82a1e19c9a903
Author: Lena Oden <loden at anl.gov>
Date:   Sun Jul 12 18:01:13 2015 -0500

    Bugfix for MPI_Iallgather for intercommunicators.
    
     This Fixes Iallgather for inter-communicators. It is wrong
     to alias-checking for inter-communicators, since the local
     and the destination group in inter-communicators are not
     the same and the processes never sends messages to itself
     using an inter-communicator.
    
    Fixes #2284
    
    Signed-off-by: Huiwei Lu <huiweilu at mcs.anl.gov>

diff --git a/src/mpi/coll/iallgather.c b/src/mpi/coll/iallgather.c
index 1e0eb10..c89f98b 100644
--- a/src/mpi/coll/iallgather.c
+++ b/src/mpi/coll/iallgather.c
@@ -718,7 +718,7 @@ int MPI_Iallgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
             MPIR_ERRTEST_ARGNULL(request,"request", mpi_errno);
 
             /* catch common aliasing cases */
-            if (recvbuf != MPI_IN_PLACE && sendtype == recvtype && sendcount == recvcount && sendcount != 0) {
+            if (comm_ptr->comm_kind == MPID_INTRACOMM && recvbuf != MPI_IN_PLACE && sendtype == recvtype && sendcount == recvcount && sendcount != 0) {
                 int recvtype_size;
                 MPID_Datatype_get_size_macro(recvtype, recvtype_size);
                 MPIR_ERRTEST_ALIAS_COLL(sendbuf, (char*)recvbuf + comm_ptr->rank*recvcount*recvtype_size, mpi_errno);

http://git.mpich.org/mpich.git/commitdiff/f282ffa24620b482c36b61c382d68c76325451b4

commit f282ffa24620b482c36b61c382d68c76325451b4
Author: Lena Oden <loden at anl.gov>
Date:   Sun Jul 12 17:58:44 2015 -0500

    Bugfix for MPI_Ibarrier for inter_communicators
    
    MPI_Ibarrier for inter-communicators fails because
    of a wrong condition check. In MPIR_Ibarrier_impl,
    checking “comm_ptr->local_size != 1” is used for
    speeding up MPI_Ibarrier for intra-communicators.
    However, for inter-communicators, this prevents the
    barrier to synchronize with the remote group and
    cause hang. An inter-communicator still have to
    synchronize with the remote group, even is the local
    size is one.
    
    In the patch, checking “local_size != 1” is now moved to
    the MPIR_Ibarrier_inter when doing local sync.
    
    Refs #2284
    
    Signed-off-by: Huiwei Lu <huiweilu at mcs.anl.gov>

diff --git a/src/mpi/coll/ibarrier.c b/src/mpi/coll/ibarrier.c
index 2763e95..defcb74 100644
--- a/src/mpi/coll/ibarrier.c
+++ b/src/mpi/coll/ibarrier.c
@@ -115,11 +115,11 @@ int MPIR_Ibarrier_inter(MPID_Comm *comm_ptr, MPID_Sched_t s)
 
     /* do a barrier on the local intracommunicator */
     MPIU_Assert(comm_ptr->local_comm->coll_fns && comm_ptr->local_comm->coll_fns->Ibarrier_sched);
-    mpi_errno = comm_ptr->local_comm->coll_fns->Ibarrier_sched(comm_ptr->local_comm, s);
-    if (mpi_errno) MPIU_ERR_POP(mpi_errno);
-
-    MPID_SCHED_BARRIER(s);
-
+    if(comm_ptr->local_size != 1) {
+        mpi_errno = comm_ptr->local_comm->coll_fns->Ibarrier_sched(comm_ptr->local_comm, s);
+        if (mpi_errno) MPIU_ERR_POP(mpi_errno);
+        MPID_SCHED_BARRIER(s);
+    }
     /* rank 0 on each group does an intercommunicator broadcast to the
        remote group to indicate that all processes in the local group
        have reached the barrier. We do a 1-byte bcast because a 0-byte
@@ -190,7 +190,7 @@ int MPIR_Ibarrier_impl(MPID_Comm *comm_ptr, MPI_Request *request)
         /* --END USEREXTENSION-- */
     }
 
-    if (comm_ptr->local_size != 1) {
+    if (comm_ptr->local_size != 1 || comm_ptr->comm_kind == MPID_INTERCOMM) {
         mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
         if (mpi_errno) MPIU_ERR_POP(mpi_errno);
         mpi_errno = MPID_Sched_create(&s);

http://git.mpich.org/mpich.git/commitdiff/011038e11648991f1956982cb54ca6b29f367c58

commit 011038e11648991f1956982cb54ca6b29f367c58
Author: Lena Oden <loden at anl.gov>
Date:   Thu Jul 9 12:43:23 2015 -0500

    Add test for non-blocking collectives for intercom
    
    Modify the intercom-tests so they also test nb-
    collectives for inter-communicators
    
    Signed-off-by: Huiwei Lu <huiweilu at mcs.anl.gov>

diff --git a/test/mpi/coll/Makefile.am b/test/mpi/coll/Makefile.am
index b668e6b..06f1270 100644
--- a/test/mpi/coll/Makefile.am
+++ b/test/mpi/coll/Makefile.am
@@ -107,8 +107,20 @@ noinst_PROGRAMS =      \
     nbredscat          \
     nbredscat3	       \
     nbredscatinter     \
-    nbcoll2            
-
+    nbcoll2            \
+    nbicbarrier        \
+    nbicallgather      \
+    nbicallgatherv     \
+    nbicallreduce      \
+    nbicbcast          \
+    nbicalltoall       \
+    nbicalltoallw      \
+    nbicalltoallv      \
+    nbicgather         \
+    nbicgatherv        \
+    nbicreduce         \
+    nbicscatter        \
+    nbicscatterv
 allgatherv4_LDADD = $(LDADD) -lm
 
 bcast_full_SOURCES = bcast.c
@@ -131,3 +143,36 @@ nbredscatinter_CPPFLAGS     = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
 nbcoll2_SOURCES = coll2.c
 nbcoll2_CPPFLAGS   = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
 
+nbicbarrier_SOURCES = icbarrier.c
+nbicbarrier_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+
+nbicallgather_SOURCES = icallgather.c
+nbicallgather_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+nbicallgatherv_SOURCES = icallgatherv.c
+nbicallgatherv_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+
+nbicallreduce_SOURCES = icallreduce.c
+nbicallreduce_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+
+nbicalltoall_SOURCES = icalltoall.c
+nbicalltoall_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+nbicalltoallv_SOURCES = icalltoallv.c
+nbicalltoallv_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+nbicalltoallw_SOURCES = icalltoallw.c
+nbicalltoallw_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+
+nbicbcast_SOURCES = icbcast.c
+nbicbcast_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+
+nbicgather_SOURCES = icgather.c
+nbicgather_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+nbicgatherv_SOURCES = icgatherv.c
+nbicgatherv_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+
+nbicreduce_SOURCES = icreduce.c
+nbicreduce_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+
+nbicscatter_SOURCES = icscatter.c
+nbicscatter_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
+nbicscatterv_SOURCES = icscatterv.c
+nbicscatterv_CPPFLAGS = -DUSE_MTEST_NBC $(AM_CPPFLAGS)
diff --git a/test/mpi/coll/icallgather.c b/test/mpi/coll/icallgather.c
index 987e01a..04bef4b 100644
--- a/test/mpi/coll/icallgather.c
+++ b/test/mpi/coll/icallgather.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm allgather test";
@@ -46,8 +47,8 @@ int main( int argc, char *argv[] )
 	    else {
 		for (i=0; i<count; i++)       sbuf[i] = -(i + rank*count);
 	    }
-	    err = MPI_Allgather( sbuf, count, datatype,
-				 rbuf, count, datatype, comm );
+	    err = MTest_Allgather(sbuf, count, datatype,
+				 rbuf, count, datatype, comm);
 	    if (err) {
 		errs++;
 		MTestPrintError( err );
@@ -70,8 +71,8 @@ int main( int argc, char *argv[] )
 	    /* Use Allgather in a unidirectional way */
 	    for (i=0; i<count*rsize; i++) rbuf[i] = -1;
 	    if (leftGroup) {
-		err = MPI_Allgather( sbuf, 0, datatype,
-				     rbuf, count, datatype, comm );
+		err = MTest_Allgather(sbuf, 0, datatype,
+				     rbuf, count, datatype, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -83,8 +84,8 @@ int main( int argc, char *argv[] )
 		}
 	    }
 	    else {
-		err = MPI_Allgather( sbuf, count, datatype,
-				     rbuf, 0, datatype, comm );
+		err = MTest_Allgather(sbuf, count, datatype,
+				     rbuf, 0, datatype, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/icallgatherv.c b/test/mpi/coll/icallgatherv.c
index a720ed4..8d17f32 100644
--- a/test/mpi/coll/icallgatherv.c
+++ b/test/mpi/coll/icallgatherv.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm allgatherv test";
@@ -53,9 +54,9 @@ int main( int argc, char *argv[] )
 	    else {
 		for (i=0; i<count; i++)       sbuf[i] = -(i + rank*count);
 	    }
-	    err = MPI_Allgatherv( sbuf, count, datatype,
-				  rbuf, recvcounts, recvdispls, datatype, 
-				  comm );
+	    err = MTest_Allgatherv(sbuf, count, datatype,
+				  rbuf, recvcounts, recvdispls, datatype,
+				  comm);
 	    if (err) {
 		errs++;
 		MTestPrintError( err );
@@ -78,9 +79,9 @@ int main( int argc, char *argv[] )
 	    /* Use Allgather in a unidirectional way */
 	    for (i=0; i<count*rsize; i++) rbuf[i] = -1;
 	    if (leftGroup) {
-		err = MPI_Allgatherv( sbuf, 0, datatype,
-				      rbuf, recvcounts, recvdispls, datatype, 
-				      comm );
+		err = MTest_Allgatherv(sbuf, 0, datatype,
+				      rbuf, recvcounts, recvdispls, datatype,
+				      comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -96,8 +97,8 @@ int main( int argc, char *argv[] )
                     recvcounts[i] = 0;
                     recvdispls[i] = 0;
                 }
-		err = MPI_Allgatherv( sbuf, count, datatype,
-				      rbuf, recvcounts, recvdispls, datatype, comm );
+		err = MTest_Allgatherv(sbuf, count, datatype,
+				      rbuf, recvcounts, recvdispls, datatype, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/icallreduce.c b/test/mpi/coll/icallreduce.c
index 2ec7614..164a3bb 100644
--- a/test/mpi/coll/icallreduce.c
+++ b/test/mpi/coll/icallreduce.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm allreduce test";
@@ -45,8 +46,8 @@ int main( int argc, char *argv[] )
 		for (i=0; i<count; i++) sendbuf[i] = -i;
 	    }
 	    for (i=0; i<count; i++) recvbuf[i] = 0;
-	    err = MPI_Allreduce( sendbuf, recvbuf, count, datatype, 
-				 MPI_SUM, comm );
+	    err = MTest_Allreduce(sendbuf, recvbuf, count, datatype,
+				 MPI_SUM, comm);
 	    if (err) {
 		errs++;
 		MTestPrintError( err );
diff --git a/test/mpi/coll/icalltoall.c b/test/mpi/coll/icalltoall.c
index a6a55e1..9d6b8f8 100644
--- a/test/mpi/coll/icalltoall.c
+++ b/test/mpi/coll/icalltoall.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm alltoall test";
@@ -40,8 +41,8 @@ int main( int argc, char *argv[] )
 			sendbuf[idx++] = i + rrank;
 		    }
 		}
-		err = MPI_Alltoall( sendbuf, count, datatype, 
-				    NULL, 0, datatype, comm );
+		err = MTest_Alltoall(sendbuf, count, datatype,
+				    NULL, 0, datatype, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -54,8 +55,8 @@ int main( int argc, char *argv[] )
 		MPI_Comm_size( comm, &size );
 
 		/* In the right group */
-		err = MPI_Alltoall( NULL, 0, datatype, 
-				    recvbuf, count, datatype, comm );
+		err = MTest_Alltoall(NULL, 0, datatype,
+				    recvbuf, count, datatype, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/icalltoallv.c b/test/mpi/coll/icalltoallv.c
index 41123c3..7a81805 100644
--- a/test/mpi/coll/icalltoallv.c
+++ b/test/mpi/coll/icalltoallv.c
@@ -7,6 +7,7 @@
 #include "mpitest.h"
 #include <stdlib.h>
 #include <stdio.h>
+#include "mpicolltest.h"
 
 /*
   This program tests MPI_Alltoallv by having processor i send different
@@ -69,8 +70,8 @@ int main( int argc, char **argv )
 	recvcounts[i] = rank;
 	rdispls[i] = i * rank;
       }
-      MPI_Alltoallv( sbuf, sendcounts, sdispls, MPI_INT,
-		     rbuf, recvcounts, rdispls, MPI_INT, comm );
+      MTest_Alltoallv(sbuf, sendcounts, sdispls, MPI_INT,
+                      rbuf, recvcounts, rdispls, MPI_INT, comm);
 
       /* Check rbuf */
       for (i=0; i<size; i++) {
diff --git a/test/mpi/coll/icalltoallw.c b/test/mpi/coll/icalltoallw.c
index 2b8252e..aeb1370 100644
--- a/test/mpi/coll/icalltoallw.c
+++ b/test/mpi/coll/icalltoallw.c
@@ -7,6 +7,7 @@
 #include "mpitest.h"
 #include <stdlib.h>
 #include <stdio.h>
+#include "mpicolltest.h"
 
 /*
   This program tests MPI_Alltoallw by having processor i send different
@@ -77,8 +78,8 @@ int main( int argc, char **argv )
 	rdispls[i]    = i * rank * sizeof(int);
 	recvtypes[i]  = MPI_INT;
       }
-      MPI_Alltoallw( sbuf, sendcounts, sdispls, sendtypes,
-		     rbuf, recvcounts, rdispls, recvtypes, comm );
+      MTest_Alltoallw(sbuf, sendcounts, sdispls, sendtypes,
+	              rbuf, recvcounts, rdispls, recvtypes, comm);
       
       /* Check rbuf */
       for (i=0; i<size; i++) {
diff --git a/test/mpi/coll/icbarrier.c b/test/mpi/coll/icbarrier.c
index 94adbc4..6551603 100644
--- a/test/mpi/coll/icbarrier.c
+++ b/test/mpi/coll/icbarrier.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm barrier test";
@@ -36,7 +37,7 @@ int main( int argc, char *argv[] )
 	   change the error handler to errors return */
 	MPI_Comm_set_errhandler( comm, MPI_ERRORS_RETURN );
 	if (leftGroup) {
-	    err = MPI_Barrier( comm );
+	    err = MTest_Barrier(comm);
 	    if (err) {
 		errs++;
 		MTestPrintError( err );
@@ -44,7 +45,7 @@ int main( int argc, char *argv[] )
 	}
 	else {
 	    /* In the right group */
-	    err = MPI_Barrier( comm );
+	    err = MTest_Barrier(comm);
 	    if (err) {
 		errs++;
 		MTestPrintError( err );
diff --git a/test/mpi/coll/icbcast.c b/test/mpi/coll/icbcast.c
index 660d861..c289c3c 100644
--- a/test/mpi/coll/icbcast.c
+++ b/test/mpi/coll/icbcast.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm broadcast test";
@@ -44,9 +45,9 @@ int main( int argc, char *argv[] )
 		else {
 		    for (i=0; i<count; i++) buf[i] = -1;
 		}
-		err = MPI_Bcast( buf, count, datatype, 
+		err = MTest_Bcast(buf, count, datatype,
 				 (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
-				 comm );
+				 comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -64,7 +65,7 @@ int main( int argc, char *argv[] )
 	    else {
 		/* In the right group */
 		for (i=0; i<count; i++) buf[i] = -1;
-		err = MPI_Bcast( buf, count, datatype, 0, comm );
+		err = MTest_Bcast(buf, count, datatype, 0, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/icgather.c b/test/mpi/coll/icgather.c
index 4865cd0..54bb7e4 100644
--- a/test/mpi/coll/icgather.c
+++ b/test/mpi/coll/icgather.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm gather test";
@@ -38,10 +39,10 @@ int main( int argc, char *argv[] )
 		buf = (int *)malloc( count * rsize * sizeof(int) );
 		for (i=0; i<count*rsize; i++) buf[i] = -1;
 
-		err = MPI_Gather( NULL, 0, datatype,
-				  buf, count, datatype, 
-				 (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
-				 comm );
+		err = MTest_Gather(NULL, 0, datatype,
+	                           buf, count, datatype,
+                                   (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
+                                   comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -68,8 +69,8 @@ int main( int argc, char *argv[] )
 		/* In the right group */
 		buf = (int *)malloc( count * sizeof(int) );
 		for (i=0; i<count; i++) buf[i] = rank * count + i;
-		err = MPI_Gather( buf, count, datatype, 
-				  NULL, 0, datatype, 0, comm );
+		err = MTest_Gather(buf, count, datatype,
+                                   NULL, 0, datatype, 0, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/icgatherv.c b/test/mpi/coll/icgatherv.c
index 4786daa..b726dcc 100644
--- a/test/mpi/coll/icgatherv.c
+++ b/test/mpi/coll/icgatherv.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm gatherv test";
@@ -50,10 +51,10 @@ int main( int argc, char *argv[] )
 		buf = (int *)malloc( count * rsize * sizeof(int) );
 		for (i=0; i<count*rsize; i++) buf[i] = -1;
 
-		err = MPI_Gatherv( NULL, 0, datatype,
-				  buf, recvcounts, recvdispls, datatype, 
-				 (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
-				 comm );
+		err = MTest_Gatherv(NULL, 0, datatype,
+                                    buf, recvcounts, recvdispls, datatype,
+                                    (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
+                                    comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -80,8 +81,8 @@ int main( int argc, char *argv[] )
 		/* In the right group */
 		buf = (int *)malloc( count * sizeof(int) );
 		for (i=0; i<count; i++) buf[i] = rank * count + i;
-		err = MPI_Gatherv( buf, count, datatype, 
-				   NULL, 0, 0, datatype, 0, comm );
+		err = MTest_Gatherv(buf, count, datatype,
+                                    NULL, 0, 0, datatype, 0, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/icreduce.c b/test/mpi/coll/icreduce.c
index 49bd537..7d6ba94 100644
--- a/test/mpi/coll/icreduce.c
+++ b/test/mpi/coll/icreduce.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm reduce test";
@@ -44,9 +45,9 @@ int main( int argc, char *argv[] )
 		recvbuf[i] = -1;
 	    }
 	    if (leftGroup) {
-		err = MPI_Reduce( sendbuf, recvbuf, count, datatype, MPI_SUM,
-				 (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
-				 comm );
+		err = MTest_Reduce(sendbuf, recvbuf, count, datatype, MPI_SUM,
+                                   (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
+                                   comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -71,8 +72,8 @@ int main( int argc, char *argv[] )
 	    else {
 		/* In the right group */
 		for (i=0; i<count; i++) sendbuf[i] = i;
-		err = MPI_Reduce( sendbuf, recvbuf, count, datatype, MPI_SUM, 
-				  0, comm );
+		err = MTest_Reduce(sendbuf, recvbuf, count, datatype, MPI_SUM,
+                                   0, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/icscatter.c b/test/mpi/coll/icscatter.c
index 403cec0..2f5b28f 100644
--- a/test/mpi/coll/icscatter.c
+++ b/test/mpi/coll/icscatter.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm scatter test";
@@ -45,10 +46,10 @@ int main( int argc, char *argv[] )
 		else {
 		    for (i=0; i<count*rsize; i++) buf[i] = -1;
 		}
-		err = MPI_Scatter( buf, count, datatype, 
-				   NULL, 0, datatype,
-				 (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
-				 comm );
+		err = MTest_Scatter(buf, count, datatype,
+                                    NULL, 0, datatype,
+                                    (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
+                                    comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -70,8 +71,8 @@ int main( int argc, char *argv[] )
 		buf = (int *)malloc( count * sizeof(int) );
 		/* In the right group */
 		for (i=0; i<count; i++) buf[i] = -1;
-		err = MPI_Scatter( NULL, 0, datatype, 
-				   buf, count, datatype, 0, comm );
+		err = MTest_Scatter(NULL, 0, datatype,
+                                    buf, count, datatype, 0, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/icscatterv.c b/test/mpi/coll/icscatterv.c
index 3d6a577..2e64afc 100644
--- a/test/mpi/coll/icscatterv.c
+++ b/test/mpi/coll/icscatterv.c
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include "mpitest.h"
+#include "mpicolltest.h"
 
 /*
 static char MTEST_Descrip[] = "Simple intercomm scatterv test";
@@ -53,10 +54,10 @@ int main( int argc, char *argv[] )
 		else {
 		    for (i=0; i<count*rsize; i++) buf[i] = -1;
 		}
-		err = MPI_Scatterv( buf, sendcounts, senddispls, datatype, 
-				    NULL, 0, datatype,
-				    (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
-				    comm );
+		err = MTest_Scatterv(buf, sendcounts, senddispls, datatype,
+                                     NULL, 0, datatype,
+                                     (rank == 0) ? MPI_ROOT : MPI_PROC_NULL,
+                                     comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
@@ -78,8 +79,8 @@ int main( int argc, char *argv[] )
 		buf = (int *)malloc( count * sizeof(int) );
 		/* In the right group */
 		for (i=0; i<count; i++) buf[i] = -1;
-		err = MPI_Scatterv( NULL, 0, 0, datatype, 
-				    buf, count, datatype, 0, comm );
+		err = MTest_Scatterv(NULL, 0, 0, datatype,
+                                     buf, count, datatype, 0, comm);
 		if (err) {
 		    errs++;
 		    MTestPrintError( err );
diff --git a/test/mpi/coll/testlist.in b/test/mpi/coll/testlist.in
index 825e63e..74f2135 100644
--- a/test/mpi/coll/testlist.in
+++ b/test/mpi/coll/testlist.in
@@ -152,3 +152,17 @@ nbredscat 4   mpiversion=3.0
 nbredscat 8   mpiversion=3.0
 nbredscat3 8  mpiversion=3.0
 nbredscatinter 8 mpiversion=3.0
+
+nbicbcast 8 mpiversion=3.0
+nbicallreduce 8 mpiversion=3.0
+nbicreduce 8 mpiversion=3.0
+nbicscatter 8 mpiversion=3.0
+nbicgather 8 mpiversion=3.0
+nbicallgather 8 mpiversion=3.0
+nbicbarrier 8  mpiversion=3.0
+nbicallgatherv 8 mpiversion=3.0
+nbicgatherv 8 mpiversion=3.0
+nbicscatterv 8 mpiversion=3.0
+nbicalltoall 8 mpiversion=3.0
+nbicalltoallv 8 mpiversion=3.0
+nbicalltoallw 8 mpiversion=3.0

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

Summary of changes:
 src/mpi/coll/iallgather.c    |    2 +-
 src/mpi/coll/ibarrier.c      |   12 +++++-----
 test/mpi/coll/Makefile.am    |   49 ++++++++++++++++++++++++++++++++++++++++-
 test/mpi/coll/icallgather.c  |   13 ++++++-----
 test/mpi/coll/icallgatherv.c |   17 +++++++------
 test/mpi/coll/icallreduce.c  |    5 ++-
 test/mpi/coll/icalltoall.c   |    9 ++++---
 test/mpi/coll/icalltoallv.c  |    5 ++-
 test/mpi/coll/icalltoallw.c  |    5 ++-
 test/mpi/coll/icbarrier.c    |    5 ++-
 test/mpi/coll/icbcast.c      |    7 +++--
 test/mpi/coll/icgather.c     |   13 ++++++-----
 test/mpi/coll/icgatherv.c    |   13 ++++++-----
 test/mpi/coll/icreduce.c     |   11 +++++----
 test/mpi/coll/icscatter.c    |   13 ++++++-----
 test/mpi/coll/icscatterv.c   |   13 ++++++-----
 test/mpi/coll/testlist.in    |   14 ++++++++++++
 17 files changed, 139 insertions(+), 67 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list