On Dec 12, 2011, at 9:45 AM, Josh Hursey wrote: > For MPI_Comm_split, all processes in the input communicator (oldcomm > or MPI_COMM_WORLD in your case) must call the operation since it is > collective over the input communicator. In your program rank 0 is not > calling the operation, so MPI_Comm_split is waiting for it to > participate. > > If you want rank 0 to be excluded from the any of the communicators, > you can give it a special color that is distinct from all other ranks. > Upon return from MPI_Comm_split, rank 0 will be given a new > communicator containing just one processes, itself. If you do not > intend to use that communicator you can free it immediately > afterwards.
You can also specify MPI_UNDEFINED as your color, in which case the output communicator in that process will be MPI_COMM_NULL. See MPI-2.2 p205. -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/