Per f2f meeting: if async modex is given, default to no MPI init barrier, letting the user override that if desired.
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
Этот коммит содержится в:
родитель
230bbc597d
Коммит
a7b8190fdc
@ -17,7 +17,7 @@
|
||||
* Copyright (c) 2008-2009 Sun Microsystems, Inc. All rights reserved.
|
||||
* Copyright (c) 2011 Sandia National Laboratories. All rights reserved.
|
||||
* Copyright (c) 2012-2013 Inria. All rights reserved.
|
||||
* Copyright (c) 2014-2016 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2014-2017 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2014-2016 Research Organization for Information Science
|
||||
* and Technology (RIST). All rights reserved.
|
||||
* Copyright (c) 2016 Mellanox Technologies Ltd. All rights reserved.
|
||||
@ -640,10 +640,10 @@ int ompi_mpi_init(int argc, char **argv, int requested, int *provided)
|
||||
* if data exchange is required. The modex occurs solely across procs
|
||||
* in our job. If a barrier is required, the "modex" function will
|
||||
* perform it internally */
|
||||
active = true;
|
||||
opal_pmix.commit();
|
||||
if (!opal_pmix_base_async_modex) {
|
||||
if (NULL != opal_pmix.fence_nb) {
|
||||
active = true;
|
||||
opal_pmix.fence_nb(NULL, opal_pmix_collect_all_data,
|
||||
fence_release, (void*)&active);
|
||||
OMPI_LAZY_WAIT_FOR_COMPLETION(active);
|
||||
|
@ -14,7 +14,7 @@
|
||||
* Copyright (c) 2007-2015 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* Copyright (c) 2013 NVIDIA Corporation. All rights reserved.
|
||||
* Copyright (c) 2013-2016 Intel, Inc. All rights reserved
|
||||
* Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
|
||||
* Copyright (c) 2015 Mellanox Technologies, Inc.
|
||||
* All rights reserved.
|
||||
* Copyright (c) 2016 Research Organization for Information Science
|
||||
@ -37,6 +37,7 @@
|
||||
#include "ompi/runtime/params.h"
|
||||
#include "ompi/mca/rte/rte.h"
|
||||
|
||||
#include "opal/mca/pmix/base/base.h"
|
||||
#include "opal/util/argv.h"
|
||||
#include "opal/util/output.h"
|
||||
#include "opal/util/show_help.h"
|
||||
@ -286,7 +287,11 @@ int ompi_mpi_register_params(void)
|
||||
MCA_BASE_VAR_SCOPE_READONLY,
|
||||
&ompi_mpi_dynamics_enabled);
|
||||
|
||||
ompi_async_mpi_init = false;
|
||||
if (opal_pmix_base_async_modex) {
|
||||
ompi_async_mpi_init = true;
|
||||
} else {
|
||||
ompi_async_mpi_init = false;
|
||||
}
|
||||
(void) mca_base_var_register("ompi", "async", "mpi", "init",
|
||||
"Do not perform a barrier at the end of MPI_Init",
|
||||
MCA_BASE_VAR_TYPE_BOOL, NULL, 0, 0,
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user