Make errors_mpi3 compat a global mpi-3 compatibility flag
Signed-off-by: Aurelien Bouteiller <bouteill@icl.utk.edu>
Этот коммит содержится в:
родитель
7dfe6c1adc
Коммит
e0df0f4bd9
@ -47,7 +47,7 @@ int ompi_errhandler_invoke(ompi_errhandler_t *errhandler, void *mpi_object,
|
|||||||
int32_t state = ompi_mpi_state;
|
int32_t state = ompi_mpi_state;
|
||||||
if (state >= OMPI_MPI_STATE_INIT_COMPLETED &&
|
if (state >= OMPI_MPI_STATE_INIT_COMPLETED &&
|
||||||
state < OMPI_MPI_STATE_FINALIZE_PAST_COMM_SELF_DESTRUCT) {
|
state < OMPI_MPI_STATE_FINALIZE_PAST_COMM_SELF_DESTRUCT) {
|
||||||
comm = (ompi_mpi_errors_mpi3)? &ompi_mpi_comm_world.comm: &ompi_mpi_comm_self.comm;
|
comm = (ompi_mpi_compat_mpi3)? &ompi_mpi_comm_world.comm: &ompi_mpi_comm_self.comm;
|
||||||
comm->error_handler->eh_comm_fn(&comm, &err_code, message, NULL);
|
comm->error_handler->eh_comm_fn(&comm, &err_code, message, NULL);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -75,7 +75,7 @@ bool ompi_async_mpi_finalize = false;
|
|||||||
uint32_t ompi_add_procs_cutoff = OMPI_ADD_PROCS_CUTOFF_DEFAULT;
|
uint32_t ompi_add_procs_cutoff = OMPI_ADD_PROCS_CUTOFF_DEFAULT;
|
||||||
bool ompi_mpi_dynamics_enabled = true;
|
bool ompi_mpi_dynamics_enabled = true;
|
||||||
|
|
||||||
bool ompi_mpi_errors_mpi3 = true;
|
bool ompi_mpi_compat_mpi3 = false;
|
||||||
|
|
||||||
char *ompi_mpi_spc_attach_string = NULL;
|
char *ompi_mpi_spc_attach_string = NULL;
|
||||||
bool ompi_mpi_spc_dump_enabled = false;
|
bool ompi_mpi_spc_dump_enabled = false;
|
||||||
@ -326,13 +326,13 @@ int ompi_mpi_register_params(void)
|
|||||||
MCA_BASE_VAR_SYN_FLAG_DEPRECATED);
|
MCA_BASE_VAR_SYN_FLAG_DEPRECATED);
|
||||||
}
|
}
|
||||||
|
|
||||||
ompi_mpi_errors_mpi3 = true;
|
ompi_mpi_compat_mpi3 = false;
|
||||||
(void) mca_base_var_register("ompi", "mpi", NULL, "errors_mpi3",
|
(void) mca_base_var_register("ompi", "mpi", NULL, "compat_mpi3",
|
||||||
"A boolean value for whether errors in operations without a handle are raised on (true) MPI_COMM_WORLD (MPI-3 behavior) or (false) MPI_COMM_SELF (MPI-4 behavior).",
|
"A boolean value for whether Open MPI operates in MPI-3 compatibility mode; this changes the following behavior: in operations without a handle, errors are raised on (true) MPI_COMM_WORLD (MPI-3 behavior) or (false) MPI_COMM_SELF (MPI-4 behavior).",
|
||||||
MCA_BASE_VAR_TYPE_BOOL, NULL, 0, 0,
|
MCA_BASE_VAR_TYPE_BOOL, NULL, 0, 0,
|
||||||
OPAL_INFO_LVL_9,
|
OPAL_INFO_LVL_9,
|
||||||
MCA_BASE_VAR_SCOPE_READONLY,
|
MCA_BASE_VAR_SCOPE_READONLY,
|
||||||
&ompi_mpi_errors_mpi3);
|
&ompi_mpi_compat_mpi3);
|
||||||
|
|
||||||
ompi_mpi_spc_attach_string = NULL;
|
ompi_mpi_spc_attach_string = NULL;
|
||||||
(void) mca_base_var_register("ompi", "mpi", NULL, "spc_attach",
|
(void) mca_base_var_register("ompi", "mpi", NULL, "spc_attach",
|
||||||
|
@ -115,13 +115,16 @@ OMPI_DECLSPEC extern bool ompi_mpi_abort_print_stack;
|
|||||||
OMPI_DECLSPEC extern int ompi_mpi_abort_delay;
|
OMPI_DECLSPEC extern int ompi_mpi_abort_delay;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether errors in operations without a handle are raised on
|
* Whether we operate in MPI3 compatibility, or MPI4 mode (default).
|
||||||
* MPI_COMM_WORLD (MPI-3 behavior) or MPI_COMM_SELF (MPI-4 behavior).
|
|
||||||
*
|
*
|
||||||
* true: raise on MPI_COMM_WORLD
|
* true: use MPI3 compatibility
|
||||||
* false: raise on MPI_COMM_SELF
|
* false: use MPI4 compatibility (default)
|
||||||
*/
|
*
|
||||||
OMPI_DECLSPEC extern bool ompi_mpi_errors_mpi3;
|
* Behavioral changes:
|
||||||
|
* - errors in operations without a handle are raised on MPI_COMM_WORLD (MPI-3 behavior) or MPI_COMM_SELF (MPI-4 behavior)
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
OMPI_DECLSPEC extern bool ompi_mpi_compat_mpi3;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether sparse MPI group storage formats are supported or not.
|
* Whether sparse MPI group storage formats are supported or not.
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user