[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.2a2-257-ga0ebb44

Service Account noreply at mpich.org
Mon Mar 9 13:02:28 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  a0ebb44134b93f241bdf554fb2e2e38517922b7e (commit)
      from  17d18f6143e3d2bbe1339156f95262a0eb7e2f36 (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/a0ebb44134b93f241bdf554fb2e2e38517922b7e

commit a0ebb44134b93f241bdf554fb2e2e38517922b7e
Author: Ken Raffenetti <raffenet at mcs.anl.gov>
Date:   Mon Mar 9 11:26:15 2015 -0500

    testsuite: move coll alias checks to errors dir
    
    Put tests that check if MPI correctly detects aliased buffers in
    collective operations into the errors section of the testsuite.
    
    Fixes #2211
    
    Signed-off-by: Wesley Bland <wbland at anl.gov>

diff --git a/test/mpi/.gitignore b/test/mpi/.gitignore
index 913d84a..8020972 100644
--- a/test/mpi/.gitignore
+++ b/test/mpi/.gitignore
@@ -212,6 +212,8 @@
 /errhan/errring
 /errors/testlist
 /errors/coll/noalias
+/errors/coll/noalias2
+/errors/coll/noalias3
 /errors/coll/rerr
 /errors/coll/bcastlength
 /errors/cxx/testlist
diff --git a/test/mpi/coll/allgather2.c b/test/mpi/coll/allgather2.c
index 66a21ec..9ac5731 100644
--- a/test/mpi/coll/allgather2.c
+++ b/test/mpi/coll/allgather2.c
@@ -51,17 +51,6 @@ int main( int argc, char **argv )
 	MTestFreeComm( &comm );
     }
 
-#if MTEST_HAVE_MIN_MPI_VERSION(2,2)
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    MPI_Comm_rank(MPI_COMM_WORLD, &rank);
-    MPI_Comm_size(MPI_COMM_WORLD, &size);
-    vecout = (double *) malloc(size * sizeof(double));
-    if (MPI_SUCCESS == MPI_Allgather(&vecout[rank], 1, MPI_DOUBLE,
-                                      vecout, 1, MPI_DOUBLE, MPI_COMM_WORLD))
-        errs++;
-    free(vecout);
-#endif
-
     MTest_Finalize( errs );
     MPI_Finalize();
     return 0;
diff --git a/test/mpi/coll/allgatherv2.c b/test/mpi/coll/allgatherv2.c
index 678193c..ed78723 100644
--- a/test/mpi/coll/allgatherv2.c
+++ b/test/mpi/coll/allgatherv2.c
@@ -58,15 +58,6 @@ int main( int argc, char **argv )
             free( vecout );
         }
 
-#if MTEST_HAVE_MIN_MPI_VERSION(2,2)
-        MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-        vecout = (double *) malloc(size * sizeof(double));
-        if (MPI_SUCCESS == MPI_Allgatherv(&vecout[rank * recvcounts[rank]], recvcounts[rank], MPI_DOUBLE,
-                                           vecout, recvcounts, displs, MPI_DOUBLE, comm))
-            errs++;
-        free(vecout);
-#endif
-
 	free( displs );
 	free( recvcounts );
 	MTestFreeComm( &comm );
diff --git a/test/mpi/coll/allred6.c b/test/mpi/coll/allred6.c
index 65629de..ba829e1 100644
--- a/test/mpi/coll/allred6.c
+++ b/test/mpi/coll/allred6.c
@@ -67,14 +67,6 @@ int main( int argc, char *argv[] )
     }
     MPI_Op_free( &op );
 
-#if MTEST_HAVE_MIN_MPI_VERSION(2,2)
-    /* Check to make sure that aliasing is disallowed correctly */
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    MPI_Comm_rank(MPI_COMM_WORLD, &rank);
-    if (MPI_SUCCESS == MPI_Allreduce(&rank, &rank, 1, MPI_INT, MPI_OP_NULL, MPI_COMM_WORLD))
-        errs++;
-#endif
-
     MTest_Finalize( errs );
     MPI_Finalize();
     return 0;
diff --git a/test/mpi/coll/alltoall1.c b/test/mpi/coll/alltoall1.c
index 4d400cf..cd6d3d8 100644
--- a/test/mpi/coll/alltoall1.c
+++ b/test/mpi/coll/alltoall1.c
@@ -115,14 +115,6 @@ int main( int argc, char *argv[] )
 	MTestFreeComm( &comm );
     }
 
