Bring singleton comm_spawn online.
This commit was SVN r12081.
Этот коммит содержится в:
родитель
f5b8f1f2f0
Коммит
1f7a5da3ce
@ -352,7 +352,7 @@ ompi_comm_start_processes(int count, char **array_of_commands,
|
||||
char *base_prefix;
|
||||
|
||||
orte_std_cntr_t num_apps, ai;
|
||||
orte_jobid_t new_jobid;
|
||||
orte_jobid_t new_jobid=ORTE_JOBID_INVALID;
|
||||
orte_app_context_t **apps=NULL;
|
||||
|
||||
|
||||
@ -383,8 +383,11 @@ ompi_comm_start_processes(int count, char **array_of_commands,
|
||||
/* we'll just use the prefix from the first member of the app_context array.
|
||||
* this shouldn't matter as they all should be the same. it could be NULL, of
|
||||
* course (user might not have specified it), so we need to protect against that.
|
||||
*
|
||||
* It's possible that no app_contexts are returned (e.g., during a comm_spawn
|
||||
* from a singleton), so check first
|
||||
*/
|
||||
if (NULL != apps[0]->prefix_dir) {
|
||||
if (NULL != apps && NULL != apps[0]->prefix_dir) {
|
||||
base_prefix = strdup(apps[0]->prefix_dir);
|
||||
} else {
|
||||
base_prefix = NULL;
|
||||
|
@ -68,17 +68,6 @@ int MPI_Comm_spawn(char *command, char **argv, int maxprocs, MPI_Info info,
|
||||
return OMPI_ERRHANDLER_INVOKE(MPI_COMM_WORLD, MPI_ERR_INFO,
|
||||
FUNC_NAME);
|
||||
}
|
||||
|
||||
/* Do not allow MPI_COMM_SPAWN from a singleton. This check
|
||||
will be removed when the ORTE 2.0 stuff comes over and
|
||||
Makes This All Better(tm) */
|
||||
if (orte_process_info.singleton) {
|
||||
if (ompi_comm_rank(comm) == root) {
|
||||
opal_show_help("help-mpi-api.txt", "spawn-from-singleton",
|
||||
true, FUNC_NAME);
|
||||
}
|
||||
return OMPI_ERRHANDLER_INVOKE(comm, MPI_ERR_ARG, FUNC_NAME);
|
||||
}
|
||||
}
|
||||
|
||||
rank = ompi_comm_rank ( comm );
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user