1
1

Warn users if they set opal_paffinity_alone, either to true or false, that this parameter is no longer functional - they must use the --bind-to option and its corresponding mca param.

This commit was SVN r25567.
Этот коммит содержится в:
Ralph Castain 2011-12-03 01:10:52 +00:00
родитель c10f41c87e
Коммит 6fefe236a4
3 изменённых файлов: 28 добавлений и 2 удалений

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

@ -22,6 +22,8 @@
#include "opal/constants.h" #include "opal/constants.h"
#include "opal/util/output.h" #include "opal/util/output.h"
#include "opal/util/show_help.h"
#include "opal/mca/mca.h" #include "opal/mca/mca.h"
#include "opal/mca/base/base.h" #include "opal/mca/base/base.h"
#include "opal/mca/base/mca_base_param.h" #include "opal/mca/base/mca_base_param.h"
@ -73,10 +75,13 @@ int opal_paffinity_base_register_params(void)
opal_paffinity_base_output = -1; opal_paffinity_base_output = -1;
} }
/*** DEPRECATED - NO LONGER FUNCTIONAL, BUT MPIRUN
* WILL OUTPUT WARNING FOR NOW
***/
id = mca_base_param_reg_int_name("opal", "paffinity_alone", id = mca_base_param_reg_int_name("opal", "paffinity_alone",
"If nonzero, assume that this job is the only (set of) process(es) running on each node and bind processes to processors, starting with processor ID 0", "If nonzero, assume that this job is the only (set of) process(es) running on each node and bind processes to processors, starting with processor ID 0",
false, false, false, false,
0, NULL); -1, NULL);
/* register the historical mpi_paffinity_alone synonym, but don't /* register the historical mpi_paffinity_alone synonym, but don't
* declare it deprecated so we don't scare the users. * declare it deprecated so we don't scare the users.
* *
@ -85,7 +90,12 @@ int opal_paffinity_base_register_params(void)
*/ */
mca_base_param_reg_syn_name(id, "mpi", "paffinity_alone", false); mca_base_param_reg_syn_name(id, "mpi", "paffinity_alone", false);
mca_base_param_lookup_int(id, &value); mca_base_param_lookup_int(id, &value);
opal_paffinity_alone = OPAL_INT_TO_BOOL(value); /* we just want to know if someone set it */
if (-1 != value) {
opal_paffinity_alone = true;
} else {
opal_paffinity_alone = false;
}
mca_base_param_reg_int_name("paffinity", "base_bound", mca_base_param_reg_int_name("paffinity", "base_bound",
"Process affinity was set by an external entity", "Process affinity was set by an external entity",

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

@ -28,3 +28,11 @@ Open MPI developer):
%s failed %s failed
--> Returned value %d instead of OPAL_SUCCESS --> Returned value %d instead of OPAL_SUCCESS
#
[opal_paffinity_alone:deprecated]
The [opal | mpi]_paffinity_alone MCA params are now deprecated
and do not do anything. Meaning: your job may be running without
processor affinity support (!).
You should probably be using the --bind-to option to
mpirun instead.

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

@ -49,6 +49,7 @@
#include "opal/mca/event/event.h" #include "opal/mca/event/event.h"
#include "opal/mca/installdirs/installdirs.h" #include "opal/mca/installdirs/installdirs.h"
#include "opal/mca/paffinity/base/base.h"
#include "opal/mca/base/base.h" #include "opal/mca/base/base.h"
#include "opal/util/argv.h" #include "opal/util/argv.h"
#include "opal/util/output.h" #include "opal/util/output.h"
@ -543,6 +544,13 @@ int orterun(int argc, char *argv[])
/* Setup MCA params */ /* Setup MCA params */
orte_register_params(); orte_register_params();
/*** NOTIFY IF DEPRECATED OPAL_PAFFINITY_ALONE WAS SET ***/
if (opal_paffinity_alone) {
orte_show_help("help-opal-runtime.txt",
"opal_paffinity_alone:deprecated",
true);
}
/* force the debugger symbols to be included in orterun. /* force the debugger symbols to be included in orterun.
* this is required since the symbols are instantiated in * this is required since the symbols are instantiated in
* the orte library, yet they need to be accessed * the orte library, yet they need to be accessed