-#if MTEST_HAVE_MIN_MPI_VERSION(2,2)
-    /* Check to make sure that aliasing is disallowed correctly */
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    MPI_Comm_rank(MPI_COMM_WORLD, &rank);
-    if (MPI_SUCCESS == MPI_Alltoall(&rank, 1, MPI_INT, &rank, 1, MPI_INT, MPI_COMM_WORLD))
-        errs++;
-#endif
-
     MTest_Finalize( errs );
     MPI_Finalize();
     return 0;
diff --git a/test/mpi/coll/alltoallv.c b/test/mpi/coll/alltoallv.c
index 435b3c3..bcae133 100644
--- a/test/mpi/coll/alltoallv.c
+++ b/test/mpi/coll/alltoallv.c
@@ -122,12 +122,6 @@ int main( int argc, char **argv )
           }
         }
       }
-
-      /* Check to make sure that aliasing is disallowed correctly */
-      MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-      if (MPI_SUCCESS == MPI_Alltoallv(rbuf, recvcounts, rdispls, MPI_INT,
-                                       rbuf, recvcounts, rdispls, MPI_INT, comm))
-          err++;
 #endif
 
       free( rdispls );
diff --git a/test/mpi/coll/alltoallw2.c b/test/mpi/coll/alltoallw2.c
index e2c7d5f..7d40236 100644
--- a/test/mpi/coll/alltoallw2.c
+++ b/test/mpi/coll/alltoallw2.c
@@ -133,11 +133,6 @@ int main( int argc, char **argv )
           }
         }
       }
-
-      MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-      if (MPI_SUCCESS == MPI_Alltoallw(rbuf, recvcounts, rdispls, recvtypes,
-                                       rbuf, recvcounts, rdispls, recvtypes, comm))
-          err++;
 #endif
 
       free(recvtypes);
diff --git a/test/mpi/coll/exscan.c b/test/mpi/coll/exscan.c
index 64ab9d5..70f4c53 100644
--- a/test/mpi/coll/exscan.c
+++ b/test/mpi/coll/exscan.c
@@ -84,11 +84,6 @@ int main( int argc, char *argv[] )
                     }
                 }
             }
-
-            MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-            /* Make sure that we check for buffer aliasing properly */
-            if (MPI_SUCCESS == MPI_Exscan( recvbuf, recvbuf, count, MPI_INT, MPI_SUM, comm ))
-                errs++;
 #endif
 
 	    free( sendbuf );
diff --git a/test/mpi/coll/gather.c b/test/mpi/coll/gather.c
index e14503f..7433caa 100644
--- a/test/mpi/coll/gather.c
+++ b/test/mpi/coll/gather.c
@@ -66,16 +66,6 @@ int main( int argc, char **argv )
     /* do a zero length gather */
     MPI_Gather( NULL, 0, MPI_BYTE, NULL, 0, MPI_BYTE, 0, MPI_COMM_WORLD );
 
-#if MTEST_HAVE_MIN_MPI_VERSION(2,2)
-    /* Check to make sure that aliasing is disallowed correctly */
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    MPI_Comm_rank(MPI_COMM_WORLD, &rank);
-    if (0 == rank)
-        if (MPI_SUCCESS == MPI_Gather(&rank, 1, MPI_INT,
-                                      &rank, 1, MPI_INT, 0, MPI_COMM_WORLD))
-            errs++;
-#endif
-
     MTest_Finalize( errs );
     MPI_Finalize();
     return 0;
diff --git a/test/mpi/coll/iallred.c b/test/mpi/coll/iallred.c
index 684fd50..d83841c 100644
--- a/test/mpi/coll/iallred.c
+++ b/test/mpi/coll/iallred.c
@@ -15,7 +15,6 @@ int main(int argc, char *argv[])
     MPI_Request request;
     int size, rank;
     int one = 1, two = 2, isum, sum;
-    int errs = 0;
 
     MPI_Init(&argc,&argv);
     MPI_Comm_size(MPI_COMM_WORLD, &size);
@@ -27,12 +26,7 @@ int main(int argc, char *argv[])
 
     assert(isum == 2);
     assert(sum == 4);
