Disable CM and DR PMLs in heterogeneous situtations as neither are
heterogeneous safe. Refs trac:587 This commit was SVN r12942. The following Trac tickets were found above: Ticket 587 --> https://svn.open-mpi.org/trac/ompi/ticket/587
Этот коммит содержится в:
родитель
d401a65975
Коммит
99c0a29602
@ -79,6 +79,14 @@ mca_pml_cm_add_procs(struct ompi_proc_t** procs, size_t nprocs)
|
||||
size_t i;
|
||||
struct mca_mtl_base_endpoint_t **endpoints;
|
||||
|
||||
#if OMPI_ENABLE_HETEROGENEOUS_SUPPORT
|
||||
for (i = 0 ; i < nprocs ; ++i) {
|
||||
if (procs[i]->proc_arch != ompi_proc_local()->proc_arch) {
|
||||
return OMPI_ERR_NOT_SUPPORTED;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
endpoints = (struct mca_mtl_base_endpoint_t**)malloc(nprocs * sizeof(struct mca_mtl_base_endpoint_t*));
|
||||
if (NULL == endpoints) return OMPI_ERROR;
|
||||
|
||||
|
@ -108,10 +108,19 @@ int mca_pml_dr_add_procs(ompi_proc_t** procs, size_t nprocs)
|
||||
struct mca_bml_base_endpoint_t **bml_endpoints = NULL;
|
||||
int rc;
|
||||
int32_t i;
|
||||
size_t j;
|
||||
|
||||
if(nprocs == 0)
|
||||
return OMPI_SUCCESS;
|
||||
|
||||
#if OMPI_ENABLE_HETEROGENEOUS_SUPPORT
|
||||
for (j = 0 ; j < nprocs ; ++j) {
|
||||
if (procs[j]->proc_arch != ompi_proc_local()->proc_arch) {
|
||||
return OMPI_ERR_NOT_SUPPORTED;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
OBJ_CONSTRUCT(&reachable, ompi_bitmap_t);
|
||||
rc = ompi_bitmap_init(&reachable, (int)nprocs);
|
||||
if(OMPI_SUCCESS != rc)
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user