If we are using the default bindings, and one or more nodes are not setup to support binding, then don't error out - just don't bind.
Thanks to Annu Desari for pointing out the problem.
Этот коммит содержится в:
родитель
2f365720b0
Коммит
b67b3619fc
@ -195,6 +195,8 @@ typedef uint16_t opal_binding_policy_t;
|
||||
((pol) & 0x0fff)
|
||||
#define OPAL_SET_BINDING_POLICY(target, pol) \
|
||||
(target) = (pol) | (((target) & 0xf000) | OPAL_BIND_GIVEN)
|
||||
#define OPAL_SET_DEFAULT_BINDING_POLICY(target, pol) \
|
||||
(target) = (pol) | (((target) & 0xf000) | OPAL_BIND_IF_SUPPORTED)
|
||||
/* check if policy is set */
|
||||
#define OPAL_BINDING_POLICY_IS_SET(pol) \
|
||||
((pol) & 0x4000)
|
||||
|
@ -12,7 +12,7 @@
|
||||
* Copyright (c) 2011-2012 Cisco Systems, Inc. All rights reserved.
|
||||
* Copyright (c) 2011-2012 Los Alamos National Security, LLC.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2014 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -245,19 +245,19 @@ void orte_rmaps_base_map_job(int fd, short args, void *cbdata)
|
||||
if (1 < orte_rmaps_base.cpus_per_rank) {
|
||||
/* assigning multiple cpus to a rank implies threading,
|
||||
* so we only bind to the NUMA level */
|
||||
OPAL_SET_BINDING_POLICY(jdata->map->binding, OPAL_BIND_TO_NUMA);
|
||||
OPAL_SET_DEFAULT_BINDING_POLICY(jdata->map->binding, OPAL_BIND_TO_NUMA);
|
||||
} else {
|
||||
/* for performance, bind to core */
|
||||
OPAL_SET_BINDING_POLICY(jdata->map->binding, OPAL_BIND_TO_CORE);
|
||||
OPAL_SET_DEFAULT_BINDING_POLICY(jdata->map->binding, OPAL_BIND_TO_CORE);
|
||||
}
|
||||
} else {
|
||||
if (1 < orte_rmaps_base.cpus_per_rank) {
|
||||
/* assigning multiple cpus to a rank implies threading,
|
||||
* so we only bind to the NUMA level */
|
||||
OPAL_SET_BINDING_POLICY(jdata->map->binding, OPAL_BIND_TO_NUMA);
|
||||
OPAL_SET_DEFAULT_BINDING_POLICY(jdata->map->binding, OPAL_BIND_TO_NUMA);
|
||||
} else {
|
||||
/* for performance, bind to socket */
|
||||
OPAL_SET_BINDING_POLICY(jdata->map->binding, OPAL_BIND_TO_SOCKET);
|
||||
OPAL_SET_DEFAULT_BINDING_POLICY(jdata->map->binding, OPAL_BIND_TO_SOCKET);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user