[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.2-251-ga94a4b4

Service Account noreply at mpich.org
Wed Apr 20 09:27:36 CDT 2016


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  a94a4b4596115cb60c94581ec57f824ce0638002 (commit)
       via  549a0aebed866185f5e77b41ba28c3348da3b464 (commit)
       via  cdd26cf1edaafdcb3a7fd401427b18c9bf274193 (commit)
      from  8d6c5bafc27599b4ca14f9064cad245ee46e91e4 (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/a94a4b4596115cb60c94581ec57f824ce0638002

commit a94a4b4596115cb60c94581ec57f824ce0638002
Author: Wesley Bland <wesley.bland at intel.com>
Date:   Mon Feb 8 16:30:48 2016 -0600

    coll: Remove the _req funcs from collops
    
    Now that the collectives are in the ADI, there is no longer a need to
    have the MPIR_*_req functions. Remove them from the collops struct and
    get rid of their usage in the non-blocking collectives.
    
    This breaks HCOLL, but the Mellanox developers are working on a separate
    fix.
    
    Signed-off-by: Pavan Balaji <balaji at anl.gov>

diff --git a/src/include/mpiimpl.h b/src/include/mpiimpl.h
index 11bc349..b33d07f 100644
--- a/src/include/mpiimpl.h
+++ b/src/include/mpiimpl.h
@@ -1947,95 +1947,50 @@ typedef struct MPID_Collops {
 
     /* MPI-3 nonblocking collectives */
     int (*Ibarrier_sched)(MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Ibarrier_req)(MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Ibcast_sched)(void *buffer, int count, MPI_Datatype datatype, int root,
                   MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Ibcast_req)(void *buffer, int count, MPI_Datatype datatype, int root,
-                            MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Igather_sched)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
                    int recvcount, MPI_Datatype recvtype, int root, MPID_Comm *comm_ptr,
                    MPID_Sched_t s);
-    int (*Igather_req)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
-                             int recvcount, MPI_Datatype recvtype, int root, MPID_Comm *comm_ptr,
-                             MPID_Request **request);
     int (*Igatherv_sched)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
                     const int *recvcounts, const int *displs, MPI_Datatype recvtype, int root,
                     MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Igatherv_req)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
-                              const int *recvcounts, const int *displs, MPI_Datatype recvtype, int root,
-                              MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Iscatter_sched)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
                     int recvcount, MPI_Datatype recvtype, int root, MPID_Comm *comm_ptr,
                     MPID_Sched_t s);
-    int (*Iscatter_req)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
-                              int recvcount, MPI_Datatype recvtype, int root, MPID_Comm *comm_ptr,
-                              MPID_Request **request);
     int (*Iscatterv_sched)(const void *sendbuf, const int *sendcounts, const int *displs,
                      MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
                      int root, MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Iscatterv_req)(const void *sendbuf, const int *sendcounts, const int *displs,
-                               MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype,
-                               int root, MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Iallgather_sched)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
                       int recvcount, MPI_Datatype recvtype, MPID_Comm *comm_ptr,
                       MPID_Sched_t s);
-    int (*Iallgather_req)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
-                                int recvcount, MPI_Datatype recvtype, MPID_Comm *comm_ptr,
-                                MPID_Request **request);
     int (*Iallgatherv_sched)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
                        const int *recvcounts, const int *displs, MPI_Datatype recvtype,
                        MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Iallgatherv_req)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
-                                 const int *recvcounts, const int *displs, MPI_Datatype recvtype,
-                                 MPID_Comm *comm_ptr, MPID_Request ** request);
     int (*Ialltoall_sched)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
                      int recvcount, MPI_Datatype recvtype, MPID_Comm *comm_ptr,
                      MPID_Sched_t s);
-    int (*Ialltoall_req)(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf,
-                               int recvcount, MPI_Datatype recvtype, MPID_Comm *comm_ptr,
-                               MPID_Request **request);
     int (*Ialltoallv_sched)(const void *sendbuf, const int *sendcounts, const int *sdispls,
                       MPI_Datatype sendtype, void *recvbuf, const int *recvcounts,
                       const int *rdispls, MPI_Datatype recvtype, MPID_Comm *comm_ptr,
                       MPID_Sched_t s);
-    int (*Ialltoallv_req)(const void *sendbuf, const int *sendcounts, const int *sdispls,
-                                MPI_Datatype sendtype, void *recvbuf, const int *recvcounts,
-                                const int *rdispls, MPI_Datatype recvtype, MPID_Comm *comm_ptr,
-                                MPID_Request **request);
     int (*Ialltoallw_sched)(const void *sendbuf, const int *sendcounts, const int *sdispls,
                       const MPI_Datatype *sendtypes, void *recvbuf, const int *recvcounts,
                       const int *rdispls, const MPI_Datatype *recvtypes,
                       MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Ialltoallw_req)(const void *sendbuf, const int *sendcounts, const int *sdispls,
-                                const MPI_Datatype *sendtypes, void *recvbuf, const int *recvcounts,
-                                const int *rdispls, const MPI_Datatype *recvtypes,
-                                MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Ireduce_sched)(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
                    int root, MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Ireduce_req)(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
-                   int root, MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Iallreduce_sched)(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
                       MPI_Op op, MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Iallreduce_req)(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
-                                MPI_Op op, MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Ireduce_scatter_sched)(const void *sendbuf, void *recvbuf, const int *recvcounts,
                            MPI_Datatype datatype, MPI_Op op, MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Ireduce_scatter_req)(const void *sendbuf, void *recvbuf, const int *recvcounts,
-                                     MPI_Datatype datatype, MPI_Op op, MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Ireduce_scatter_block_sched)(const void *sendbuf, void *recvbuf, int recvcount,
                                  MPI_Datatype datatype, MPI_Op op, MPID_Comm *comm_ptr,
                                  MPID_Sched_t s);
-    int (*Ireduce_scatter_block_req)(const void *sendbuf, void *recvbuf, int recvcount,
-                                           MPI_Datatype datatype, MPI_Op op, MPID_Comm *comm_ptr,
-                                           MPID_Request **request);
     int (*Iscan_sched)(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
                  MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Iscan_req)(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
-                           MPID_Comm *comm_ptr, MPID_Request **request);
     int (*Iexscan_sched)(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
                    MPID_Comm *comm_ptr, MPID_Sched_t s);
-    int (*Iexscan_req)(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op,
-                             MPID_Comm *comm_ptr, MPID_Request **request);
 
     struct MPID_Collops *prev_coll_fns; /* when overriding this table, set this to point to the old table */
 