-
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    if (MPI_SUCCESS == MPI_Iallreduce(&one, &one, 1, MPI_INT, MPI_SUM, MPI_COMM_WORLD, &request))
-        errs++;
-
-    if (rank == 0 && errs == 0)
+    if (rank == 0)
         printf(" No errors\n");
 
     MPI_Finalize();
diff --git a/test/mpi/coll/red3.c b/test/mpi/coll/red3.c
index 7835b64..32358d9 100644
--- a/test/mpi/coll/red3.c
+++ b/test/mpi/coll/red3.c
@@ -182,16 +182,6 @@ int main( int argc, char *argv[] )
 	    if (rank == root) {
 		errs += isShiftLeft( comm, bufout );
 	    }
-
-#if MTEST_HAVE_MIN_MPI_VERSION(2,2)
-            /* Try one more time without IN_PLACE to make sure we check
-             * aliasing correctly */
-            if (rank == root) {
-                MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-                if (MPI_SUCCESS == MPI_Reduce( bufout, bufout, count, mattype, op, root, comm ))
-                    errs++;
-            }
-#endif
 	}
 
 	free( buf );
diff --git a/test/mpi/coll/red_scat_block.c b/test/mpi/coll/red_scat_block.c
index a2f20a0..3092c8d 100644
--- a/test/mpi/coll/red_scat_block.c
+++ b/test/mpi/coll/red_scat_block.c
@@ -66,11 +66,6 @@ int main(int argc, char **argv)
         fprintf(stdout, "Did not get expected value for reduce scatter block\n");
         fprintf(stdout, "[%d] Got %d expected %d\n", rank, recvbuf[0], sumval);
     }
-
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    if (MPI_SUCCESS == MPI_Reduce_scatter_block(recvbuf, recvbuf, 1, MPI_INT, MPI_SUM, comm))
-        err++;
-
     free(recvbuf);
 #endif
 
diff --git a/test/mpi/coll/redscat3.c b/test/mpi/coll/redscat3.c
index 3b8e526..e6057cd 100644
--- a/test/mpi/coll/redscat3.c
+++ b/test/mpi/coll/redscat3.c
@@ -96,10 +96,6 @@ int main( int argc, char **argv )
             }
         }
     }
-
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    if (MPI_SUCCESS == MPI_Reduce_scatter(sendbuf, sendbuf, recvcounts, MPI_INT, MPI_SUM, comm))
-        err++;
 #endif
 
     free(sendbuf);
diff --git a/test/mpi/coll/reduce.c b/test/mpi/coll/reduce.c
index ad09c9b..6106782 100644
--- a/test/mpi/coll/reduce.c
+++ b/test/mpi/coll/reduce.c
@@ -48,15 +48,6 @@ int main( int argc, char *argv[] )
 	    free( sendbuf );
 	    free( recvbuf );
 	}
-
-#if MTEST_HAVE_MIN_MPI_VERSION(2,2)
-        if (0 == rank) {
-            MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-            if (MPI_SUCCESS == MPI_Reduce(&rank, &rank, 1, MPI_INT, MPI_SUM, 0, comm))
-                errs++;
-        }
-#endif
-
 	MTestFreeComm( &comm );
     }
 
diff --git a/test/mpi/coll/scantst.c b/test/mpi/coll/scantst.c
index 1359acc..97802ad 100644
--- a/test/mpi/coll/scantst.c
+++ b/test/mpi/coll/scantst.c
@@ -103,12 +103,6 @@ int main( int argc, char **argv )
         errors++;
     }
 
-#if MTEST_HAVE_MIN_MPI_VERSION(2,2)
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    if (MPI_SUCCESS == MPI_Scan( &data, &data, 1, MPI_INT, op_assoc, comm))
-        errors++;
-#endif
-
     MPI_Op_free( &op_assoc );
     MPI_Op_free( &op_addem );
     
diff --git a/test/mpi/coll/scatter2.c b/test/mpi/coll/scatter2.c
index feac832..f11e204 100644
--- a/test/mpi/coll/scatter2.c
+++ b/test/mpi/coll/scatter2.c
@@ -64,11 +64,6 @@ int main( int argc, char **argv )
 	    }
 	}
     }
-
-    MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN);
-    if (rank == 0 && MPI_SUCCESS ==
-            MPI_Scatter(vecin, 1, MPI_DOUBLE, vecin, 1, MPI_DOUBLE, 0, MPI_COMM_WORLD))
-        err++;
     
     free(vecin);
     free(vecout);
