[petsc-dev] mpi_comm_create_group()

Jed Brown jed at jedbrown.org
Thu Dec 2 22:53:02 CST 2021

Adrian Croucher <a.croucher at auckland.ac.nz> writes:

> On 12/3/21 5:31 PM, Jed Brown wrote:
>> You'd need more calls in case of overlap (so MPI_Comm_create_group is more natural), but non-participating ranks is easy.
>>    | A process may supply the color value MPI_UNDEFINED, in which case newcomm returns MPI_COMM_NULL.
> Ah, interesting. I guess mpi_comm_split() might also have the advantage 
> that each rank only needs to know if it is in the group or not, rather 
> than needing an array of all participating ranks, as mpi_comm_create() 
> and mpi_comm_create_group() do.

That's exactly why it's often more convenient. But it is collective on the parent communicator.

More information about the petsc-dev mailing list