Skip to content

Commit 91be01b

Browse files
authored
Merge pull request #7652 from rhc54/topic/het
Cleanup heterogeneous builds
2 parents 5315475 + 60c650e commit 91be01b

File tree

17 files changed

+164
-196
lines changed

17 files changed

+164
-196
lines changed

config/ompi_setup_prrte.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ AC_DEFUN([OMPI_SETUP_PRRTE],[
102102
opal_prrte_prefix_arg=
103103
fi
104104

105-
opal_prrte_args="--prefix=$prefix $opal_prrte_prefix_arg $opal_prrte_libevent_arg $opal_prrte_hwloc_arg $opal_prrte_pmix_arg"
105+
opal_prrte_args="--prefix=$prefix --with-proxy-version-string=$OPAL_VERSION --with-proxy-package-name=\"Open MPI\" --with-proxy-bugreport=\"https://www.open-mpi.org/community/help/\" $opal_prrte_prefix_arg $opal_prrte_libevent_arg $opal_prrte_hwloc_arg $opal_prrte_pmix_arg"
106106
AS_IF([test "$enable_debug" = "yes"],
107107
[opal_prrte_args="--enable-debug $opal_prrte_args"
108108
CFLAGS="$OPAL_CFLAGS_BEFORE_PICKY $OPAL_VISIBILITY_CFLAGS -g"],

contrib/platform/intel/bend/mac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ enable_mem_debug=yes
66
enable_mem_profile=no
77
enable_debug_symbols=yes
88
enable_binaries=yes
9-
enable_heterogeneous=no
9+
enable_heterogeneous=yes
1010
enable_picky=yes
1111
enable_debug=yes
1212
enable_shared=yes

ompi/mca/mtl/psm2/mtl_psm2_component.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* Copyright (c) 2006-2010 QLogic Corporation. All rights reserved.
1414
* Copyright (c) 2012-2017 Los Alamos National Security, LLC. All rights
1515
* reserved.
16-
* Copyright (c) 2013-2017 Intel, Inc. All rights reserved
16+
* Copyright (c) 2013-2020 Intel, Inc. All rights reserved.
1717
* Copyright (c) 2018 Research Organization for Information Science
1818
* and Technology (RIST). All rights reserved.
1919
* Copyright (c) 2018 Amazon.com, Inc. or its affiliates. All Rights reserved.
@@ -346,15 +346,12 @@ ompi_mtl_psm2_component_close(void)
346346
static int
347347
get_local_rank(int *out_rank)
348348
{
349-
ompi_node_rank_t my_node_rank;
350-
351349
*out_rank = 0;
352350

353-
if (OMPI_NODE_RANK_INVALID == (my_node_rank =
354-
ompi_process_info.my_node_rank)) {
351+
if (OMPI_NODE_RANK_INVALID == ompi_process_info.my_node_rank) {
355352
return OMPI_ERROR;
356353
}
357-
*out_rank = (int)my_node_rank;
354+
*out_rank = (int)ompi_process_info.my_node_rank;
358355
return OMPI_SUCCESS;
359356
}
360357

ompi/proc/proc.c

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -144,19 +144,24 @@ int ompi_proc_complete_init_single (ompi_proc_t *proc)
144144
{
145145
uint32_t *ui32ptr;
146146
int ret;
147-
ui32ptr = &(proc->super.proc_arch);
148-
OPAL_MODEX_RECV_VALUE(ret, PMIX_ARCH, &proc->super.proc_name,
149-
(void**)&ui32ptr, OPAL_UINT32);
150-
if (OPAL_SUCCESS == ret) {
151-
/* if arch is different than mine, create a new convertor for this proc */
152-
if (proc->super.proc_arch != opal_local_arch) {
153-
OBJ_RELEASE(proc->super.proc_convertor);
154-
proc->super.proc_convertor = opal_convertor_create(proc->super.proc_arch, 0);
155-
}
156-
} else if (OMPI_ERR_NOT_IMPLEMENTED == ret) {
147+
/* if the proc is local, then no need to fetch it */
148+
if (OPAL_PROC_ON_LOCAL_NODE(proc->super.proc_flags)) {
157149
proc->super.proc_arch = opal_local_arch;
158150
} else {
159-
return ret;
151+
ui32ptr = &(proc->super.proc_arch);
152+
OPAL_MODEX_RECV_VALUE_OPTIONAL(ret, "OMPI_ARCH", &proc->super.proc_name,
153+
(void**)&ui32ptr, OPAL_UINT32);
154+
if (OPAL_SUCCESS == ret) {
155+
/* if arch is different than mine, create a new convertor for this proc */
156+
if (proc->super.proc_arch != opal_local_arch) {
157+
OBJ_RELEASE(proc->super.proc_convertor);
158+
proc->super.proc_convertor = opal_convertor_create(proc->super.proc_arch, 0);
159+
}
160+
} else if (OMPI_ERR_NOT_IMPLEMENTED == ret) {
161+
proc->super.proc_arch = opal_local_arch;
162+
} else {
163+
return ret;
164+
}
160165
}
161166
}
162167
#else
@@ -258,7 +263,7 @@ int ompi_proc_init(void)
258263
#if OPAL_ENABLE_HETEROGENEOUS_SUPPORT
259264
/* add our arch to the modex */
260265
OPAL_MODEX_SEND_VALUE(ret, PMIX_GLOBAL,
261-
PMIX_ARCH, &opal_local_arch, OPAL_UINT32);
266+
"OMPI_ARCH", &opal_local_arch, OPAL_UINT32);
262267
if (OPAL_SUCCESS != ret) {
263268
return ret;
264269
}

0 commit comments

Comments
 (0)