diff --git a/test/mpi/coll/testlist b/test/mpi/coll/testlist
index cf05600..2e77908 100644
--- a/test/mpi/coll/testlist
+++ b/test/mpi/coll/testlist
@@ -139,7 +139,6 @@ nonblocking3 1 mpiversion=3.0
 nonblocking3 4 mpiversion=3.0
 nonblocking3 5 mpiversion=3.0
 nonblocking3 10 timeLimit=600 mpiversion=3.0
-nonblocking4 4 mpiversion=3.0
 iallred 2 mpiversion=3.0
 # ibarrier will hang forever if it fails, but will complete quickly if it
 # succeeds
diff --git a/test/mpi/errors/coll/Makefile.am b/test/mpi/errors/coll/Makefile.am
index c3c7404..6f81619 100644
--- a/test/mpi/errors/coll/Makefile.am
+++ b/test/mpi/errors/coll/Makefile.am
@@ -12,5 +12,5 @@ EXTRA_DIST = testlist
 ## for all programs that are just built from the single corresponding source
 ## file, we don't need per-target _SOURCES rules, automake will infer them
 ## correctly
-noinst_PROGRAMS = noalias rerr bcastlength reduce_local
+noinst_PROGRAMS = noalias noalias2 noalias3 rerr bcastlength reduce_local
 
diff --git a/test/mpi/coll/nonblocking4.c b/test/mpi/errors/coll/noalias2.c
similarity index 70%
copy from test/mpi/coll/nonblocking4.c
copy to test/mpi/errors/coll/noalias2.c
index 8cf7c25..b651e65 100644
--- a/test/mpi/coll/nonblocking4.c
+++ b/test/mpi/errors/coll/noalias2.c
@@ -1,6 +1,6 @@
 /* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil ; -*- */
 /*
- *  (C) 2010 by Argonne National Laboratory.
+ *  (C) 2015 by Argonne National Laboratory.
  *      See COPYRIGHT in top-level directory.
  */
 
@@ -37,7 +37,6 @@ int main(int argc, char **argv)
     int *rdispls = NULL;
     int *types = NULL;
     MPI_Comm comm;
