Skip to content

Commit 3e430ca

Browse files
author
rhc54
authored
Merge pull request #2290 from rhc54/topic/rmlapp
Open the conduits for application procs
2 parents dae02c7 + 227d4d9 commit 3e430ca

File tree

2 files changed

+31
-10
lines changed

2 files changed

+31
-10
lines changed

orte/mca/ess/base/ess_base_std_app.c

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ int orte_ess_base_app_setup(bool db_restrict_local)
7777
{
7878
int ret;
7979
char *error = NULL;
80+
opal_list_t transports;
8081

8182
/*
8283
* stdout/stderr buffering
@@ -188,6 +189,26 @@ int orte_ess_base_app_setup(bool db_restrict_local)
188189
error = "orte_routed_base_select";
189190
goto error;
190191
}
192+
/* setup the routed info */
193+
if (ORTE_SUCCESS != (ret = orte_routed.init_routes(NULL, ORTE_PROC_MY_NAME->jobid, NULL))) {
194+
ORTE_ERROR_LOG(ret);
195+
error = "orte_routed.init_routes";
196+
goto error;
197+
}
198+
199+
/* get a conduit for our use - we never route IO over fabric */
200+
OBJ_CONSTRUCT(&transports, opal_list_t);
201+
orte_set_attribute(&transports, ORTE_RML_TRANSPORT_TYPE,
202+
ORTE_ATTR_LOCAL, orte_mgmt_transport, OPAL_STRING);
203+
orte_mgmt_conduit = orte_rml.open_conduit(&transports);
204+
OPAL_LIST_DESTRUCT(&transports);
205+
206+
OBJ_CONSTRUCT(&transports, opal_list_t);
207+
orte_set_attribute(&transports, ORTE_RML_TRANSPORT_TYPE,
208+
ORTE_ATTR_LOCAL, orte_coll_transport, OPAL_STRING);
209+
orte_coll_conduit = orte_rml.open_conduit(&transports);
210+
OPAL_LIST_DESTRUCT(&transports);
211+
191212
/*
192213
* Group communications
193214
*/
@@ -201,12 +222,7 @@ int orte_ess_base_app_setup(bool db_restrict_local)
201222
error = "orte_grpcomm_base_select";
202223
goto error;
203224
}
204-
/* setup the routed info */
205-
if (ORTE_SUCCESS != (ret = orte_routed.init_routes(NULL, ORTE_PROC_MY_NAME->jobid, NULL))) {
206-
ORTE_ERROR_LOG(ret);
207-
error = "orte_routed.init_routes";
208-
goto error;
209-
}
225+
210226
#if OPAL_ENABLE_FT_CR == 1
211227
/*
212228
* Setup the SnapC
@@ -273,6 +289,10 @@ int orte_ess_base_app_finalize(void)
273289
(void) mca_base_framework_close(&orte_sstore_base_framework);
274290
#endif
275291

292+
/* release the conduits */
293+
orte_rml.close_conduit(orte_mgmt_conduit);
294+
orte_rml.close_conduit(orte_coll_conduit);
295+
276296
/* close frameworks */
277297
(void) mca_base_framework_close(&orte_filem_base_framework);
278298
(void) mca_base_framework_close(&orte_errmgr_base_framework);

orte/mca/ess/base/ess_base_std_orted.c

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -401,8 +401,6 @@ int orte_ess_base_orted_setup(char **hosts)
401401
error = "orte_rml_base_select";
402402
goto error;
403403
}
404-
/* add our contact info */
405-
proc->rml_uri = orte_rml.get_contact_info();
406404

407405
/* setup the PMIx server */
408406
if (ORTE_SUCCESS != (ret = pmix_server_init())) {
@@ -448,7 +446,10 @@ int orte_ess_base_orted_setup(char **hosts)
448446
orte_coll_conduit = orte_rml.open_conduit(&transports);
449447
OPAL_LIST_DESTRUCT(&transports);
450448

451-
/*
449+
/* add our contact info to our proc object */
450+
proc->rml_uri = orte_rml.get_contact_info();
451+
452+
/*
452453
* Group communications
453454
*/
454455
if (ORTE_SUCCESS != (ret = mca_base_framework_open(&orte_grpcomm_base_framework, 0))) {
@@ -638,7 +639,7 @@ int orte_ess_base_orted_finalize(void)
638639
pmix_server_finalize();
639640
(void) mca_base_framework_close(&opal_pmix_base_framework);
640641

641-
/* release the conduits */
642+
/* release the conduits */
642643
orte_rml.close_conduit(orte_mgmt_conduit);
643644
orte_rml.close_conduit(orte_coll_conduit);
644645

0 commit comments

Comments
 (0)