Be friendly -- if paffinity is requested and we are unable to set it
(for any reason), print a friendly warning message. This commit was SVN r6907.
Этот коммит содержится в:
родитель
5e5fd5a8f2
Коммит
a7058bbe43
@ -30,3 +30,13 @@ developer):
|
||||
WARNING: The MCA parameter mpi_param_check has been set to true, but
|
||||
parameter checking has been compiled out of Open MPI. The
|
||||
mpi_param_check value has therefore been ignored.
|
||||
[mpi_init:statup:paffinity-unavailable]
|
||||
The MCA parameter "mpi_paffinity_alone" was set to a nonzero value,
|
||||
but Open MPI was unable to bind MPI_COMM_WORLD rank %s to a processor.
|
||||
|
||||
Typical causes for this problem include:
|
||||
|
||||
- A node was oversubscribed (more processes than processors), in
|
||||
which case Open MPI will not bind any processes on that node
|
||||
- A startup mechanism was used which did not tell Open MPI which
|
||||
processors to bind processes to
|
||||
|
@ -33,6 +33,7 @@
|
||||
#include "orte/mca/oob/oob.h"
|
||||
#include "orte/mca/oob/base/base.h"
|
||||
#include "orte/mca/ns/ns.h"
|
||||
#include "orte/mca/ns/base/base.h"
|
||||
#include "orte/mca/gpr/gpr.h"
|
||||
#include "orte/mca/rml/rml.h"
|
||||
#include "orte/mca/schema/schema.h"
|
||||
@ -139,11 +140,23 @@ int ompi_mpi_init(int argc, char **argv, int requested, int *provided)
|
||||
|
||||
if (ompi_mpi_paffinity_alone) {
|
||||
int param, value;
|
||||
bool set = false;
|
||||
param = mca_base_param_find("mpi", NULL, "paffinity_processor");
|
||||
if (param >= 0) {
|
||||
mca_base_param_lookup_int(param, &value);
|
||||
if (value >= 0) {
|
||||
opal_paffinity_base_set(value);
|
||||
if (OMPI_SUCCESS == mca_base_param_lookup_int(param, &value)) {
|
||||
if (value >= 0) {
|
||||
if (OPAL_SUCCESS == opal_paffinity_base_set(value)) {
|
||||
set = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!set) {
|
||||
char *vpid;
|
||||
orte_ns_base_get_vpid_string(&vpid, orte_process_info.my_name);
|
||||
opal_show_help("help-mpi-runtime",
|
||||
"mpi_init:startup:paffinity-unavailable",
|
||||
true, vpid);
|
||||
free(vpid);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user