-    MPI_Request req;
 
     /* intentionally not using MTest_Init/MTest_Finalize in order to make it
      * easy to take this test and use it as an NBC sanity test outside of the
@@ -81,63 +80,63 @@ int main(int argc, char **argv)
     }
 
     if (rank == 0 && MPI_SUCCESS ==
-            MPI_Igather(sbuf, NUM_INTS, MPI_INT, sbuf, NUM_INTS, MPI_INT, 0, comm, &req))
+            MPI_Gather(sbuf, NUM_INTS, MPI_INT, sbuf, NUM_INTS, MPI_INT, 0, comm))
         errs++;
 
     if (rank == 0 && MPI_SUCCESS ==
-            MPI_Igatherv(sbuf, NUM_INTS, MPI_INT, sbuf, rcounts, rdispls, MPI_INT, 0, comm, &req))
+            MPI_Gatherv(sbuf, NUM_INTS, MPI_INT, sbuf, rcounts, rdispls, MPI_INT, 0, comm))
         errs++;
 
     if (rank == 0 && MPI_SUCCESS ==
-            MPI_Iscatter(sbuf, NUM_INTS, MPI_INT, sbuf, NUM_INTS, MPI_INT, 0, comm, &req))
+            MPI_Scatter(sbuf, NUM_INTS, MPI_INT, sbuf, NUM_INTS, MPI_INT, 0, comm))
         errs++;
 
     if (rank == 0 && MPI_SUCCESS ==
-            MPI_Iscatterv(sbuf, scounts, sdispls, MPI_INT, sbuf, NUM_INTS, MPI_INT, 0, comm, &req))
+            MPI_Scatterv(sbuf, scounts, sdispls, MPI_INT, sbuf, NUM_INTS, MPI_INT, 0, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Iallgather(&sbuf[rank], 1, MPI_INT, sbuf, 1, MPI_INT, comm, &req))
+            MPI_Allgather(&sbuf[rank], 1, MPI_INT, sbuf, 1, MPI_INT, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Iallgatherv(&sbuf[rank * rcounts[rank]], rcounts[rank], MPI_INT, sbuf, rcounts, rdispls, MPI_INT, comm, &req))
+            MPI_Allgatherv(&sbuf[rank * rcounts[rank]], rcounts[rank], MPI_INT, sbuf, rcounts, rdispls, MPI_INT, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Ialltoall(sbuf, NUM_INTS, MPI_INT, sbuf, NUM_INTS, MPI_INT, comm, &req))
+            MPI_Alltoall(sbuf, NUM_INTS, MPI_INT, sbuf, NUM_INTS, MPI_INT, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Ialltoallv(sbuf, scounts, sdispls, MPI_INT, sbuf, scounts, sdispls, MPI_INT, comm, &req))
+            MPI_Alltoallv(sbuf, scounts, sdispls, MPI_INT, sbuf, scounts, sdispls, MPI_INT, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Ialltoallw(sbuf, scounts, sdispls, types, sbuf, scounts, sdispls, types, comm, &req))
+            MPI_Alltoallw(sbuf, scounts, sdispls, types, sbuf, scounts, sdispls, types, comm))
         errs++;
 
     if (rank == 0 && MPI_SUCCESS ==
-            MPI_Ireduce(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, 0, comm, &req))
+            MPI_Reduce(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, 0, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Iallreduce(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, comm, &req))
+            MPI_Allreduce(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Ireduce_scatter(sbuf, sbuf, rcounts, MPI_INT, MPI_SUM, comm, &req))
+            MPI_Reduce_scatter(sbuf, sbuf, rcounts, MPI_INT, MPI_SUM, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Ireduce_scatter_block(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, comm, &req))
+            MPI_Reduce_scatter_block(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Iscan(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, comm, &req))
+            MPI_Scan(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, comm))
         errs++;
 
     if (MPI_SUCCESS ==
-            MPI_Iexscan(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, comm, &req))
+            MPI_Exscan(sbuf, sbuf, NUM_INTS, MPI_INT, MPI_SUM, comm))
         errs++;
 
     if (sbuf) free(sbuf);
diff --git a/test/mpi/coll/nonblocking4.c b/test/mpi/errors/coll/noalias3.c
similarity index 100%
rename from test/mpi/coll/nonblocking4.c
rename to test/mpi/errors/coll/noalias3.c
diff --git a/test/mpi/errors/coll/testlist b/test/mpi/errors/coll/testlist
index 7e6048e..75fda41 100644
--- a/test/mpi/errors/coll/testlist
+++ b/test/mpi/errors/coll/testlist
@@ -1,4 +1,6 @@
 noalias 2
+noalias2 4 mpiversion=2.2
+noalias3 4 mpiversion=3.0
 rerr 2
 reduce_local 1
 # MPICH currently fails the bcastlength test because it needs to do more

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

Summary of changes:
 test/mpi/.gitignore                                |    2 +
 test/mpi/coll/allgather2.c                         |   11 ------
 test/mpi/coll/allgatherv2.c                        |    9 -----
 test/mpi/coll/allred6.c                            |    8 -----
 test/mpi/coll/alltoall1.c                          |    8 -----
 test/mpi/coll/alltoallv.c                          |    6 ---
 test/mpi/coll/alltoallw2.c                         |    5 ---
 test/mpi/coll/exscan.c                             |    5 ---
 test/mpi/coll/gather.c                             |   10 ------
 test/mpi/coll/iallred.c                            |    8 +----
 test/mpi/coll/red3.c                               |   10 ------
 test/mpi/coll/red_scat_block.c                     |    5 ---
 test/mpi/coll/redscat3.c                           |    4 --
 test/mpi/coll/reduce.c                             |    9 -----
 test/mpi/coll/scantst.c                            |    6 ---
 test/mpi/coll/scatter2.c                           |    5 ---
 test/mpi/coll/testlist                             |    1 -
 test/mpi/errors/coll/Makefile.am                   |    2 +-
 .../nonblocking4.c => errors/coll/noalias2.c}      |   33 +++++++++----------
 .../nonblocking4.c => errors/coll/noalias3.c}      |    0
 test/mpi/errors/coll/testlist                      |    2 +
 21 files changed, 22 insertions(+), 127 deletions(-)
 copy test/mpi/{coll/nonblocking4.c => errors/coll/noalias2.c} (70%)
 rename test/mpi/{coll/nonblocking4.c => errors/coll/noalias3.c} (100%)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list