Fix ompi-server: remove extra command flag in buffer being sent to mpirun, ensure that tools route messages thru a remote HNP
This commit was SVN r24491.
Этот коммит содержится в:
родитель
292b617559
Коммит
63f38e38bb
@ -60,7 +60,6 @@ static bool server_setup=false;
|
||||
static void setup_server(void)
|
||||
{
|
||||
opal_buffer_t buf;
|
||||
orte_rml_cmd_flag_t cmd=ORTE_RML_UPDATE_CMD; /* irrelevant - will be ignored */
|
||||
int rc;
|
||||
|
||||
OPAL_OUTPUT_VERBOSE((1, ompi_pubsub_base_output,
|
||||
@ -84,7 +83,6 @@ static void setup_server(void)
|
||||
* info into a buffer
|
||||
*/
|
||||
OBJ_CONSTRUCT(&buf, opal_buffer_t);
|
||||
opal_dss.pack(&buf, &cmd, 1, ORTE_RML_CMD);
|
||||
opal_dss.pack(&buf, &mca_pubsub_orte_component.server_uri, 1, OPAL_STRING);
|
||||
/* extract the server's name so we have its jobid */
|
||||
if (ORTE_SUCCESS != (rc = orte_rml_base_parse_uris(mca_pubsub_orte_component.server_uri,
|
||||
|
@ -321,10 +321,18 @@ static orte_process_name_t get_route(orte_process_name_t *target)
|
||||
goto found;
|
||||
}
|
||||
|
||||
/* if I am a tool, the route is direct */
|
||||
/* if I am a tool, the route is direct if target is in
|
||||
* my own job family, and to the target's HNP if not
|
||||
*/
|
||||
if (ORTE_PROC_IS_TOOL) {
|
||||
if (ORTE_JOB_FAMILY(target->jobid) == ORTE_JOB_FAMILY(ORTE_PROC_MY_NAME->jobid)) {
|
||||
ret = target;
|
||||
goto found;
|
||||
} else {
|
||||
ORTE_HNP_NAME_FROM_JOB(&daemon, target->jobid);
|
||||
ret = &daemon;
|
||||
goto found;
|
||||
}
|
||||
}
|
||||
|
||||
/****** HNP AND DAEMONS ONLY ******/
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user