Unfortunately, I think that this is a known problem with INTERCOMM_MERGE and COMM_SPAWN parents and children:
https://svn.open-mpi.org/trac/ompi/ticket/2904 On Jan 26, 2012, at 12:11 PM, Rodrigo Oliveira wrote: > Hi there, I tried to understand the behavior Thatyene said and I think is a > bug in open mpi implementation. > > I do not know what exactly is happening because I am not an expert in ompi > code, but I could see that when one process define its color as > MPI_UNDEFINED, one of the processes on the inter-communicator blocks in the > call to the function bellow: > > /* Step 3: set up the communicator */ > /* --------------------------------------------------------- */ > /* Create the communicator finally */ > rc = ompi_comm_set ( &newcomp, /* new comm */ > comm, /* old comm */ > my_size, /* local_size */ > lranks, /* local_ranks */ > my_rsize, /* remote_size */ > rranks, /* remote_ranks */ > NULL, /* attrs */ > comm->error_handler,/* error handler */ > (pass_on_topo)? > (mca_base_component_t *)comm->c_topo_component: > NULL, /* topo component */ > NULL, /* local group */ > NULL /* remote group */ > ); > > This function is called inside ompi_comm_split, in the file > ompi/communicator/comm.c > > Is there a solution for this problem in some revision? I insist in this > problem because I need to use this function for a similar purpose. > > Any idea? > > > On Wed, Jan 25, 2012 at 4:50 PM, Thatyene Louise Alves de Souza Ramos > <thaty...@gmail.com> wrote: > It seems the split is blocking when must return MPI_COMM_NULL, in the case I > have one process with a color that does not exist in the other group or with > the color = MPI_UNDEFINED. > > On Wed, Jan 25, 2012 at 4:28 PM, Rodrigo Oliveira <rsilva.olive...@gmail.com> > wrote: > Hi Thatyene, > > I took a look in your code and it seems to be logically correct. Maybe there > is some problem when you call the split function having one client process > with color = MPI_UNDEFINED. I understood you are trying to isolate one of the > client process to do something applicable only to it, am I wrong? According > to open mpi documentation, this function can be used to do that, but it is > not working. Anyone have any idea about what can be? > > Best regards > > Rodrigo Oliveira > > > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users > > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/