LSF expresses its affinity file in hwthreads and expects those to be used as cpus, so set things accordingly
Этот коммит содержится в:
родитель
9144517ad4
Коммит
43a40f8aac
@ -30,6 +30,7 @@
|
|||||||
#include <lsf/lsbatch.h>
|
#include <lsf/lsbatch.h>
|
||||||
|
|
||||||
#include "opal/util/argv.h"
|
#include "opal/util/argv.h"
|
||||||
|
#include "opal/mca/hwloc/hwloc.h"
|
||||||
|
|
||||||
#include "orte/mca/rmaps/rmaps_types.h"
|
#include "orte/mca/rmaps/rmaps_types.h"
|
||||||
#include "orte/mca/errmgr/errmgr.h"
|
#include "orte/mca/errmgr/errmgr.h"
|
||||||
@ -134,6 +135,12 @@ static int allocate(orte_job_t *jdata, opal_list_t *nodes)
|
|||||||
jdata->map->req_mapper = strdup("seq"); // need sequential mapper
|
jdata->map->req_mapper = strdup("seq"); // need sequential mapper
|
||||||
/* tell the sequential mapper that all cpusets are to be treated as "physical" */
|
/* tell the sequential mapper that all cpusets are to be treated as "physical" */
|
||||||
orte_set_attribute(&jdata->attributes, ORTE_JOB_PHYSICAL_CPUIDS, true, NULL, OPAL_BOOL);
|
orte_set_attribute(&jdata->attributes, ORTE_JOB_PHYSICAL_CPUIDS, true, NULL, OPAL_BOOL);
|
||||||
|
/* LSF provides its info as hwthreads, so set the hwthread-as-cpus flag */
|
||||||
|
opal_hwloc_use_hwthreads_as_cpus = true;
|
||||||
|
/* don't override something provided by the user, but default to bind-to hwthread */
|
||||||
|
if (!OPAL_BINDING_POLICY_IS_SET(opal_hwloc_binding_policy)) {
|
||||||
|
OPAL_SET_BINDING_POLICY(opal_hwloc_binding_policy, OPAL_BIND_TO_HWTHREAD);
|
||||||
|
}
|
||||||
/* get the apps and set the hostfile attribute in each to point to
|
/* get the apps and set the hostfile attribute in each to point to
|
||||||
* the hostfile */
|
* the hostfile */
|
||||||
for (i=0; i < jdata->apps->size; i++) {
|
for (i=0; i < jdata->apps->size; i++) {
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user