Hi,
I am tried to run an MPI program in
a heterogeneous environment using the pml cm component. However, open mpi
returned with an error message indicating that PML add procs returned "Not
supported". I dived into the cm code to see what was wrong and I came
upon the code below, which basically shows that if the processes are running
on different architectures, then return "not supported". Now,
I'm wondering whether my interpretation is correct or not. Is it true that
the cm component does not support a heterogeneous environment? If so, will
the developers support this in the future? How could I get around this
while still using the cm component? What will happen if I rebuilt openmpi
without these statements?
I would appreciate your help.
Code:
mca_pml_cm_add_procs(....){
#if OMPI_ENABLE_HETEROGENEOUS_SUPPORT
107 for (i = 0 ; i <
nprocs ; ++i) {
108 if (procs[i]->proc_arch
!= ompi_proc_local()->proc_arch) {
109
return OMPI_ERR_NOT_SUPPORTED;
110 }
111 }
112 #endif
.
.
.
}
Sajjad Tabib