Merge pull request #4291 from rhc54/topic/ppr
Correctly assign locales when mapping ppr
Этот коммит содержится в:
Коммит
d585c5de9f
@ -711,8 +711,8 @@ static int assign_locations(orte_job_t *jdata)
|
|||||||
/* map the specified number of procs to each such resource on this node,
|
/* map the specified number of procs to each such resource on this node,
|
||||||
* recording the locale of each proc so we know its cpuset
|
* recording the locale of each proc so we know its cpuset
|
||||||
*/
|
*/
|
||||||
cnt = 0;
|
|
||||||
for (i=0; i < nobjs; i++) {
|
for (i=0; i < nobjs; i++) {
|
||||||
|
cnt = 0;
|
||||||
obj = opal_hwloc_base_get_obj_by_type(node->topology->topo,
|
obj = opal_hwloc_base_get_obj_by_type(node->topology->topo,
|
||||||
level, cache_level,
|
level, cache_level,
|
||||||
i, OPAL_HWLOC_AVAILABLE);
|
i, OPAL_HWLOC_AVAILABLE);
|
||||||
@ -723,6 +723,10 @@ static int assign_locations(orte_job_t *jdata)
|
|||||||
if (proc->name.jobid != jdata->jobid) {
|
if (proc->name.jobid != jdata->jobid) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
/* if we already assigned it, then skip */
|
||||||
|
if (orte_get_attribute(&proc->attributes, ORTE_PROC_HWLOC_LOCALE, NULL, OPAL_PTR)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
nprocs_mapped++;
|
nprocs_mapped++;
|
||||||
cnt++;
|
cnt++;
|
||||||
orte_set_attribute(&proc->attributes, ORTE_PROC_HWLOC_LOCALE, ORTE_ATTR_LOCAL, obj, OPAL_PTR);
|
orte_set_attribute(&proc->attributes, ORTE_PROC_HWLOC_LOCALE, ORTE_ATTR_LOCAL, obj, OPAL_PTR);
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user