[mpich-discuss] communicator creation/deletion semantics and performance

Jim Dinan dinan at mcs.anl.gov
Tue Oct 30 12:52:31 CDT 2012


Hi Edgar,

On 10/30/12 11:33 AM, Edgar Solomonik wrote:
> 1. Is there an overhead to MPI_Comm_split and MPI_Comm_free, for
> instance do they need to perform inter-process communication?

In general, creating a communicator requires communication, but freeing 
it does not.  There is a new, cheaper communicator creation routine in 
MPI-3, called MPI_Comm_create_group, that is now available in MPICH.

> 2. Does the limit on the number of communicators bound the number of
> communicators ever created or the number of live (non-freed) communicators?

Each process has N context IDs available for use in matching 
communication operations with communicators, so a process can be a 
member of at most N live communicators.  The context ID uniquely 
identifies a communicator within the group of processes in that 
communicator; disjoint communicators can (and do) safely use the same 
context id.

  ~Jim.


More information about the mpich-discuss mailing list