[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1-239-g793fca2
Service Account
noreply at mpich.org
Fri May 9 14:46:19 CDT 2014
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "MPICH primary repository".
The branch, master has been updated
via 793fca23719c92b92d1c20e8b05cb603889b838a (commit)
via cbb0284f68dcd44d6a585765783a39f762fd2810 (commit)
via 3683a3558d2d83d5dcb4520303e51629e899d874 (commit)
from 75f0eaeb57ad25fdaf95c4d52419b4852016ea4b (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/793fca23719c92b92d1c20e8b05cb603889b838a
commit 793fca23719c92b92d1c20e8b05cb603889b838a
Author: Michael Blocksome <blocksom at us.ibm.com>
Date: Fri May 9 11:22:55 2014 -0500
pamid: implement comm_split_type hook.
diff --git a/src/mpid/pamid/src/mpid_init.c b/src/mpid/pamid/src/mpid_init.c
index 2cd5b62..51ccd9b 100644
--- a/src/mpid/pamid/src/mpid_init.c
+++ b/src/mpid/pamid/src/mpid_init.c
@@ -326,6 +326,39 @@ static struct
#endif
};
+
+#undef FUNCNAME
+#define FUNCNAME split_type
+#undef FCNAME
+#define FCNAME MPIDI_QUOTE(FUNCNAME)
+static int split_type(MPID_Comm * comm_ptr, int stype, int key,
+ MPID_Info *info_ptr, MPID_Comm ** newcomm_ptr)
+{
+ MPID_Node_id_t id;
+ int nid;
+ int mpi_errno = MPI_SUCCESS;
+
+ mpi_errno = MPID_Get_node_id(comm_ptr, comm_ptr->rank, &id);
+ if (mpi_errno) MPIU_ERR_POP(mpi_errno);
+
+ nid = (stype == MPI_COMM_TYPE_SHARED) ? id : MPI_UNDEFINED;
+ mpi_errno = MPIR_Comm_split_impl(comm_ptr, nid, key, newcomm_ptr);
+ if (mpi_errno) MPIU_ERR_POP(mpi_errno);
+
+ fn_exit:
+ return mpi_errno;
+
+ /* --BEGIN ERROR HANDLING-- */
+ fn_fail:
+ goto fn_exit;
+ /* --END ERROR HANDLING-- */
+}
+
+static MPID_CommOps comm_fns = {
+ split_type
+};
+
+
/* ------------------------------ */
/* Collective selection extension */
/* ------------------------------ */
@@ -1194,6 +1227,8 @@ int MPID_Init(int * argc,
char *world_tasks;
pami_result_t rc;
+ /* Override split_type */
+ MPID_Comm_fns = &comm_fns;
/* ------------------------------------------------------------------------------- */
/* Initialize the pami client to get the process rank; needed for env var output. */
http://git.mpich.org/mpich.git/commitdiff/cbb0284f68dcd44d6a585765783a39f762fd2810
commit cbb0284f68dcd44d6a585765783a39f762fd2810
Author: Michael Blocksome <blocksom at us.ibm.com>
Date: Fri May 9 11:34:10 2014 -0500
pamid: fix bgq 'is_local_task' extension bug.
diff --git a/src/mpid/pamid/src/pamix/pamix.c b/src/mpid/pamid/src/pamix/pamix.c
index 1d399b1..78fb4c6 100644
--- a/src/mpid/pamid/src/pamix/pamix.c
+++ b/src/mpid/pamid/src/pamix/pamix.c
@@ -293,7 +293,7 @@ PAMIX_is_local_task_get_node_info(pami_task_t task,
coords[1] * info->size[0] +
coords[2] * info->size[0] * info->size[1] +
coords[3] * info->size[0] * info->size[1] * info->size[2] +
- coords[1] * info->size[0] * info->size[1] * info->size[2] * info->size[3];
+ coords[4] * info->size[0] * info->size[1] * info->size[2] * info->size[3];
*max_nodes = info->size[0] * info->size[1] * info->size[2] * info->size[3] * info->size[4];
http://git.mpich.org/mpich.git/commitdiff/3683a3558d2d83d5dcb4520303e51629e899d874
commit 3683a3558d2d83d5dcb4520303e51629e899d874
Author: Michael Blocksome <blocksom at us.ibm.com>
Date: Fri May 9 11:22:05 2014 -0500
pamid: 'gracefully degrade' instead of error out when node info is not available
diff --git a/src/mpid/pamid/src/mpidi_util.c b/src/mpid/pamid/src/mpidi_util.c
index d6e3d84..aba5bb6 100644
--- a/src/mpid/pamid/src/mpidi_util.c
+++ b/src/mpid/pamid/src/mpidi_util.c
@@ -1918,13 +1918,20 @@ int MPID_Get_node_id(MPID_Comm *comm, int rank, MPID_Node_id_t *id_p)
uint32_t node_id;
uint32_t offset;
uint32_t max_nodes;
- if(!PAMIX_Extensions.is_local_task.node_info)
- MPIU_ERR_SETANDJUMP(mpi_errno, MPI_ERR_OTHER, "**notimpl");
- pami_result_t rc = PAMIX_Extensions.is_local_task.node_info(comm->vcr[rank]->taskid,
- &node_id,&offset,&max_nodes);
- if(rc != PAMI_SUCCESS) MPIU_ERR_SETANDJUMP(mpi_errno, MPI_ERR_OTHER, "**notimpl");
- *id_p = node_id;
+ if(!PAMIX_Extensions.is_local_task.node_info)
+ {
+ *id_p = rank;
+ }
+ else
+ {
+ pami_result_t rc = PAMIX_Extensions.is_local_task.node_info(comm->vcr[rank]->taskid,
+ &node_id,&offset,&max_nodes);
+ if(rc != PAMI_SUCCESS)
+ *id_p = rank;
+ else
+ *id_p = node_id;
+ }
fn_fail:
return mpi_errno;
-----------------------------------------------------------------------
Summary of changes:
src/mpid/pamid/src/mpid_init.c | 35 +++++++++++++++++++++++++++++++++++
src/mpid/pamid/src/mpidi_util.c | 19 +++++++++++++------
src/mpid/pamid/src/pamix/pamix.c | 2 +-
3 files changed, 49 insertions(+), 7 deletions(-)
hooks/post-receive
--
MPICH primary repository
More information about the commits
mailing list