1
1

LSF expresses its affinity file in hwthreads and expects those to be used as cpus, so set things accordingly

Этот коммит содержится в:
Ralph Castain 2014-12-19 12:06:05 -08:00
родитель 9144517ad4
Коммит 43a40f8aac

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

@ -30,6 +30,7 @@
#include <lsf/lsbatch.h>
#include "opal/util/argv.h"
#include "opal/mca/hwloc/hwloc.h"
#include "orte/mca/rmaps/rmaps_types.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
/* 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);
/* 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
* the hostfile */
for (i=0; i < jdata->apps->size; i++) {