diff --git a/src/mpi/coll/iallgather.c b/src/mpi/coll/iallgather.c
index 6295986..202128c 100644
--- a/src/mpi/coll/iallgather.c
+++ b/src/mpi/coll/iallgather.c
@@ -600,18 +600,6 @@ int MPIR_Iallgather_impl(const void *sendbuf, int sendcount, MPI_Datatype sendty
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Iallgather_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Iallgather_req(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype,comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/iallgatherv.c b/src/mpi/coll/iallgatherv.c
index c3dd807..73050fe 100644
--- a/src/mpi/coll/iallgatherv.c
+++ b/src/mpi/coll/iallgatherv.c
@@ -701,18 +701,6 @@ int MPIR_Iallgatherv_impl(const void *sendbuf, int sendcount, MPI_Datatype sendt
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Iallgatherv_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Iallgatherv_req(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/iallreduce.c b/src/mpi/coll/iallreduce.c
index ff07dfd..6481934 100644
--- a/src/mpi/coll/iallreduce.c
+++ b/src/mpi/coll/iallreduce.c
@@ -655,18 +655,6 @@ int MPIR_Iallreduce_impl(const void *sendbuf, void *recvbuf, int count, MPI_Data
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Iallreduce_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Iallreduce_req(sendbuf, recvbuf, count, datatype, op, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/ialltoall.c b/src/mpi/coll/ialltoall.c
index 5817105..4c23960 100644
--- a/src/mpi/coll/ialltoall.c
+++ b/src/mpi/coll/ialltoall.c
@@ -528,18 +528,6 @@ int MPIR_Ialltoall_impl(const void *sendbuf, int sendcount, MPI_Datatype sendtyp
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Ialltoall_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Ialltoall_req(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/ialltoallv.c b/src/mpi/coll/ialltoallv.c
index 413d2fd..a0c95c0 100644
--- a/src/mpi/coll/ialltoallv.c
+++ b/src/mpi/coll/ialltoallv.c
@@ -257,18 +257,6 @@ int MPIR_Ialltoallv_impl(const void *sendbuf, const int sendcounts[], const int
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Ialltoallv_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Ialltoallv_req(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/ialltoallw.c b/src/mpi/coll/ialltoallw.c
index e88142a..555fd62 100644
--- a/src/mpi/coll/ialltoallw.c
+++ b/src/mpi/coll/ialltoallw.c
@@ -262,18 +262,6 @@ int MPIR_Ialltoallw_impl(const void *sendbuf, const int sendcounts[], const int
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Ialltoallw_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Ialltoallw_req(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/ibarrier.c b/src/mpi/coll/ibarrier.c
index 6375fe7..7e72dcf 100644
--- a/src/mpi/coll/ibarrier.c
+++ b/src/mpi/coll/ibarrier.c
@@ -178,18 +178,6 @@ int MPIR_Ibarrier_impl(MPID_Comm *comm_ptr, MPI_Request *request)
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Ibarrier_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Ibarrier_req(comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     if (comm_ptr->local_size != 1 || comm_ptr->comm_kind == MPID_INTERCOMM) {
         mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
diff --git a/src/mpi/coll/ibcast.c b/src/mpi/coll/ibcast.c
index c40ee36..52dad61 100644
--- a/src/mpi/coll/ibcast.c
+++ b/src/mpi/coll/ibcast.c
@@ -972,18 +972,6 @@ int MPIR_Ibcast_impl(void *buffer, int count, MPI_Datatype datatype, int root, M
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Ibcast_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Ibcast_req(buffer, count, datatype, root, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/iexscan.c b/src/mpi/coll/iexscan.c
index 94c866e..b2d0b58 100644
--- a/src/mpi/coll/iexscan.c
+++ b/src/mpi/coll/iexscan.c
@@ -193,18 +193,6 @@ int MPIR_Iexscan_impl(const void *sendbuf, void *recvbuf, int count, MPI_Datatyp
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Iexscan_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Iexscan_req(sendbuf, recvbuf, count, datatype, op, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/igather.c b/src/mpi/coll/igather.c
index 3ff349a..f45f890 100644
--- a/src/mpi/coll/igather.c
+++ b/src/mpi/coll/igather.c
@@ -531,20 +531,6 @@ int MPIR_Igather_impl(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Igather_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Igather_req(sendbuf, sendcount, sendtype,
-                                                          recvbuf, recvcount, recvtype,
-                                                          root, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/igatherv.c b/src/mpi/coll/igatherv.c
index 0b2bf8d..efdcdbb 100644
--- a/src/mpi/coll/igatherv.c
+++ b/src/mpi/coll/igatherv.c
@@ -120,20 +120,6 @@ int MPIR_Igatherv_impl(const void *sendbuf, int sendcount, MPI_Datatype sendtype
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Igatherv_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Igatherv_req(sendbuf, sendcount, sendtype,
-                                                           recvbuf, recvcounts, displs, recvtype,
-                                                           root, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/ired_scat.c b/src/mpi/coll/ired_scat.c
index 93f03b3..d4767ea 100644
--- a/src/mpi/coll/ired_scat.c
+++ b/src/mpi/coll/ired_scat.c
@@ -1018,20 +1018,6 @@ int MPIR_Ireduce_scatter_impl(const void *sendbuf, void *recvbuf, const int recv
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Ireduce_scatter_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Ireduce_scatter_req(sendbuf, recvbuf, recvcounts,
-                                                                  datatype, op,
-                                                                  comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/ired_scat_block.c b/src/mpi/coll/ired_scat_block.c
index b55f3fd..50daeb0 100644
--- a/src/mpi/coll/ired_scat_block.c
+++ b/src/mpi/coll/ired_scat_block.c
@@ -920,20 +920,6 @@ int MPIR_Ireduce_scatter_block_impl(const void *sendbuf, void *recvbuf, int recv
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Ireduce_scatter_block_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Ireduce_scatter_block_req(sendbuf, recvbuf, recvcount,
-                                                                        datatype, op,
-                                                                        comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/ireduce.c b/src/mpi/coll/ireduce.c
index 6b5742c..4df5d54 100644
--- a/src/mpi/coll/ireduce.c
+++ b/src/mpi/coll/ireduce.c
@@ -776,20 +776,6 @@ int MPIR_Ireduce_impl(const void *sendbuf, void *recvbuf, int count, MPI_Datatyp
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Ireduce_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Ireduce_req(sendbuf, recvbuf, count,
-                                                          datatype, op, root,
-                                                          comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/iscan.c b/src/mpi/coll/iscan.c
index af26274..53456ac 100644
--- a/src/mpi/coll/iscan.c
+++ b/src/mpi/coll/iscan.c
@@ -327,20 +327,6 @@ int MPIR_Iscan_impl(const void *sendbuf, void *recvbuf, int count, MPI_Datatype
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Iscan_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Iscan_req(sendbuf, recvbuf, count,
-                                                        datatype, op,
-                                                        comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/iscatter.c b/src/mpi/coll/iscatter.c
index 8b0efdf..aa8ee1e 100644
--- a/src/mpi/coll/iscatter.c
+++ b/src/mpi/coll/iscatter.c
@@ -556,20 +556,6 @@ int MPIR_Iscatter_impl(const void *sendbuf, int sendcount, MPI_Datatype sendtype
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Iscatter_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Iscatter_req(sendbuf, sendcount, sendtype,
-                                                           recvbuf, recvcount, recvtype,
-                                                           root, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);
diff --git a/src/mpi/coll/iscatterv.c b/src/mpi/coll/iscatterv.c
index badfeb0..6eac943 100644
--- a/src/mpi/coll/iscatterv.c
+++ b/src/mpi/coll/iscatterv.c
@@ -127,20 +127,6 @@ int MPIR_Iscatterv_impl(const void *sendbuf, const int sendcounts[], const int d
 
     *request = MPI_REQUEST_NULL;
 
-    MPIU_Assert(comm_ptr->coll_fns != NULL);
-    if (comm_ptr->coll_fns->Iscatterv_req != NULL) {
-        /* --BEGIN USEREXTENSION-- */
-        mpi_errno = comm_ptr->coll_fns->Iscatterv_req(sendbuf, sendcounts, displs, sendtype,
-                                                           recvbuf, recvcount, recvtype,
-                                                           root, comm_ptr, &reqp);
-        if (reqp) {
-            *request = reqp->handle;
-            if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-            goto fn_exit;
-        }
-        /* --END USEREXTENSION-- */
-    }
-
     mpi_errno = MPID_Sched_next_tag(comm_ptr, &tag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPID_Sched_create(&s);

http://git.mpich.org/mpich.git/commitdiff/549a0aebed866185f5e77b41ba28c3348da3b464

commit 549a0aebed866185f5e77b41ba28c3348da3b464
Author: Wesley Bland <wesley.bland at intel.com>
Date:   Tue Jan 5 14:03:59 2016 -0800

    Add collectives to the ADI and change MPIR_*_impl usage to MPID_*
    
    Step one in removing the function pointers for all of the collective
    functions is to add all of the collective calls to the ADI.  When
    these functions are called, they will just call back up to the MPIR
    functions in the MPI layer.  This gives the device a simple way to
    override collectives.  Just change the MPID_collective function to
    call an internal device function instead of calling back up to the
    MPIR_*_impl version.  For all uses above the device, change to call
    MPID_collective instead.  This lets the device override the default
    implementation easily if desired.
    
    Signed-off-by: Pavan Balaji <balaji at anl.gov>

diff --git a/src/mpi/coll/allgather.c b/src/mpi/coll/allgather.c
index b5a6240..db1c37e 100644
--- a/src/mpi/coll/allgather.c
+++ b/src/mpi/coll/allgather.c
@@ -696,7 +696,7 @@ int MPIR_Allgather_inter (
     newcomm_ptr = comm_ptr->local_comm;
 
     if (sendcount != 0) {
-        mpi_errno = MPIR_Gather_impl(sendbuf, sendcount, sendtype, tmp_buf, sendcount,
+        mpi_errno = MPID_Gather(sendbuf, sendcount, sendtype, tmp_buf, sendcount,
                                      sendtype, 0, newcomm_ptr, errflag);
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
@@ -980,9 +980,9 @@ int MPI_Allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Allgather_impl(sendbuf, sendcount, sendtype,
-                                    recvbuf, recvcount, recvtype,
-                                    comm_ptr, &errflag);
+    mpi_errno = MPID_Allgather(sendbuf, sendcount, sendtype,
+                               recvbuf, recvcount, recvtype,
+                               comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
     
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/allgatherv.c b/src/mpi/coll/allgatherv.c
index 0577c2c..621e08b 100644
--- a/src/mpi/coll/allgatherv.c
+++ b/src/mpi/coll/allgatherv.c
@@ -792,7 +792,7 @@ int MPIR_Allgatherv_inter (
     if (comm_ptr->is_low_group) {
         /* gatherv from right group */
         root = (rank == 0) ? MPI_ROOT : MPI_PROC_NULL;
-        mpi_errno = MPIR_Gatherv_impl(sendbuf, sendcount, sendtype, recvbuf,
+        mpi_errno = MPID_Gatherv(sendbuf, sendcount, sendtype, recvbuf,
                                       recvcounts, displs, recvtype, root,
                                       comm_ptr, errflag);
         if (mpi_errno) {
@@ -803,7 +803,7 @@ int MPIR_Allgatherv_inter (
         }
         /* gatherv to right group */
         root = 0;
-        mpi_errno = MPIR_Gatherv_impl(sendbuf, sendcount, sendtype, recvbuf,
+        mpi_errno = MPID_Gatherv(sendbuf, sendcount, sendtype, recvbuf,
                                       recvcounts, displs, recvtype, root,
                                       comm_ptr, errflag);
         if (mpi_errno) {
@@ -816,7 +816,7 @@ int MPIR_Allgatherv_inter (
     else {
         /* gatherv to left group  */
         root = 0;
-        mpi_errno = MPIR_Gatherv_impl(sendbuf, sendcount, sendtype, recvbuf,
+        mpi_errno = MPID_Gatherv(sendbuf, sendcount, sendtype, recvbuf,
                                       recvcounts, displs, recvtype, root,
                                       comm_ptr, errflag);
         if (mpi_errno) {
@@ -827,7 +827,7 @@ int MPIR_Allgatherv_inter (
         }
         /* gatherv from left group */
         root = (rank == 0) ? MPI_ROOT : MPI_PROC_NULL;
-        mpi_errno = MPIR_Gatherv_impl(sendbuf, sendcount, sendtype, recvbuf,
+        mpi_errno = MPID_Gatherv(sendbuf, sendcount, sendtype, recvbuf,
                                       recvcounts, displs, recvtype, root,
                                       comm_ptr, errflag);
         if (mpi_errno) {
@@ -1102,7 +1102,7 @@ int MPI_Allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Allgatherv_impl(sendbuf, sendcount, sendtype,
+    mpi_errno = MPID_Allgatherv(sendbuf, sendcount, sendtype,
                                      recvbuf, recvcounts, displs, recvtype,
                                      comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
diff --git a/src/mpi/coll/allreduce.c b/src/mpi/coll/allreduce.c
index 550066a..83b206c 100644
--- a/src/mpi/coll/allreduce.c
+++ b/src/mpi/coll/allreduce.c
@@ -223,7 +223,7 @@ int MPIR_Allreduce_intra (
                 /* IN_PLACE and not root of reduce. Data supplied to this
                    allreduce is in recvbuf. Pass that as the sendbuf to reduce. */
 			
-                mpi_errno = MPIR_Reduce_impl(recvbuf, NULL, count, datatype, op, 0, comm_ptr->node_comm, errflag);
+                mpi_errno = MPID_Reduce(recvbuf, NULL, count, datatype, op, 0, comm_ptr->node_comm, errflag);
                 if (mpi_errno) {
                     /* for communication errors, just record the error but continue */
                     *errflag = MPIR_ERR_GET_CLASS(mpi_errno);
@@ -231,7 +231,7 @@ int MPIR_Allreduce_intra (
                     MPIR_ERR_ADD(mpi_errno_ret, mpi_errno);
                 }
             } else {
-                mpi_errno = MPIR_Reduce_impl(sendbuf, recvbuf, count, datatype, op, 0, comm_ptr->node_comm, errflag);
+                mpi_errno = MPID_Reduce(sendbuf, recvbuf, count, datatype, op, 0, comm_ptr->node_comm, errflag);
                 if (mpi_errno) {
                     /* for communication errors, just record the error but continue */
                     *errflag = MPIR_ERR_GET_CLASS(mpi_errno);
@@ -261,7 +261,7 @@ int MPIR_Allreduce_intra (
 
         /* now broadcast the result among local processes */
         if (comm_ptr->node_comm != NULL) {
-            mpi_errno = MPIR_Bcast_impl(recvbuf, count, datatype, 0, comm_ptr->node_comm, errflag);
+            mpi_errno = MPID_Bcast(recvbuf, count, datatype, 0, comm_ptr->node_comm, errflag);
             if (mpi_errno) {
                 /* for communication errors, just record the error but continue */
                 *errflag = MPIR_ERR_GET_CLASS(mpi_errno);
@@ -284,7 +284,7 @@ int MPIR_Allreduce_intra (
     if (!is_homogeneous) {
         /* heterogeneous. To get the same result on all processes, we
            do a reduce to 0 and then broadcast. */
-        mpi_errno = MPIR_Reduce_impl ( sendbuf, recvbuf, count, datatype,
+        mpi_errno = MPID_Reduce( sendbuf, recvbuf, count, datatype,
                                        op, 0, comm_ptr, errflag );
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
@@ -293,7 +293,7 @@ int MPIR_Allreduce_intra (
             MPIR_ERR_ADD(mpi_errno_ret, mpi_errno);
         }
 
-        mpi_errno = MPIR_Bcast_impl( recvbuf, count, datatype, 0, comm_ptr, errflag );
+        mpi_errno = MPID_Bcast( recvbuf, count, datatype, 0, comm_ptr, errflag );
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
             *errflag = MPIR_ERR_GET_CLASS(mpi_errno);
@@ -682,7 +682,7 @@ int MPIR_Allreduce_inter (
     }
 
     /* Do a local broadcast on this intracommunicator */
-    mpi_errno = MPIR_Bcast_impl(recvbuf, count, datatype,
+    mpi_errno = MPID_Bcast(recvbuf, count, datatype,
                                 0, newcomm_ptr, errflag);
     if (mpi_errno) {
         /* for communication errors, just record the error but continue */
@@ -889,7 +889,7 @@ int MPI_Allreduce(const void *sendbuf, void *recvbuf, int count,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Allreduce_impl(sendbuf, recvbuf, count, datatype, op, comm_ptr, &errflag);
+    mpi_errno = MPID_Allreduce(sendbuf, recvbuf, count, datatype, op, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/alltoall.c b/src/mpi/coll/alltoall.c
index a9a6614..60a0fae 100644
--- a/src/mpi/coll/alltoall.c
+++ b/src/mpi/coll/alltoall.c
@@ -719,7 +719,7 @@ int MPI_Alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Alltoall_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, &errflag);
+    mpi_errno = MPID_Alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/alltoallv.c b/src/mpi/coll/alltoallv.c
index 047cef7..e931899 100644
--- a/src/mpi/coll/alltoallv.c
+++ b/src/mpi/coll/alltoallv.c
@@ -524,7 +524,7 @@ int MPI_Alltoallv(const void *sendbuf, const int *sendcounts,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Alltoallv_impl(sendbuf, sendcounts, sdispls,
+    mpi_errno = MPID_Alltoallv(sendbuf, sendcounts, sdispls,
                                     sendtype, recvbuf, recvcounts,
                                     rdispls, recvtype, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
diff --git a/src/mpi/coll/alltoallw.c b/src/mpi/coll/alltoallw.c
index b00dd9c..b7fdc7e 100644
--- a/src/mpi/coll/alltoallw.c
+++ b/src/mpi/coll/alltoallw.c
@@ -529,7 +529,7 @@ int MPI_Alltoallw(const void *sendbuf, const int sendcounts[],
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Alltoallw_impl(sendbuf, sendcounts, sdispls,
+    mpi_errno = MPID_Alltoallw(sendbuf, sendcounts, sdispls,
                                     sendtypes, recvbuf, recvcounts,
                                     rdispls, recvtypes, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
diff --git a/src/mpi/coll/barrier.c b/src/mpi/coll/barrier.c
index fa90b6d..158ab46 100644
--- a/src/mpi/coll/barrier.c
+++ b/src/mpi/coll/barrier.c
@@ -78,7 +78,7 @@ static int barrier_smp_intra(MPID_Comm *comm_ptr, MPIR_Errflag_t *errflag)
     /* do the intranode barrier on all nodes */
     if (comm_ptr->node_comm != NULL)
     {
-        mpi_errno = MPIR_Barrier_impl(comm_ptr->node_comm, errflag);
+        mpi_errno = MPID_Barrier(comm_ptr->node_comm, errflag);
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
             *errflag = MPIR_ERR_GET_CLASS(mpi_errno);
@@ -89,7 +89,7 @@ static int barrier_smp_intra(MPID_Comm *comm_ptr, MPIR_Errflag_t *errflag)
 
     /* do the barrier across roots of all nodes */
     if (comm_ptr->node_roots_comm != NULL) {
-        mpi_errno = MPIR_Barrier_impl(comm_ptr->node_roots_comm, errflag);
+        mpi_errno = MPID_Barrier(comm_ptr->node_roots_comm, errflag);
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
             *errflag = MPIR_ERR_GET_CLASS(mpi_errno);
@@ -104,7 +104,7 @@ static int barrier_smp_intra(MPID_Comm *comm_ptr, MPIR_Errflag_t *errflag)
     if (comm_ptr->node_comm != NULL)
     {
         int i=0;
-        mpi_errno = MPIR_Bcast_impl(&i, 1, MPI_BYTE, 0, comm_ptr->node_comm, errflag);
+        mpi_errno = MPID_Bcast(&i, 1, MPI_BYTE, 0, comm_ptr->node_comm, errflag);
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
             *errflag = MPIR_ERR_GET_CLASS(mpi_errno);
@@ -406,7 +406,7 @@ int MPI_Barrier( MPI_Comm comm )
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Barrier_impl(comm_ptr, &errflag);
+    mpi_errno = MPID_Barrier(comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
     
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/bcast.c b/src/mpi/coll/bcast.c
index 01f65a6..19dcfbd 100644
--- a/src/mpi/coll/bcast.c
+++ b/src/mpi/coll/bcast.c
@@ -1582,7 +1582,7 @@ int MPI_Bcast( void *buffer, int count, MPI_Datatype datatype, int root,
 
     /* ... body of routine ...  */
     
-    mpi_errno = MPIR_Bcast_impl( buffer, count, datatype, root, comm_ptr, &errflag );
+    mpi_errno = MPID_Bcast( buffer, count, datatype, root, comm_ptr, &errflag );
     if (mpi_errno) goto fn_fail;
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/exscan.c b/src/mpi/coll/exscan.c
index b435ab1..24209c9 100644
--- a/src/mpi/coll/exscan.c
+++ b/src/mpi/coll/exscan.c
@@ -396,7 +396,7 @@ int MPI_Exscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datat
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Exscan_impl(sendbuf, recvbuf, count, datatype, op, comm_ptr, &errflag);
+    mpi_errno = MPID_Exscan(sendbuf, recvbuf, count, datatype, op, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/gather.c b/src/mpi/coll/gather.c
index 741ce5b..afe60f4 100644
--- a/src/mpi/coll/gather.c
+++ b/src/mpi/coll/gather.c
@@ -593,7 +593,7 @@ int MPIR_Gather_inter(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
             newcomm_ptr = comm_ptr->local_comm;
 
             /* now do the a local gather on this intracommunicator */
-            mpi_errno = MPIR_Gather_impl(sendbuf, sendcount, sendtype,
+            mpi_errno = MPID_Gather(sendbuf, sendcount, sendtype,
                                          tmp_buf, sendcount, sendtype, 0,
                                          newcomm_ptr, errflag);
             if (mpi_errno) {
@@ -886,7 +886,7 @@ int MPI_Gather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Gather_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm_ptr, &errflag);
+    mpi_errno = MPID_Gather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
         
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/gatherv.c b/src/mpi/coll/gatherv.c
index ae6cd29..5648845 100644
--- a/src/mpi/coll/gatherv.c
+++ b/src/mpi/coll/gatherv.c
@@ -415,7 +415,7 @@ int MPI_Gatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Gatherv_impl(sendbuf, sendcount, sendtype,
+    mpi_errno = MPID_Gatherv(sendbuf, sendcount, sendtype,
                                   recvbuf, recvcounts, displs, recvtype,
                                   root, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
diff --git a/src/mpi/coll/iallgather.c b/src/mpi/coll/iallgather.c
index e596d79..6295986 100644
--- a/src/mpi/coll/iallgather.c
+++ b/src/mpi/coll/iallgather.c
@@ -734,7 +734,7 @@ int MPI_Iallgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Iallgather_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, request);
+    mpi_errno = MPID_Iallgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/iallgatherv.c b/src/mpi/coll/iallgatherv.c
index cd66a23..c3dd807 100644
--- a/src/mpi/coll/iallgatherv.c
+++ b/src/mpi/coll/iallgatherv.c
@@ -844,7 +844,7 @@ int MPI_Iallgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, v
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Iallgatherv_impl(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm_ptr, request);
+    mpi_errno = MPID_Iallgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/iallreduce.c b/src/mpi/coll/iallreduce.c
index 7b31bd0..ff07dfd 100644
--- a/src/mpi/coll/iallreduce.c
+++ b/src/mpi/coll/iallreduce.c
@@ -789,7 +789,7 @@ int MPI_Iallreduce(const void *sendbuf, void *recvbuf, int count,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Iallreduce_impl(sendbuf, recvbuf, count, datatype, op, comm_ptr, request);
+    mpi_errno = MPID_Iallreduce(sendbuf, recvbuf, count, datatype, op, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/ialltoall.c b/src/mpi/coll/ialltoall.c
index b9a3dd4..5817105 100644
--- a/src/mpi/coll/ialltoall.c
+++ b/src/mpi/coll/ialltoall.c
@@ -663,7 +663,7 @@ int MPI_Ialltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ialltoall_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, request);
+    mpi_errno = MPID_Ialltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/ialltoallv.c b/src/mpi/coll/ialltoallv.c
index 887903f..413d2fd 100644
--- a/src/mpi/coll/ialltoallv.c
+++ b/src/mpi/coll/ialltoallv.c
@@ -398,7 +398,7 @@ int MPI_Ialltoallv(const void *sendbuf, const int sendcounts[], const int sdispl
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ialltoallv_impl(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr, request);
+    mpi_errno = MPID_Ialltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/ialltoallw.c b/src/mpi/coll/ialltoallw.c
index 0527332..e88142a 100644
--- a/src/mpi/coll/ialltoallw.c
+++ b/src/mpi/coll/ialltoallw.c
@@ -386,7 +386,7 @@ int MPI_Ialltoallw(const void *sendbuf, const int sendcounts[], const int sdispl
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ialltoallw_impl(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr, request);
+    mpi_errno = MPID_Ialltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/ibarrier.c b/src/mpi/coll/ibarrier.c
index 1d9826d..6375fe7 100644
--- a/src/mpi/coll/ibarrier.c
+++ b/src/mpi/coll/ibarrier.c
@@ -285,7 +285,7 @@ int MPI_Ibarrier(MPI_Comm comm, MPI_Request *request)
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ibarrier_impl(comm_ptr, request);
+    mpi_errno = MPID_Ibarrier(comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/ibcast.c b/src/mpi/coll/ibcast.c
index 54f7545..c40ee36 100644
--- a/src/mpi/coll/ibcast.c
+++ b/src/mpi/coll/ibcast.c
@@ -1085,7 +1085,7 @@ int MPI_Ibcast(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Com
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ibcast_impl(buffer, count, datatype, root, comm_ptr, request);
+    mpi_errno = MPID_Ibcast(buffer, count, datatype, root, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/iexscan.c b/src/mpi/coll/iexscan.c
index 9a5cefe..94c866e 100644
--- a/src/mpi/coll/iexscan.c
+++ b/src/mpi/coll/iexscan.c
@@ -320,7 +320,7 @@ int MPI_Iexscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype data
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Iexscan_impl(sendbuf, recvbuf, count, datatype, op, comm_ptr, request);
+    mpi_errno = MPID_Iexscan(sendbuf, recvbuf, count, datatype, op, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/igather.c b/src/mpi/coll/igather.c
index 2eb441e..3ff349a 100644
--- a/src/mpi/coll/igather.c
+++ b/src/mpi/coll/igather.c
@@ -718,7 +718,7 @@ int MPI_Igather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Igather_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm_ptr, request);
+    mpi_errno = MPID_Igather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/igatherv.c b/src/mpi/coll/igatherv.c
index 547fcc3..0b2bf8d 100644
--- a/src/mpi/coll/igatherv.c
+++ b/src/mpi/coll/igatherv.c
@@ -318,7 +318,7 @@ int MPI_Igatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype, void
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Igatherv_impl(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm_ptr, request);
+    mpi_errno = MPID_Igatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, root, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/ired_scat.c b/src/mpi/coll/ired_scat.c
index fa1227b..93f03b3 100644
--- a/src/mpi/coll/ired_scat.c
+++ b/src/mpi/coll/ired_scat.c
@@ -1152,7 +1152,7 @@ int MPI_Ireduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ireduce_scatter_impl(sendbuf, recvbuf, recvcounts, datatype, op, comm_ptr, request);
+    mpi_errno = MPID_Ireduce_scatter(sendbuf, recvbuf, recvcounts, datatype, op, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/ired_scat_block.c b/src/mpi/coll/ired_scat_block.c
index 05d4367..b55f3fd 100644
--- a/src/mpi/coll/ired_scat_block.c
+++ b/src/mpi/coll/ired_scat_block.c
@@ -1049,7 +1049,7 @@ int MPI_Ireduce_scatter_block(const void *sendbuf, void *recvbuf,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ireduce_scatter_block_impl(sendbuf, recvbuf, recvcount, datatype, op, comm_ptr, request);
+    mpi_errno = MPID_Ireduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/ireduce.c b/src/mpi/coll/ireduce.c
index bda2b4b..6b5742c 100644
--- a/src/mpi/coll/ireduce.c
+++ b/src/mpi/coll/ireduce.c
@@ -921,7 +921,7 @@ int MPI_Ireduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype data
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ireduce_impl(sendbuf, recvbuf, count, datatype, op, root, comm_ptr, request);
+    mpi_errno = MPID_Ireduce(sendbuf, recvbuf, count, datatype, op, root, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/iscan.c b/src/mpi/coll/iscan.c
index 9b0fbca..af26274 100644
--- a/src/mpi/coll/iscan.c
+++ b/src/mpi/coll/iscan.c
@@ -457,7 +457,7 @@ int MPI_Iscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype dataty
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Iscan_impl(sendbuf, recvbuf, count, datatype, op, comm_ptr, request);
+    mpi_errno = MPID_Iscan(sendbuf, recvbuf, count, datatype, op, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/iscatter.c b/src/mpi/coll/iscatter.c
index 390f788..8b0efdf 100644
--- a/src/mpi/coll/iscatter.c
+++ b/src/mpi/coll/iscatter.c
@@ -730,7 +730,7 @@ int MPI_Iscatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Iscatter_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm_ptr, request);
+    mpi_errno = MPID_Iscatter(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, root, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/iscatterv.c b/src/mpi/coll/iscatterv.c
index 549e2f5..badfeb0 100644
--- a/src/mpi/coll/iscatterv.c
+++ b/src/mpi/coll/iscatterv.c
@@ -332,7 +332,7 @@ int MPI_Iscatterv(const void *sendbuf, const int sendcounts[], const int displs[
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Iscatterv_impl(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm_ptr, request);
+    mpi_errno = MPID_Iscatterv(sendbuf, sendcounts, displs, sendtype, recvbuf, recvcount, recvtype, root, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/red_scat.c b/src/mpi/coll/red_scat.c
index 9e26f0d..83a41ff 100644
--- a/src/mpi/coll/red_scat.c
+++ b/src/mpi/coll/red_scat.c
@@ -1218,8 +1218,8 @@ int MPI_Reduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Reduce_scatter_impl(sendbuf, recvbuf, recvcounts,
-                                         datatype, op, comm_ptr, &errflag);
+    mpi_errno = MPID_Reduce_scatter(sendbuf, recvbuf, recvcounts,
+                                    datatype, op, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/red_scat_block.c b/src/mpi/coll/red_scat_block.c
index 1ca4b8e..6afeea2 100644
--- a/src/mpi/coll/red_scat_block.c
+++ b/src/mpi/coll/red_scat_block.c
@@ -980,7 +980,7 @@ int MPIR_Reduce_scatter_block_inter (
 
     newcomm_ptr = comm_ptr->local_comm;
 
-    mpi_errno = MPIR_Scatter_impl(tmp_buf, recvcount, datatype, recvbuf,
+    mpi_errno = MPID_Scatter(tmp_buf, recvcount, datatype, recvbuf,
                                   recvcount, datatype, 0, newcomm_ptr, errflag);
     if (mpi_errno) {
         /* for communication errors, just record the error but continue */
@@ -1185,7 +1185,7 @@ int MPI_Reduce_scatter_block(const void *sendbuf, void *recvbuf,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Reduce_scatter_block_impl(sendbuf, recvbuf, recvcount, 
+    mpi_errno = MPID_Reduce_scatter_block(sendbuf, recvbuf, recvcount,
                                           datatype, op, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
 
diff --git a/src/mpi/coll/reduce.c b/src/mpi/coll/reduce.c
index 9e7575a..4c29171 100644
--- a/src/mpi/coll/reduce.c
+++ b/src/mpi/coll/reduce.c
@@ -781,7 +781,7 @@ int MPIR_Reduce_intra (
         /* do the intranode reduce on all nodes other than the root's node */
         if (comm_ptr->node_comm != NULL &&
             MPIU_Get_intranode_rank(comm_ptr, root) == -1) {
-            mpi_errno = MPIR_Reduce_impl(sendbuf, tmp_buf, count, datatype,
+            mpi_errno = MPID_Reduce(sendbuf, tmp_buf, count, datatype,
                                          op, 0, comm_ptr->node_comm, errflag);
             if (mpi_errno) {
                 /* for communication errors, just record the error but continue */
@@ -797,7 +797,7 @@ int MPIR_Reduce_intra (
                 /* I am not on root's node.  Use tmp_buf if we
                    participated in the first reduce, otherwise use sendbuf */
                 const void *buf = (comm_ptr->node_comm == NULL ? sendbuf : tmp_buf);
-                mpi_errno = MPIR_Reduce_impl(buf, NULL, count, datatype,
+                mpi_errno = MPID_Reduce(buf, NULL, count, datatype,
                                              op, MPIU_Get_internode_rank(comm_ptr, root),
                                              comm_ptr->node_roots_comm, errflag);
                 if (mpi_errno) {
@@ -812,7 +812,7 @@ int MPIR_Reduce_intra (
                     /* I am not the root though. I don't have a valid recvbuf.
                        Use tmp_buf as recvbuf. */
 
-                    mpi_errno = MPIR_Reduce_impl(sendbuf, tmp_buf, count, datatype,
+                    mpi_errno = MPID_Reduce(sendbuf, tmp_buf, count, datatype,
                                                  op, MPIU_Get_internode_rank(comm_ptr, root),
                                                  comm_ptr->node_roots_comm, errflag);
                     if (mpi_errno) {
@@ -828,7 +828,7 @@ int MPIR_Reduce_intra (
                 else {
                     /* I am the root. in_place is automatically handled. */
 
-                    mpi_errno = MPIR_Reduce_impl(sendbuf, recvbuf, count, datatype,
+                    mpi_errno = MPID_Reduce(sendbuf, recvbuf, count, datatype,
                                                  op, MPIU_Get_internode_rank(comm_ptr, root),
                                                  comm_ptr->node_roots_comm, errflag);
                     if (mpi_errno) {
@@ -848,7 +848,7 @@ int MPIR_Reduce_intra (
         /* do the intranode reduce on the root's node */
         if (comm_ptr->node_comm != NULL &&
             MPIU_Get_intranode_rank(comm_ptr, root) != -1) { 
-            mpi_errno = MPIR_Reduce_impl(sendbuf, recvbuf, count, datatype,
+            mpi_errno = MPID_Reduce(sendbuf, recvbuf, count, datatype,
                                          op, MPIU_Get_intranode_rank(comm_ptr, root),
                                          comm_ptr->node_comm, errflag);
             if (mpi_errno) {
@@ -1254,7 +1254,7 @@ int MPI_Reduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datat
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Reduce_impl(sendbuf, recvbuf, count, datatype, op, root, comm_ptr, &errflag);
+    mpi_errno = MPID_Reduce(sendbuf, recvbuf, count, datatype, op, root, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
     
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/scan.c b/src/mpi/coll/scan.c
index 4715f6a..c19620c 100644
--- a/src/mpi/coll/scan.c
+++ b/src/mpi/coll/scan.c
@@ -291,7 +291,7 @@ int MPIR_Scan(
        one process, just copy the raw data. */
     if (comm_ptr->node_comm != NULL)
     {
-        mpi_errno = MPIR_Scan_impl(sendbuf, recvbuf, count, datatype, 
+        mpi_errno = MPID_Scan(sendbuf, recvbuf, count, datatype, 
                                    op, comm_ptr->node_comm, errflag);
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
@@ -347,7 +347,7 @@ int MPIR_Scan(
        process of node 3. */
     if (comm_ptr->node_roots_comm != NULL)
     {
-        mpi_errno = MPIR_Scan_impl(localfulldata, prefulldata, count, datatype,
+        mpi_errno = MPID_Scan(localfulldata, prefulldata, count, datatype,
                                    op, comm_ptr->node_roots_comm, errflag);
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
@@ -391,7 +391,7 @@ int MPIR_Scan(
        reduce it with recvbuf to get final result if nessesary. */
 
     if (comm_ptr->node_comm != NULL) {
-        mpi_errno = MPIR_Bcast_impl(&noneed, 1, MPI_INT, 0, comm_ptr->node_comm, errflag);
+        mpi_errno = MPID_Bcast(&noneed, 1, MPI_INT, 0, comm_ptr->node_comm, errflag);
         if (mpi_errno) {
             /* for communication errors, just record the error but continue */
             *errflag = MPIR_ERR_GET_CLASS(mpi_errno);
@@ -402,7 +402,7 @@ int MPIR_Scan(
 
     if (noneed == 0) {
         if (comm_ptr->node_comm != NULL) {
-            mpi_errno = MPIR_Bcast_impl(tempbuf, count, datatype, 0, 
+            mpi_errno = MPID_Bcast(tempbuf, count, datatype, 0, 
 					comm_ptr->node_comm, errflag);
             if (mpi_errno) {
                 /* for communication errors, just record the error but continue */
@@ -571,7 +571,7 @@ int MPI_Scan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatyp
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Scan_impl(sendbuf, recvbuf, count, datatype, op, comm_ptr, &errflag);
+    mpi_errno = MPID_Scan(sendbuf, recvbuf, count, datatype, op, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/coll/scatter.c b/src/mpi/coll/scatter.c
index f8068c6..590b26a 100644
--- a/src/mpi/coll/scatter.c
+++ b/src/mpi/coll/scatter.c
@@ -511,7 +511,7 @@ int MPIR_Scatter_inter(const void *sendbuf, int sendcount, MPI_Datatype sendtype
             newcomm_ptr = comm_ptr->local_comm;
             
             /* now do the usual scatter on this intracommunicator */
-            mpi_errno = MPIR_Scatter_impl(tmp_buf, recvcount, recvtype,
+            mpi_errno = MPID_Scatter(tmp_buf, recvcount, recvtype,
                                           recvbuf, recvcount, recvtype, 0,
                                           newcomm_ptr, errflag);
             if (mpi_errno) {
@@ -784,7 +784,7 @@ int MPI_Scatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Scatter_impl(sendbuf, sendcount, sendtype,
+    mpi_errno = MPID_Scatter(sendbuf, sendcount, sendtype,
                                   recvbuf, recvcount, recvtype, root,
                                   comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
diff --git a/src/mpi/coll/scatterv.c b/src/mpi/coll/scatterv.c
index 67bf285..3945e50 100644
--- a/src/mpi/coll/scatterv.c
+++ b/src/mpi/coll/scatterv.c
@@ -366,7 +366,7 @@ int MPI_Scatterv(const void *sendbuf, const int *sendcounts, const int *displs,
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Scatterv_impl(sendbuf, sendcounts, displs, sendtype,
+    mpi_errno = MPID_Scatterv(sendbuf, sendcounts, displs, sendtype,
                                    recvbuf, recvcount, recvtype,
                                    root, comm_ptr, &errflag);
     if (mpi_errno) goto fn_fail;
diff --git a/src/mpi/comm/comm_create.c b/src/mpi/comm/comm_create.c
index eacddd7..033a5a9 100644
--- a/src/mpi/comm/comm_create.c
+++ b/src/mpi/comm/comm_create.c
@@ -377,10 +377,10 @@ PMPI_LOCAL int MPIR_Comm_create_inter(MPID_Comm *comm_ptr, MPID_Group *group_ptr
         if (mpi_errno) { MPIR_ERR_POP( mpi_errno ); }
 
         /* Broadcast to the other members of the local group */
-        mpi_errno = MPIR_Bcast_impl( rinfo, 2, MPI_INT, 0,
+        mpi_errno = MPID_Bcast( rinfo, 2, MPI_INT, 0,
                                      comm_ptr->local_comm, &errflag);
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
-        mpi_errno = MPIR_Bcast_impl( remote_mapping, remote_size, MPI_INT, 0,
+        mpi_errno = MPID_Bcast( remote_mapping, remote_size, MPI_INT, 0,
                                      comm_ptr->local_comm, &errflag);
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
         MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
@@ -388,7 +388,7 @@ PMPI_LOCAL int MPIR_Comm_create_inter(MPID_Comm *comm_ptr, MPID_Group *group_ptr
     else {
         /* The other processes */
         /* Broadcast to the other members of the local group */
-        mpi_errno = MPIR_Bcast_impl( rinfo, 2, MPI_INT, 0,
+        mpi_errno = MPID_Bcast( rinfo, 2, MPI_INT, 0,
                                      comm_ptr->local_comm, &errflag);
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
         MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
@@ -399,7 +399,7 @@ PMPI_LOCAL int MPIR_Comm_create_inter(MPID_Comm *comm_ptr, MPID_Group *group_ptr
         MPIU_CHKLMEM_MALLOC(remote_mapping,int*,
                             remote_size*sizeof(int),
                             mpi_errno,"remote_mapping");
-        mpi_errno = MPIR_Bcast_impl( remote_mapping, remote_size, MPI_INT, 0,
+        mpi_errno = MPID_Bcast( remote_mapping, remote_size, MPI_INT, 0,
                                      comm_ptr->local_comm, &errflag);
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
         MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
diff --git a/src/mpi/comm/comm_split.c b/src/mpi/comm/comm_split.c
index 968b4ab..6d22cc1 100644
--- a/src/mpi/comm/comm_split.c
+++ b/src/mpi/comm/comm_split.c
@@ -163,7 +163,7 @@ int MPIR_Comm_split_impl(MPID_Comm *comm_ptr, int color, int key, MPID_Comm **ne
 	local_comm_ptr = comm_ptr;
     }
     /* Gather information on the local group of processes */
-    mpi_errno = MPIR_Allgather_impl( MPI_IN_PLACE, 2, MPI_INT, table, 2, MPI_INT, local_comm_ptr, &errflag );
+    mpi_errno = MPID_Allgather( MPI_IN_PLACE, 2, MPI_INT, table, 2, MPI_INT, local_comm_ptr, &errflag );
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
 
@@ -210,7 +210,7 @@ int MPIR_Comm_split_impl(MPID_Comm *comm_ptr, int color, int key, MPID_Comm **ne
 	   same color */
 	mypair.color = color;
 	mypair.key   = key;
-	mpi_errno = MPIR_Allgather_impl( &mypair, 2, MPI_INT, remotetable, 2, MPI_INT,
+	mpi_errno = MPID_Allgather( &mypair, 2, MPI_INT, remotetable, 2, MPI_INT,
                                          comm_ptr, &errflag );
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
         MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
@@ -259,13 +259,13 @@ int MPIR_Comm_split_impl(MPID_Comm *comm_ptr, int color, int key, MPID_Comm **ne
 				       &remote_context_id, 1, MPIU_CONTEXT_ID_T_DATATYPE, 
 				       0, 0, comm_ptr, MPI_STATUS_IGNORE, &errflag );
 	    if (mpi_errno) { MPIR_ERR_POP( mpi_errno ); }
-	    mpi_errno = MPIR_Bcast_impl( &remote_context_id, 1, MPIU_CONTEXT_ID_T_DATATYPE, 0, local_comm_ptr, &errflag );
+	    mpi_errno = MPID_Bcast( &remote_context_id, 1, MPIU_CONTEXT_ID_T_DATATYPE, 0, local_comm_ptr, &errflag );
             if (mpi_errno) MPIR_ERR_POP(mpi_errno);
             MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
 	}
 	else {
 	    /* Broadcast to the other members of the local group */
-	    mpi_errno = MPIR_Bcast_impl( &remote_context_id, 1, MPIU_CONTEXT_ID_T_DATATYPE, 0, local_comm_ptr, &errflag );
+	    mpi_errno = MPID_Bcast( &remote_context_id, 1, MPIU_CONTEXT_ID_T_DATATYPE, 0, local_comm_ptr, &errflag );
             if (mpi_errno) MPIR_ERR_POP(mpi_errno);
             MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
 	}
diff --git a/src/mpi/comm/contextid.c b/src/mpi/comm/contextid.c
index e4ca2e7..e071b9e 100644
--- a/src/mpi/comm/contextid.c
+++ b/src/mpi/comm/contextid.c
@@ -493,7 +493,7 @@ int MPIR_Get_contextid_sparse_group(MPID_Comm * comm_ptr, MPID_Group * group_ptr
                                              &errflag);
         }
         else {
-            mpi_errno = MPIR_Allreduce_impl(MPI_IN_PLACE, st.local_mask, MPIR_MAX_CONTEXT_MASK + 1,
+            mpi_errno = MPID_Allreduce(MPI_IN_PLACE, st.local_mask, MPIR_MAX_CONTEXT_MASK + 1,
                                             MPI_INT, MPI_BAND, comm_ptr, &errflag);
         }
         if (mpi_errno)
@@ -599,7 +599,7 @@ int MPIR_Get_contextid_sparse_group(MPID_Comm * comm_ptr, MPID_Group * group_ptr
                                                  comm_ptr, group_ptr, coll_tag, &errflag);
             }
             else {
-                mpi_errno = MPIR_Allreduce_impl(MPI_IN_PLACE, &minfree, 1, MPI_INT,
+                mpi_errno = MPID_Allreduce(MPI_IN_PLACE, &minfree, 1, MPI_INT,
                                                 MPI_MIN, comm_ptr, &errflag);
             }
 
@@ -781,7 +781,7 @@ static int sched_cb_gcn_allocate_cid(MPID_Comm * comm, int tag, void *state)
             int minfree;
             context_mask_stats(&nfree, &ntotal);
             minfree = nfree;
-            MPIR_Allreduce_impl(MPI_IN_PLACE, &minfree, 1, MPI_INT,
+            MPID_Allreduce(MPI_IN_PLACE, &minfree, 1, MPI_INT,
                                 MPI_MIN, st->comm_ptr, &errflag);
             if (minfree > 0) {
                 MPIR_ERR_SETANDJUMP3(mpi_errno, MPI_ERR_OTHER,
@@ -1159,7 +1159,7 @@ int MPIR_Get_intercomm_contextid(MPID_Comm * comm_ptr, MPIU_Context_id_t * conte
 
     /* Make sure that all of the local processes now have this
      * id */
-    mpi_errno = MPIR_Bcast_impl(&remote_context_id, 1, MPIU_CONTEXT_ID_T_DATATYPE,
+    mpi_errno = MPID_Bcast(&remote_context_id, 1, MPIU_CONTEXT_ID_T_DATATYPE,
                                 0, comm_ptr->local_comm, &errflag);
     if (mpi_errno)
         MPIR_ERR_POP(mpi_errno);
diff --git a/src/mpi/comm/intercomm_create.c b/src/mpi/comm/intercomm_create.c
index 33867ad..08d2aab 100644
--- a/src/mpi/comm/intercomm_create.c
+++ b/src/mpi/comm/intercomm_create.c
@@ -259,10 +259,10 @@ int MPIR_Intercomm_create_impl(MPID_Comm *local_comm_ptr, int local_leader,
         comm_info[1] = final_context_id;
         comm_info[2] = is_low_group;
         MPL_DBG_MSG(MPIR_DBG_COMM,VERBOSE,"About to bcast on local_comm");
-        mpi_errno = MPIR_Bcast_impl( comm_info, 3, MPI_INT, local_leader, local_comm_ptr, &errflag );
+        mpi_errno = MPID_Bcast( comm_info, 3, MPI_INT, local_leader, local_comm_ptr, &errflag );
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
         MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
-        mpi_errno = MPIR_Bcast_impl( remote_gpids, remote_size*sizeof(MPIR_Gpid), MPI_BYTE, local_leader,
+        mpi_errno = MPID_Bcast( remote_gpids, remote_size*sizeof(MPIR_Gpid), MPI_BYTE, local_leader,
                                      local_comm_ptr, &errflag );
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
         MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
@@ -273,13 +273,13 @@ int MPIR_Intercomm_create_impl(MPID_Comm *local_comm_ptr, int local_leader,
     {
         /* we're the other processes */
         MPL_DBG_MSG(MPIR_DBG_COMM,VERBOSE,"About to receive bcast on local_comm");
-        mpi_errno = MPIR_Bcast_impl( comm_info, 3, MPI_INT, local_leader, local_comm_ptr, &errflag );
+        mpi_errno = MPID_Bcast( comm_info, 3, MPI_INT, local_leader, local_comm_ptr, &errflag );
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
         MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
         remote_size = comm_info[0];
         MPIU_CHKLMEM_MALLOC(remote_gpids,MPIR_Gpid*,remote_size*sizeof(MPIR_Gpid), mpi_errno,"remote_gpids");
         MPIU_CHKLMEM_MALLOC(remote_lpids,int*,remote_size*sizeof(int), mpi_errno,"remote_lpids");
-        mpi_errno = MPIR_Bcast_impl( remote_gpids, remote_size*sizeof(MPIR_Gpid), MPI_BYTE, local_leader,
+        mpi_errno = MPID_Bcast( remote_gpids, remote_size*sizeof(MPIR_Gpid), MPI_BYTE, local_leader,
                                      local_comm_ptr, &errflag );
         if (mpi_errno) MPIR_ERR_POP(mpi_errno);
         MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
diff --git a/src/mpi/romio/mpi-io/get_view.c b/src/mpi/romio/mpi-io/get_view.c
index 6919849..946905b 100644
--- a/src/mpi/romio/mpi-io/get_view.c
+++ b/src/mpi/romio/mpi-io/get_view.c
@@ -75,7 +75,7 @@ int MPI_File_get_view(MPI_File fh, MPI_Offset *disp, MPI_Datatype *etype,
     else {
 	/* FIXME: It is wrong to use MPI_Type_contiguous; the user could choose to
 	   re-implement MPI_Type_contiguous in an unexpected way.  Either use 
-	   MPIR_Barrier_impl as in MPICH or PMPI_Type_contiguous */
+	   MPID_Barrier as in MPICH or PMPI_Type_contiguous */
         MPI_Type_contiguous(1, adio_fh->etype, &copy_etype);
 
 	/* FIXME: Ditto for MPI_Type_commit - use NMPI or PMPI */
diff --git a/src/mpi/topo/dist_gr_create.c b/src/mpi/topo/dist_gr_create.c
index 1b0eba0..45053b5 100644
--- a/src/mpi/topo/dist_gr_create.c
+++ b/src/mpi/topo/dist_gr_create.c
@@ -261,7 +261,7 @@ int MPI_Dist_graph_create(MPI_Comm comm_old, int n, const int sources[],
     }
 
     /* compute the number of peers I will recv from */
-    mpi_errno = MPIR_Reduce_scatter_block_impl(rs, in_out_peers, 2, MPI_INT, MPI_SUM, comm_ptr, &errflag);
+    mpi_errno = MPID_Reduce_scatter_block(rs, in_out_peers, 2, MPI_INT, MPI_SUM, comm_ptr, &errflag);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     MPIR_ERR_CHKANDJUMP(errflag, mpi_errno, MPI_ERR_OTHER, "**coll_fail");
 
diff --git a/src/mpi/topo/inhb_allgather.c b/src/mpi/topo/inhb_allgather.c
index fa4e83d..91b0d3d 100644
--- a/src/mpi/topo/inhb_allgather.c
+++ b/src/mpi/topo/inhb_allgather.c
@@ -201,7 +201,7 @@ int MPI_Ineighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sen
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ineighbor_allgather_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, request);
+    mpi_errno = MPID_Ineighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/inhb_allgatherv.c b/src/mpi/topo/inhb_allgatherv.c
index ba73a37..9c58695 100644
--- a/src/mpi/topo/inhb_allgatherv.c
+++ b/src/mpi/topo/inhb_allgatherv.c
@@ -207,7 +207,7 @@ int MPI_Ineighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype se
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ineighbor_allgatherv_impl(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm_ptr, request);
+    mpi_errno = MPID_Ineighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/inhb_alltoall.c b/src/mpi/topo/inhb_alltoall.c
index 3a0590e..109ff7b 100644
--- a/src/mpi/topo/inhb_alltoall.c
+++ b/src/mpi/topo/inhb_alltoall.c
@@ -207,7 +207,7 @@ int MPI_Ineighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype send
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ineighbor_alltoall_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, request);
+    mpi_errno = MPID_Ineighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/inhb_alltoallv.c b/src/mpi/topo/inhb_alltoallv.c
index 8e0f91a..93370c0 100644
--- a/src/mpi/topo/inhb_alltoallv.c
+++ b/src/mpi/topo/inhb_alltoallv.c
@@ -211,7 +211,7 @@ int MPI_Ineighbor_alltoallv(const void *sendbuf, const int sendcounts[], const i
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ineighbor_alltoallv_impl(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr, request);
+    mpi_errno = MPID_Ineighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/inhb_alltoallw.c b/src/mpi/topo/inhb_alltoallw.c
index 8ad41c5..8b3085b 100644
--- a/src/mpi/topo/inhb_alltoallw.c
+++ b/src/mpi/topo/inhb_alltoallw.c
@@ -184,7 +184,7 @@ int MPI_Ineighbor_alltoallw(const void *sendbuf, const int sendcounts[], const M
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Ineighbor_alltoallw_impl(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr, request);
+    mpi_errno = MPID_Ineighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr, request);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/nhb_allgather.c b/src/mpi/topo/nhb_allgather.c
index d5d76e8..2af50a2 100644
--- a/src/mpi/topo/nhb_allgather.c
+++ b/src/mpi/topo/nhb_allgather.c
@@ -38,7 +38,7 @@ int MPIR_Neighbor_allgather_default(const void *sendbuf, int sendcount, MPI_Data
     MPI_Request req;
 
     /* just call the nonblocking version and wait on it */
-    mpi_errno = MPIR_Ineighbor_allgather_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, &req);
+    mpi_errno = MPID_Ineighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr, &req);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPIR_Wait_impl(&req, MPI_STATUS_IGNORE);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
@@ -156,7 +156,7 @@ int MPI_Neighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype send
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Neighbor_allgather_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr);
+    mpi_errno = MPID_Neighbor_allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/nhb_allgatherv.c b/src/mpi/topo/nhb_allgatherv.c
index 5b6d803..9288623 100644
--- a/src/mpi/topo/nhb_allgatherv.c
+++ b/src/mpi/topo/nhb_allgatherv.c
@@ -40,7 +40,7 @@ int MPIR_Neighbor_allgatherv_default(const void *sendbuf, int sendcount, MPI_Dat
     MPI_Request req;
 
     /* just call the nonblocking version and wait on it */
-    mpi_errno = MPIR_Ineighbor_allgatherv_impl(sendbuf, sendcount, sendtype,
+    mpi_errno = MPID_Ineighbor_allgatherv(sendbuf, sendcount, sendtype,
                                                recvbuf, recvcounts, displs, recvtype,
                                                comm_ptr, &req);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
@@ -157,7 +157,7 @@ int MPI_Neighbor_allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sen
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Neighbor_allgatherv_impl(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm_ptr);
+    mpi_errno = MPID_Neighbor_allgatherv(sendbuf, sendcount, sendtype, recvbuf, recvcounts, displs, recvtype, comm_ptr);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/nhb_alltoall.c b/src/mpi/topo/nhb_alltoall.c
index 38507da..0784722 100644
--- a/src/mpi/topo/nhb_alltoall.c
+++ b/src/mpi/topo/nhb_alltoall.c
@@ -38,7 +38,7 @@ int MPIR_Neighbor_alltoall_default(const void *sendbuf, int sendcount, MPI_Datat
     MPI_Request req;
 
     /* just call the nonblocking version and wait on it */
-    mpi_errno = MPIR_Ineighbor_alltoall_impl(sendbuf, sendcount, sendtype,
+    mpi_errno = MPID_Ineighbor_alltoall(sendbuf, sendcount, sendtype,
                                              recvbuf, recvcount, recvtype,
                                              comm_ptr, &req);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
@@ -160,7 +160,7 @@ int MPI_Neighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendt
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Neighbor_alltoall_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr);
+    mpi_errno = MPID_Neighbor_alltoall(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm_ptr);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/nhb_alltoallv.c b/src/mpi/topo/nhb_alltoallv.c
index 797abe8..5a998ba 100644
--- a/src/mpi/topo/nhb_alltoallv.c
+++ b/src/mpi/topo/nhb_alltoallv.c
@@ -39,7 +39,7 @@ int MPIR_Neighbor_alltoallv_default(const void *sendbuf, const int sendcounts[],
     MPI_Request req;
 
     /* just call the nonblocking version and wait on it */
-    mpi_errno = MPIR_Ineighbor_alltoallv_impl(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr, &req);
+    mpi_errno = MPID_Ineighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr, &req);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPIR_Wait_impl(&req, MPI_STATUS_IGNORE);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
@@ -155,7 +155,7 @@ int MPI_Neighbor_alltoallv(const void *sendbuf, const int sendcounts[], const in
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Neighbor_alltoallv_impl(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr);
+    mpi_errno = MPID_Neighbor_alltoallv(sendbuf, sendcounts, sdispls, sendtype, recvbuf, recvcounts, rdispls, recvtype, comm_ptr);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpi/topo/nhb_alltoallw.c b/src/mpi/topo/nhb_alltoallw.c
index 53a8987..282f637 100644
--- a/src/mpi/topo/nhb_alltoallw.c
+++ b/src/mpi/topo/nhb_alltoallw.c
@@ -38,7 +38,7 @@ int MPIR_Neighbor_alltoallw_default(const void *sendbuf, const int sendcounts[],
     MPI_Request req;
 
     /* just call the nonblocking version and wait on it */
-    mpi_errno = MPIR_Ineighbor_alltoallw_impl(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr, &req);
+    mpi_errno = MPID_Ineighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr, &req);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
     mpi_errno = MPIR_Wait_impl(&req, MPI_STATUS_IGNORE);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
@@ -140,7 +140,7 @@ int MPI_Neighbor_alltoallw(const void *sendbuf, const int sendcounts[], const MP
 
     /* ... body of routine ...  */
 
-    mpi_errno = MPIR_Neighbor_alltoallw_impl(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr);
+    mpi_errno = MPID_Neighbor_alltoallw(sendbuf, sendcounts, sdispls, sendtypes, recvbuf, recvcounts, rdispls, recvtypes, comm_ptr);
     if (mpi_errno) MPIR_ERR_POP(mpi_errno);
 
     /* ... end of body of routine ... */
diff --git a/src/mpid/ch3/Makefile.mk b/src/mpid/ch3/Makefile.mk
index 5e16b40..b5503fb 100644
--- a/src/mpid/ch3/Makefile.mk
+++ b/src/mpid/ch3/Makefile.mk
@@ -22,7 +22,8 @@ noinst_HEADERS +=                      \
     src/mpid/ch3/include/mpidpre.h     \
     src/mpid/ch3/include/mpid_thread.h \
     src/mpid/ch3/include/mpidrma.h     \
-    src/mpid/ch3/include/mpid_sched.h
+    src/mpid/ch3/include/mpid_sched.h  \
+    src/mpid/ch3/include/mpid_coll.h
 
 include $(top_srcdir)/src/mpid/ch3/src/Makefile.mk
 include $(top_srcdir)/src/mpid/ch3/util/Makefile.mk
diff --git a/src/mpid/ch3/include/mpid_coll.h b/src/mpid/ch3/include/mpid_coll.h
new file mode 100644
index 0000000..f9a0498
--- /dev/null
+++ b/src/mpid/ch3/include/mpid_coll.h
@@ -0,0 +1,720 @@
+/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil ; -*- */
+/*
+ *  (C) 2001 by Argonne National Laboratory.
+ *      See COPYRIGHT in top-level directory.
+ */
+
+#include "mpidimpl.h"
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Barrier
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Barrier(MPID_Comm * comm, MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Barrier_impl(comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Bcast
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Bcast(void *buffer, int count, MPI_Datatype datatype, int root,
+                             MPID_Comm * comm, MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Bcast_impl(buffer, count, datatype, root, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Allreduce
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Allreduce(const void *sendbuf, void *recvbuf, int count,
+                                 MPI_Datatype datatype, MPI_Op op, MPID_Comm * comm,
+                                 MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Allreduce_impl(sendbuf, recvbuf, count, datatype, op, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Allgather
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                 void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                 MPID_Comm * comm, MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Allgather_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                    recvcount, recvtype, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Allgatherv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Allgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                  void *recvbuf, const int *recvcounts, const int *displs,
+                                  MPI_Datatype recvtype, MPID_Comm * comm, MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Allgatherv_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                     recvcounts, displs, recvtype, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Scatter
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Scatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                               void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                               int root, MPID_Comm * comm, MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Scatter_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount,
+                                  recvtype, root, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Scatterv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Scatterv(const void *sendbuf, const int *sendcounts, const int *displs,
+                                MPI_Datatype sendtype, void *recvbuf, int recvcount,
+                                MPI_Datatype recvtype, int root, MPID_Comm * comm,
+                                MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Scatterv_impl(sendbuf, sendcounts, displs, sendtype, recvbuf,
+                                   recvcount, recvtype, root, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Gather
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Gather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                              void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                              int root, MPID_Comm * comm, MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Gather_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount,
+                                 recvtype, root, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Gatherv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Gatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                               void *recvbuf, const int *recvcounts, const int *displs,
+                               MPI_Datatype recvtype, int root, MPID_Comm * comm,
+                               MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Gatherv_impl(sendbuf, sendcount, sendtype, recvbuf, recvcounts,
+                                  displs, recvtype, root, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Alltoall
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                MPID_Comm * comm, MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Alltoall_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount,
+                                   recvtype, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Alltoallv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Alltoallv(const void *sendbuf, const int *sendcounts, const int *sdispls,
+                                 MPI_Datatype sendtype, void *recvbuf, const int *recvcounts,
+                                 const int *rdispls, MPI_Datatype recvtype, MPID_Comm * comm,
+                                 MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Alltoallv_impl(sendbuf, sendcounts, sdispls, sendtype, recvbuf,
+                                    recvcounts, rdispls, recvtype, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Alltoallw
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Alltoallw(const void *sendbuf, const int sendcounts[], const int sdispls[],
+                                 const MPI_Datatype sendtypes[], void *recvbuf,
+                                 const int recvcounts[], const int rdispls[],
+                                 const MPI_Datatype recvtypes[], MPID_Comm * comm_ptr,
+                                 MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Alltoallw_impl(sendbuf, sendcounts, sdispls,
+                                    sendtypes, recvbuf, recvcounts,
+                                    rdispls, recvtypes, comm_ptr, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Reduce
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Reduce(const void *sendbuf, void *recvbuf, int count,
+                              MPI_Datatype datatype, MPI_Op op, int root,
+                              MPID_Comm * comm, MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Reduce_impl(sendbuf, recvbuf, count, datatype, op, root, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Reduce_scatter
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Reduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
+                                      MPI_Datatype datatype, MPI_Op op, MPID_Comm * comm_ptr,
+                                      MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Reduce_scatter_impl(sendbuf, recvbuf, recvcounts,
+                                         datatype, op, comm_ptr, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Reduce_scatter_block
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Reduce_scatter_block(const void *sendbuf, void *recvbuf,
+                                            int recvcount, MPI_Datatype datatype,
+                                            MPI_Op op, MPID_Comm * comm_ptr,
+                                            MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Reduce_scatter_block_impl(sendbuf, recvbuf, recvcount,
+                                               datatype, op, comm_ptr, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Scan
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Scan(const void *sendbuf, void *recvbuf, int count,
+                            MPI_Datatype datatype, MPI_Op op, MPID_Comm * comm,
+                            MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Scan_impl(sendbuf, recvbuf, count, datatype, op, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Exscan
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Exscan(const void *sendbuf, void *recvbuf, int count,
+                              MPI_Datatype datatype, MPI_Op op, MPID_Comm * comm,
+                              MPIR_Errflag_t * errflag)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Exscan_impl(sendbuf, recvbuf, count, datatype, op, comm, errflag);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Neighbor_allgather
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Neighbor_allgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                          void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                          MPID_Comm * comm)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Neighbor_allgather_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                             recvcount, recvtype, comm);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Neighbor_allgatherv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Neighbor_allgatherv(const void *sendbuf, int sendcount,
+                                           MPI_Datatype sendtype, void *recvbuf,
+                                           const int recvcounts[], const int displs[],
+                                           MPI_Datatype recvtype, MPID_Comm * comm)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Neighbor_allgatherv_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                              recvcounts, displs, recvtype, comm);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Neighbor_alltoallv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Neighbor_alltoallv(const void *sendbuf, const int sendcounts[],
+                                          const int sdispls[], MPI_Datatype sendtype,
+                                          void *recvbuf, const int recvcounts[],
+                                          const int rdispls[], MPI_Datatype recvtype,
+                                          MPID_Comm * comm)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Neighbor_alltoallv_impl(sendbuf, sendcounts, sdispls, sendtype,
+                                             recvbuf, recvcounts, rdispls, recvtype, comm);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Neighbor_alltoallw
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Neighbor_alltoallw(const void *sendbuf, const int sendcounts[],
+                                          const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
+                                          void *recvbuf, const int recvcounts[],
+                                          const MPI_Aint rdispls[], const MPI_Datatype recvtypes[],
+                                          MPID_Comm * comm)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Neighbor_alltoallw_impl(sendbuf, sendcounts, sdispls,
+                                             sendtypes, recvbuf, recvcounts, rdispls, recvtypes,
+                                             comm);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Neighbor_alltoall
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Neighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                         void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                         MPID_Comm * comm)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Neighbor_alltoall_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                            recvcount, recvtype, comm);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ineighbor_allgather
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ineighbor_allgather(const void *sendbuf, int sendcount,
+                                           MPI_Datatype sendtype, void *recvbuf, int recvcount,
+                                           MPI_Datatype recvtype, MPID_Comm * comm,
+                                           MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ineighbor_allgather_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                              recvcount, recvtype, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ineighbor_allgatherv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ineighbor_allgatherv(const void *sendbuf, int sendcount,
+                                            MPI_Datatype sendtype, void *recvbuf,
+                                            const int recvcounts[], const int displs[],
+                                            MPI_Datatype recvtype, MPID_Comm * comm,
+                                            MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ineighbor_allgatherv_impl(sendbuf, sendcount, sendtype,
+                                               recvbuf, recvcounts, displs, recvtype, comm,
+                                               request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ineighbor_alltoall
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ineighbor_alltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                          void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                          MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ineighbor_alltoall_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                             recvcount, recvtype, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ineighbor_alltoallv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ineighbor_alltoallv(const void *sendbuf, const int sendcounts[],
+                                           const int sdispls[], MPI_Datatype sendtype,
+                                           void *recvbuf, const int recvcounts[],
+                                           const int rdispls[], MPI_Datatype recvtype,
+                                           MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ineighbor_alltoallv_impl(sendbuf, sendcounts, sdispls,
+                                              sendtype, recvbuf, recvcounts, rdispls, recvtype,
+                                              comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ineighbor_alltoallw
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ineighbor_alltoallw(const void *sendbuf, const int sendcounts[],
+                                           const MPI_Aint sdispls[], const MPI_Datatype sendtypes[],
+                                           void *recvbuf, const int recvcounts[],
+                                           const MPI_Aint rdispls[], const MPI_Datatype recvtypes[],
+                                           MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ineighbor_alltoallw_impl(sendbuf, sendcounts, sdispls,
+                                              sendtypes, recvbuf, recvcounts, rdispls, recvtypes,
+                                              comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ibarrier
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ibarrier(MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ibarrier_impl(comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ibcast
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ibcast(void *buffer, int count, MPI_Datatype datatype, int root,
+                              MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ibcast_impl(buffer, count, datatype, root, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Iallgather
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Iallgather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                  void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                  MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Iallgather_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                     recvcount, recvtype, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Iallgatherv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Iallgatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                   void *recvbuf, const int *recvcounts, const int *displs,
+                                   MPI_Datatype recvtype, MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Iallgatherv_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                      recvcounts, displs, recvtype, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Iallreduce
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Iallreduce(const void *sendbuf, void *recvbuf, int count,
+                                  MPI_Datatype datatype, MPI_Op op, MPID_Comm * comm,
+                                  MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Iallreduce_impl(sendbuf, recvbuf, count, datatype, op, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ialltoall
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ialltoall(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                 void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                 MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ialltoall_impl(sendbuf, sendcount, sendtype, recvbuf,
+                                    recvcount, recvtype, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ialltoallv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ialltoallv(const void *sendbuf, const int sendcounts[],
+                                  const int sdispls[], MPI_Datatype sendtype,
+                                  void *recvbuf, const int recvcounts[],
+                                  const int rdispls[], MPI_Datatype recvtype,
+                                  MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ialltoallv_impl(sendbuf, sendcounts, sdispls, sendtype,
+                                     recvbuf, recvcounts, rdispls, recvtype, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ialltoallw
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ialltoallw(const void *sendbuf, const int sendcounts[],
+                                  const int sdispls[], const MPI_Datatype sendtypes[],
+                                  void *recvbuf, const int recvcounts[],
+                                  const int rdispls[], const MPI_Datatype recvtypes[],
+                                  MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ialltoallw_impl(sendbuf, sendcounts, sdispls, sendtypes,
+                                     recvbuf, recvcounts, rdispls, recvtypes, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Iexscan
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Iexscan(const void *sendbuf, void *recvbuf, int count,
+                               MPI_Datatype datatype, MPI_Op op, MPID_Comm * comm,
+                               MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Iexscan_impl(sendbuf, recvbuf, count, datatype, op, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Igather
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Igather(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                               void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                               int root, MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Igather_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount,
+                                  recvtype, root, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Igatherv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Igatherv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                void *recvbuf, const int *recvcounts, const int *displs,
+                                MPI_Datatype recvtype, int root, MPID_Comm * comm,
+                                MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Igatherv_impl(sendbuf, sendcount, sendtype, recvbuf, recvcounts,
+                                   displs, recvtype, root, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ireduce_scatter_block
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ireduce_scatter_block(const void *sendbuf, void *recvbuf, int recvcount,
+                                             MPI_Datatype datatype, MPI_Op op, MPID_Comm * comm,
+                                             MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ireduce_scatter_block_impl(sendbuf, recvbuf, recvcount,
+                                                datatype, op, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ireduce_scatter
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ireduce_scatter(const void *sendbuf, void *recvbuf, const int recvcounts[],
+                                       MPI_Datatype datatype, MPI_Op op, MPID_Comm * comm,
+                                       MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ireduce_scatter_impl(sendbuf, recvbuf, recvcounts, datatype,
+                                          op, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Ireduce
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Ireduce(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
+                               MPI_Op op, int root, MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Ireduce_impl(sendbuf, recvbuf, count, datatype, op, root, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Iscan
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Iscan(const void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype,
+                             MPI_Op op, MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Iscan_impl(sendbuf, recvbuf, count, datatype, op, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Iscatter
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Iscatter(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
+                                void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                int root, MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Iscatter_impl(sendbuf, sendcount, sendtype, recvbuf, recvcount,
+                                   recvtype, root, comm, request);
+
+    return mpi_errno;
+}
+
+#undef FUNCNAME
+#define FUNCNAME MPID_Iscatterv
+#undef FCNAME
+#define FCNAME MPL_QUOTE(FUNCNAME)
+static inline int MPID_Iscatterv(const void *sendbuf, const int *sendcounts,
+                                 const int *displs, MPI_Datatype sendtype,
+                                 void *recvbuf, int recvcount, MPI_Datatype recvtype,
+                                 int root, MPID_Comm * comm, MPI_Request * request)
+{
+    int mpi_errno = MPI_SUCCESS;
+
+    mpi_errno = MPIR_Iscatterv_impl(sendbuf, sendcounts, displs, sendtype, recvbuf,
+                                    recvcount, recvtype, root, comm, request);
+
+    return mpi_errno;
+}
diff --git a/src/mpid/ch3/include/mpidpost.h b/src/mpid/ch3/include/mpidpost.h
index 3159e22..dde3f1b 100644
--- a/src/mpid/ch3/include/mpidpost.h
+++ b/src/mpid/ch3/include/mpidpost.h
@@ -7,6 +7,8 @@
 #if !defined(MPICH_MPIDPOST_H_INCLUDED)
 #define MPICH_MPIDPOST_H_INCLUDED
 
+#include "mpid_coll.h"
+
 /* FIXME: mpidpost.h is included by mpiimpl.h .  However, mpiimpl.h should 
    refer only to the ADI3 prototypes and should never include prototypes 
    specific to any particular device.  Factor the include files to maintain

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

commit cdd26cf1edaafdcb3a7fd401427b18c9bf274193
Author: Pavan Balaji <balaji at anl.gov>
Date:   Tue Apr 19 17:22:00 2016 -0500

    Move mpidpost.h to the end of mpiimpl.h
    
    The post header should be able to use everything in the MPIR-level
    definitions.  So it makes most sense to put it at the end of the
    mpiimpl.h header.
    
    Signed-off-by: Wesley Bland <wesley.bland at intel.com>

diff --git a/src/include/mpiimpl.h b/src/include/mpiimpl.h
index 02147ba..11bc349 100644
--- a/src/include/mpiimpl.h
+++ b/src/include/mpiimpl.h
@@ -3754,10 +3754,6 @@ int MPID_Comm_get_lpid(MPID_Comm *comm_ptr, int idx, int * lpid_ptr, MPIU_BOOL i
  * collectives */
 #include "mpir_nbc.h"
 
-/* Include definitions from the device which require items defined by this 
-   file (mpiimpl.h). */
-#include "mpidpost.h"
-
 /* tunable cvar values */
 #include "mpich_cvars.h"
 
@@ -4451,6 +4447,10 @@ extern const char MPIR_Version_CXX[];
 extern const char MPIR_Version_F77[];
 extern const char MPIR_Version_FC[];
 
+/* Include definitions from the device which require items defined by this
+   file (mpiimpl.h). */
+#include "mpidpost.h"
+
 /* avoid conflicts in source files with old-style "char FCNAME[]" vars */
 #undef FUNCNAME
 #undef FCNAME

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

Summary of changes:
 src/include/mpiimpl.h            |   53 +---
 src/mpi/coll/allgather.c         |    8 +-
 src/mpi/coll/allgatherv.c        |   10 +-
 src/mpi/coll/allreduce.c         |   14 +-
 src/mpi/coll/alltoall.c          |    2 +-
 src/mpi/coll/alltoallv.c         |    2 +-
 src/mpi/coll/alltoallw.c         |    2 +-
 src/mpi/coll/barrier.c           |    8 +-
 src/mpi/coll/bcast.c             |    2 +-
 src/mpi/coll/exscan.c            |    2 +-
 src/mpi/coll/gather.c            |    4 +-
 src/mpi/coll/gatherv.c           |    2 +-
 src/mpi/coll/iallgather.c        |   14 +-
 src/mpi/coll/iallgatherv.c       |   14 +-
 src/mpi/coll/iallreduce.c        |   14 +-
 src/mpi/coll/ialltoall.c         |   14 +-
 src/mpi/coll/ialltoallv.c        |   14 +-
 src/mpi/coll/ialltoallw.c        |   14 +-
 src/mpi/coll/ibarrier.c          |   14 +-
 src/mpi/coll/ibcast.c            |   14 +-
 src/mpi/coll/iexscan.c           |   14 +-
 src/mpi/coll/igather.c           |   16 +-
 src/mpi/coll/igatherv.c          |   16 +-
 src/mpi/coll/ired_scat.c         |   16 +-
 src/mpi/coll/ired_scat_block.c   |   16 +-
 src/mpi/coll/ireduce.c           |   16 +-
 src/mpi/coll/iscan.c             |   16 +-
 src/mpi/coll/iscatter.c          |   16 +-
 src/mpi/coll/iscatterv.c         |   16 +-
 src/mpi/coll/red_scat.c          |    4 +-
 src/mpi/coll/red_scat_block.c    |    4 +-
 src/mpi/coll/reduce.c            |   12 +-
 src/mpi/coll/scan.c              |   10 +-
 src/mpi/coll/scatter.c           |    4 +-
 src/mpi/coll/scatterv.c          |    2 +-
 src/mpi/comm/comm_create.c       |    8 +-
 src/mpi/comm/comm_split.c        |    8 +-
 src/mpi/comm/contextid.c         |    8 +-
 src/mpi/comm/intercomm_create.c  |    8 +-
 src/mpi/romio/mpi-io/get_view.c  |    2 +-
 src/mpi/topo/dist_gr_create.c    |    2 +-
 src/mpi/topo/inhb_allgather.c    |    2 +-
 src/mpi/topo/inhb_allgatherv.c   |    2 +-
 src/mpi/topo/inhb_alltoall.c     |    2 +-
 src/mpi/topo/inhb_alltoallv.c    |    2 +-
 src/mpi/topo/inhb_alltoallw.c    |    2 +-
 src/mpi/topo/nhb_allgather.c     |    4 +-
 src/mpi/topo/nhb_allgatherv.c    |    4 +-
 src/mpi/topo/nhb_alltoall.c      |    4 +-
 src/mpi/topo/nhb_alltoallv.c     |    4 +-
 src/mpi/topo/nhb_alltoallw.c     |    4 +-
 src/mpid/ch3/Makefile.mk         |    3 +-
 src/mpid/ch3/include/mpid_coll.h |  720 ++++++++++++++++++++++++++++++++++++++
 src/mpid/ch3/include/mpidpost.h  |    2 +
 54 files changed, 824 insertions(+), 366 deletions(-)
 create mode 100644 src/mpid/ch3/include/mpid_coll.h


hooks/post-receive
-- 
MPICH primary repository


More information about the commits mailing list