[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.0.4-242-ge4fa6c0

mysql vizuser noreply at mpich.org
Mon May 20 18:32:53 CDT 2013


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  e4fa6c06477c329c83d71479b667a70a6ef570dc (commit)
       via  dfef4246d7af2b17b75d816c077baca3bfab4b85 (commit)
      from  e21480612e97a8a8151801e87e2f3c46fe125359 (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/e4fa6c06477c329c83d71479b667a70a6ef570dc

commit e4fa6c06477c329c83d71479b667a70a6ef570dc
Author: Michael Blocksome <blocksom at us.ibm.com>
Date:   Mon May 20 15:36:15 2013 -0500

    Do not assert when a pami extension is missing.

diff --git a/src/mpid/pamid/src/pamix/pamix.c b/src/mpid/pamid/src/pamix/pamix.c
index e213d3a..e274176 100644
--- a/src/mpid/pamid/src/pamix/pamix.c
+++ b/src/mpid/pamid/src/pamix/pamix.c
@@ -81,7 +81,6 @@ pamix_extension_info_t PAMIX_Extensions;
 ({                                                      \
   void* fn;                                             \
   fn = PAMI_Extension_symbol(ext, name);                \
-  PAMIX_assert_always(fn != NULL);                      \
   (type)fn;                                             \
 })
 void

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

commit dfef4246d7af2b17b75d816c077baca3bfab4b85
Author: Michael Blocksome <blocksom at us.ibm.com>
Date:   Fri May 17 15:35:11 2013 -0500

    Disable MPI_IN_PLACE for versions of pami that do not support PAMI_IN_PLACE.
    
    Attempting to use 'MPI_IN_PLACE' with a pamid collective and a pami
    library that does not support 'PAMI_IN_PLACE' will abort.
    
    Versions of pami that support `PAMI_IN_PLACE` will be available in the
    near future.

diff --git a/src/mpid/pamid/src/coll/allgather/mpido_allgather.c b/src/mpid/pamid/src/coll/allgather/mpido_allgather.c
index 36e7fe7..a65181c 100644
--- a/src/mpid/pamid/src/coll/allgather/mpido_allgather.c
+++ b/src/mpid/pamid/src/coll/allgather/mpido_allgather.c
@@ -289,6 +289,13 @@ MPIDO_Allgather(const void *sendbuf,
                 MPID_Comm * comm_ptr,
                 int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
   /* *********************************
    * Check the nature of the buffers
    * *********************************
@@ -581,6 +588,13 @@ MPIDO_Allgather_simple(const void *sendbuf,
                 MPID_Comm * comm_ptr,
                 int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
      /* *********************************
    * Check the nature of the buffers
    * *********************************
diff --git a/src/mpid/pamid/src/coll/allgatherv/mpido_allgatherv.c b/src/mpid/pamid/src/coll/allgatherv/mpido_allgatherv.c
index cec19d4..b8ab1ef 100644
--- a/src/mpid/pamid/src/coll/allgatherv/mpido_allgatherv.c
+++ b/src/mpid/pamid/src/coll/allgatherv/mpido_allgatherv.c
@@ -296,6 +296,13 @@ MPIDO_Allgatherv(const void *sendbuf,
 		 MPID_Comm * comm_ptr,
                  int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    TRACE_ERR("Entering MPIDO_Allgatherv\n");
   /* function pointer to be used to point to approperiate algorithm */
 
@@ -616,6 +623,13 @@ MPIDO_Allgatherv_simple(const void *sendbuf,
 		 MPID_Comm * comm_ptr,
                  int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    TRACE_ERR("Entering MPIDO_Allgatherv_optimized\n");
   /* function pointer to be used to point to approperiate algorithm */
   /* Check the nature of the buffers */
diff --git a/src/mpid/pamid/src/coll/allreduce/mpido_allreduce.c b/src/mpid/pamid/src/coll/allreduce/mpido_allreduce.c
index b921f9d..41e5759 100644
--- a/src/mpid/pamid/src/coll/allreduce/mpido_allreduce.c
+++ b/src/mpid/pamid/src/coll/allreduce/mpido_allreduce.c
@@ -43,6 +43,13 @@ int MPIDO_Allreduce(const void *sendbuf,
                     MPID_Comm *comm_ptr,
                     int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
   void *sbuf;
   TRACE_ERR("Entering mpido_allreduce\n");
   pami_type_t pdt;
@@ -397,6 +404,13 @@ int MPIDO_Allreduce_simple(const void *sendbuf,
                     MPID_Comm *comm_ptr,
                     int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    void *sbuf;
    TRACE_ERR("Entering MPIDO_Allreduce_optimized\n");
    pami_type_t pdt;
diff --git a/src/mpid/pamid/src/coll/alltoall/mpido_alltoall.c b/src/mpid/pamid/src/coll/alltoall/mpido_alltoall.c
index 8246b21..c3952a7 100644
--- a/src/mpid/pamid/src/coll/alltoall/mpido_alltoall.c
+++ b/src/mpid/pamid/src/coll/alltoall/mpido_alltoall.c
@@ -42,6 +42,13 @@ int MPIDO_Alltoall(const void *sendbuf,
                    MPID_Comm *comm_ptr,
                    int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    TRACE_ERR("Entering MPIDO_Alltoall\n");
    volatile unsigned active = 1;
    MPID_Datatype *sdt, *rdt;
@@ -221,6 +228,13 @@ int MPIDO_Alltoall_simple(const void *sendbuf,
                    MPID_Comm *comm_ptr,
                    int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    TRACE_ERR("Entering MPIDO_Alltoall_optimized\n");
    volatile unsigned active = 1;
    void *snd_noncontig_buff = NULL, *rcv_noncontig_buff = NULL;
diff --git a/src/mpid/pamid/src/coll/alltoallv/mpido_alltoallv.c b/src/mpid/pamid/src/coll/alltoallv/mpido_alltoallv.c
index d2b1c14..76b45a5 100644
--- a/src/mpid/pamid/src/coll/alltoallv/mpido_alltoallv.c
+++ b/src/mpid/pamid/src/coll/alltoallv/mpido_alltoallv.c
@@ -43,6 +43,13 @@ int MPIDO_Alltoallv(const void *sendbuf,
                    MPID_Comm *comm_ptr,
                    int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    TRACE_ERR("Entering MPIDO_Alltoallv\n");
    volatile unsigned active = 1;
    void *snd_noncontig_buff = NULL, *rcv_noncontig_buff = NULL;
@@ -402,6 +409,13 @@ int MPIDO_Alltoallv_simple(const void *sendbuf,
                    MPID_Comm *comm_ptr,
                    int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    TRACE_ERR("Entering MPIDO_Alltoallv_optimized\n");
    volatile unsigned active = 1;
   int sndtypelen, rcvtypelen, snd_contig = 1, rcv_contig = 1;
diff --git a/src/mpid/pamid/src/coll/gather/mpido_gather.c b/src/mpid/pamid/src/coll/gather/mpido_gather.c
index 6e9fff3..7ff1807 100644
--- a/src/mpid/pamid/src/coll/gather/mpido_gather.c
+++ b/src/mpid/pamid/src/coll/gather/mpido_gather.c
@@ -130,6 +130,13 @@ int MPIDO_Gather(const void *sendbuf,
                  MPID_Comm *comm_ptr,
 		 int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
   MPID_Datatype * data_ptr;
   MPI_Aint true_lb = 0;
   pami_xfer_t gather;
@@ -375,6 +382,13 @@ int MPIDO_Gather_simple(const void *sendbuf,
                  MPID_Comm *comm_ptr,
 		 int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
   MPID_Datatype * data_ptr;
   MPI_Aint true_lb = 0;
   pami_xfer_t gather;
diff --git a/src/mpid/pamid/src/coll/gatherv/mpido_gatherv.c b/src/mpid/pamid/src/coll/gatherv/mpido_gatherv.c
index 8dddd72..d7b9764 100644
--- a/src/mpid/pamid/src/coll/gatherv/mpido_gatherv.c
+++ b/src/mpid/pamid/src/coll/gatherv/mpido_gatherv.c
@@ -42,6 +42,13 @@ int MPIDO_Gatherv(const void *sendbuf,
                   int *mpierrno)
 
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    TRACE_ERR("Entering MPIDO_Gatherv\n");
    int rc;
    int contig, rsize=0, ssize=0;
@@ -238,6 +245,13 @@ int MPIDO_Gatherv_simple(const void *sendbuf,
                   int *mpierrno)
 
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    TRACE_ERR("Entering MPIDO_Gatherv_optimized\n");
    int snd_contig = 1, rcv_contig = 1;
    void *snd_noncontig_buff = NULL, *rcv_noncontig_buff = NULL;
diff --git a/src/mpid/pamid/src/coll/reduce/mpido_reduce.c b/src/mpid/pamid/src/coll/reduce/mpido_reduce.c
index abc45fd..5a53b48 100644
--- a/src/mpid/pamid/src/coll/reduce/mpido_reduce.c
+++ b/src/mpid/pamid/src/coll/reduce/mpido_reduce.c
@@ -40,6 +40,13 @@ int MPIDO_Reduce(const void *sendbuf,
                  int *mpierrno)
 
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    MPID_Datatype *dt_null = NULL;
    MPI_Aint true_lb = 0;
    int dt_contig, tsize;
@@ -247,6 +254,13 @@ int MPIDO_Reduce_simple(const void *sendbuf,
                  int *mpierrno)
 
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    MPID_Datatype *dt_null = NULL;
    MPI_Aint true_lb = 0;
    int dt_contig, tsize;
diff --git a/src/mpid/pamid/src/coll/scan/mpido_scan.c b/src/mpid/pamid/src/coll/scan/mpido_scan.c
index f7a055b..429b355 100644
--- a/src/mpid/pamid/src/coll/scan/mpido_scan.c
+++ b/src/mpid/pamid/src/coll/scan/mpido_scan.c
@@ -96,6 +96,13 @@ int MPIDO_Doscan(const void *sendbuf, void *recvbuf,
                int count, MPI_Datatype datatype,
                MPI_Op op, MPID_Comm * comm_ptr, int *mpierrno, int exflag)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    MPID_Datatype *dt_null = NULL;
    MPI_Aint true_lb = 0;
    int dt_contig, tsize;
@@ -257,6 +264,13 @@ int MPIDO_Doscan_simple(const void *sendbuf, void *recvbuf,
                int count, MPI_Datatype datatype,
                MPI_Op op, MPID_Comm * comm_ptr, int *mpierrno, int exflag)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
    MPID_Datatype *dt_null = NULL;
    MPI_Aint true_lb = 0;
    int dt_contig, tsize;
diff --git a/src/mpid/pamid/src/coll/scatter/mpido_scatter.c b/src/mpid/pamid/src/coll/scatter/mpido_scatter.c
index b2e9a9d..58d371f 100644
--- a/src/mpid/pamid/src/coll/scatter/mpido_scatter.c
+++ b/src/mpid/pamid/src/coll/scatter/mpido_scatter.c
@@ -108,6 +108,13 @@ int MPIDO_Scatter(const void *sendbuf,
                   MPID_Comm *comm_ptr,
                   int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
   MPID_Datatype * data_ptr;
   MPI_Aint true_lb = 0;
   int contig, nbytes = 0;
@@ -323,6 +330,13 @@ int MPIDO_Scatter_simple(const void *sendbuf,
                   MPID_Comm *comm_ptr,
                   int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
   MPID_Datatype * data_ptr;
   const int rank = comm_ptr->rank;
   int success = 1, snd_contig = 1, rcv_contig = 1;
diff --git a/src/mpid/pamid/src/coll/scatterv/mpido_scatterv.c b/src/mpid/pamid/src/coll/scatterv/mpido_scatterv.c
index fcafbe0..26b8056 100644
--- a/src/mpid/pamid/src/coll/scatterv/mpido_scatterv.c
+++ b/src/mpid/pamid/src/coll/scatterv/mpido_scatterv.c
@@ -236,6 +236,13 @@ int MPIDO_Scatterv(const void *sendbuf,
                    MPID_Comm *comm_ptr,
                    int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
   int contig, tmp, pamidt = 1;
   int ssize, rsize;
   MPID_Datatype *dt_ptr = NULL;
@@ -445,6 +452,13 @@ int MPIDO_Scatterv_simple(const void *sendbuf,
                    MPID_Comm *comm_ptr,
                    int *mpierrno)
 {
+#ifndef HAVE_PAMI_IN_PLACE
+  if (sendbuf == MPI_IN_PLACE)
+  {
+    MPID_Abort (NULL, 0, 1, "'MPI_IN_PLACE' requries support for `PAMI_IN_PLACE`");
+    return -1;
+  }
+#endif
   int snd_contig = 1;
   int rcv_contig = 1;
   int send_size = 0, recv_size = 0;
diff --git a/src/mpid/pamid/subconfigure.m4 b/src/mpid/pamid/subconfigure.m4
index 39abcc1..57ef840 100644
--- a/src/mpid/pamid/subconfigure.m4
+++ b/src/mpid/pamid/subconfigure.m4
@@ -56,6 +56,7 @@ build_mpid_common_sched=yes
 build_mpid_common_datatype=yes
 build_mpid_common_thread=yes
 
+
 ])dnl end AM_COND_IF(BUILD_PAMID,...)
 ])dnl end PREREQ
 AC_DEFUN([PAC_SUBCFG_BODY_]PAC_SUBCFG_AUTO_SUFFIX,[
@@ -186,6 +187,23 @@ PAC_APPEND_FLAG([-I${master_top_srcdir}/src/mpid/common/locks],    [CPPFLAGS])
 PAC_APPEND_FLAG([-I${master_top_srcdir}/src/mpid/common/thread],   [CPPFLAGS])
 PAC_APPEND_FLAG([-I${master_top_srcdir}/src/mpid/common/sched],    [CPPFLAGS])
 
+dnl
+dnl Check for PAMI_IN_PLACE
+dnl
+AC_MSG_CHECKING([for PAMI_IN_PLACE support])
+have_pami_in_place=0
+AC_COMPILE_IFELSE(
+  [AC_LANG_PROGRAM([[#include "pami.h"]],
+                   [[void * foo = PAMI_IN_PLACE;]])],
+  have_pami_in_place=1
+)
+if test "$have_pami_in_place" != "0"; then
+  AC_DEFINE(HAVE_PAMI_IN_PLACE,1,[Define if PAMI_IN_PLACE is defined in pami.h])
+  AC_MSG_RESULT('yes')
+else
+  AC_DEFINE(PAMI_IN_PLACE,((void *) -1L),[Define if PAMI_IN_PLACE is not defined in pami.h])
+  AC_MSG_RESULT('no')
+fi
 
 dnl
 dnl Check for PAMI_CLIENT_NONCONTIG

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

Summary of changes:
 .../pamid/src/coll/allgather/mpido_allgather.c     |   14 ++++++++++++++
 .../pamid/src/coll/allgatherv/mpido_allgatherv.c   |   14 ++++++++++++++
 .../pamid/src/coll/allreduce/mpido_allreduce.c     |   14 ++++++++++++++
 src/mpid/pamid/src/coll/alltoall/mpido_alltoall.c  |   14 ++++++++++++++
 .../pamid/src/coll/alltoallv/mpido_alltoallv.c     |   14 ++++++++++++++
 src/mpid/pamid/src/coll/gather/mpido_gather.c      |   14 ++++++++++++++
 src/mpid/pamid/src/coll/gatherv/mpido_gatherv.c    |   14 ++++++++++++++
 src/mpid/pamid/src/coll/reduce/mpido_reduce.c      |   14 ++++++++++++++
 src/mpid/pamid/src/coll/scan/mpido_scan.c          |   14 ++++++++++++++
 src/mpid/pamid/src/coll/scatter/mpido_scatter.c    |   14 ++++++++++++++
 src/mpid/pamid/src/coll/scatterv/mpido_scatterv.c  |   14 ++++++++++++++
 src/mpid/pamid/src/pamix/pamix.c                   |    1 -
 src/mpid/pamid/subconfigure.m4                     |   18 ++++++++++++++++++
 13 files changed, 172 insertions(+), 1 deletions(-)


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list