1
1

Ensure consistency between max_procs and univ_size values - since orte wants max_procs, have the proc get that value instead of univ_size

Make the singleton module consistent as well
Этот коммит содержится в:
Ralph Castain 2016-04-28 20:21:01 -07:00
родитель ec66a6a1f8
Коммит 0f05893952
3 изменённых файлов: 11 добавлений и 8 удалений

Просмотреть файл

@ -154,11 +154,11 @@ static int rte_init(void)
}
orte_process_info.my_node_rank = u16;
/* get universe size */
OPAL_MODEX_RECV_VALUE(ret, OPAL_PMIX_UNIV_SIZE,
/* get max procs */
OPAL_MODEX_RECV_VALUE(ret, OPAL_PMIX_MAX_PROCS,
ORTE_PROC_MY_NAME, &u32ptr, OPAL_UINT32);
if (OPAL_SUCCESS != ret) {
error = "getting univ size";
error = "getting max procs";
goto error;
}
orte_process_info.max_procs = u32;

Просмотреть файл

@ -217,14 +217,17 @@ static int rte_init(void)
}
orte_process_info.my_node_rank = u16;
/* get universe size */
OPAL_MODEX_RECV_VALUE(ret, OPAL_PMIX_UNIV_SIZE,
/* get max procs */
OPAL_MODEX_RECV_VALUE(ret, OPAL_PMIX_MAX_PROCS,
ORTE_PROC_MY_NAME, &u32ptr, OPAL_UINT32);
if (OPAL_SUCCESS != ret) {
error = "getting univ size";
error = "getting max procs";
goto error;
}
orte_process_info.num_procs = u32;
orte_process_info.max_procs = u32;
/* we are a singleton, so there is only one proc in the job */
orte_process_info.num_procs = 1;
/* push into the environ for pickup in MPI layer for
* MPI-3 required info key
*/

Просмотреть файл

@ -296,7 +296,7 @@ int orte_pmix_server_register_nspace(orte_job_t *jdata)
kv = OBJ_NEW(opal_value_t);
kv->key = strdup(OPAL_PMIX_UNIV_SIZE);
kv->type = OPAL_UINT32;
kv->data.uint32 = jdata->num_procs;
kv->data.uint32 = jdata->total_slots_alloc;
opal_list_append(info, &kv->super);
/* job size */