[mpich] MPICH primary repository branch, master, updated. v3.1rc2-33-g0dd4cea
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 0dd4cea574961ac0a9996a619765c526071d9dea (commit) from 4d435f8caa43bf208ea8eb95cd8ac873c8741988 (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/0dd4cea574961ac0a9996a619765c52607... commit 0dd4cea574961ac0a9996a619765c526071d9dea Author: Haizhu Liu <[email protected]> Date: Tue Oct 29 13:47:55 2013 -0400 Exit with error when dynamic tasking is used in an invalid environment Flag an error and exit when dynamic tasking APIs are called on jobs that are not launched in dynamic mode in PE. closes ticket #1961 (ibm) D192324 Signed-off-by: Michael Blocksome <[email protected]> diff --git a/src/mpid/pamid/src/dyntask/mpid_comm_spawn_multiple.c b/src/mpid/pamid/src/dyntask/mpid_comm_spawn_multiple.c index 68b818b..12bf3a7 100644 --- a/src/mpid/pamid/src/dyntask/mpid_comm_spawn_multiple.c +++ b/src/mpid/pamid/src/dyntask/mpid_comm_spawn_multiple.c @@ -13,6 +13,8 @@ #ifdef DYNAMIC_TASKING +extern mpidi_dynamic_tasking; + /* Define the name of the kvs key used to provide the port name to the children */ #define MPIDI_PARENT_PORT_KVSKEY "PARENT_ROOT_PORT_NAME" @@ -107,6 +109,12 @@ int MPID_Comm_spawn_multiple(int count, char *array_of_commands[], { int mpi_errno = MPI_SUCCESS; + if(mpidi_dynamic_tasking == 0) { + fprintf(stderr, "Received spawn request for non-dynamic jobs\n"); + MPIU_ERR_SETANDSTMT(mpi_errno, MPI_ERR_SPAWN, + return mpi_errno, "**spawn"); + } + /* We allow an empty implementation of this function to simplify building MPICH on systems that have difficulty supporing process creation */ diff --git a/src/mpid/pamid/src/dyntask/mpid_port.c b/src/mpid/pamid/src/dyntask/mpid_port.c index 51bc422..b587ef6 100644 --- a/src/mpid/pamid/src/dyntask/mpid_port.c +++ b/src/mpid/pamid/src/dyntask/mpid_port.c @@ -16,6 +16,8 @@ #define MPI_MAX_TASKID_NAME 8 #define MPIDI_TASKID_TAG_KEY "taskid" +extern mpidi_dynamic_tasking; + static int MPIDI_Open_port(MPID_Info *, char *); static int MPIDI_Close_port(const char *); @@ -93,6 +95,13 @@ int MPID_Comm_accept(const char * port_name, MPID_Info * info, int root, { int mpi_errno = MPI_SUCCESS; + if(mpidi_dynamic_tasking == 0) { + fprintf(stderr, "Dynamic tasking API is called on non-dynamic jobs\n"); + MPIU_ERR_SETANDSTMT(mpi_errno, MPI_ERR_SPAWN, + return mpi_errno, "**spawn"); + + } + if (portFns.CommAccept) { mpi_errno = portFns.CommAccept( port_name, info, root, comm, newcomm_ptr ); @@ -110,6 +119,13 @@ int MPID_Comm_connect(const char * port_name, MPID_Info * info, int root, { int mpi_errno=MPI_SUCCESS; + if(mpidi_dynamic_tasking == 0) { + fprintf(stderr, "Dynamic tasking API is called on non-dynamic jobs\n"); + MPIU_ERR_SETANDSTMT(mpi_errno, MPI_ERR_SPAWN, + return mpi_errno, "**spawn"); + + } + if (portFns.CommConnect) { mpi_errno = portFns.CommConnect( port_name, info, root, comm, newcomm_ptr ); ----------------------------------------------------------------------- Summary of changes: .../pamid/src/dyntask/mpid_comm_spawn_multiple.c | 8 ++++++++ src/mpid/pamid/src/dyntask/mpid_port.c | 16 ++++++++++++++++ 2 files changed, 24 insertions(+), 0 deletions(-) hooks/post-receive -- MPICH primary repository
participants (1)
-
noreply@mpich.org