1
1

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.
Этот коммит содержится в:
Jeff Squyres 2005-08-16 17:18:56 +00:00
родитель 5e5fd5a8f2
Коммит a7058bbe43
2 изменённых файлов: 26 добавлений и 3 удалений

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

@ -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);
}
}
}