On Aug 10, 2018, at 6:27 PM, Diego Avesani <diego.aves...@gmail.com> wrote:
> The question is:
> Is it possible to have a barrier for all CPUs despite they belong to 
> different group?
> If the answer is yes I will go in more details.

By "CPUs", I assume you mean "MPI processes", right?  (i.e., not threads inside 
an individual MPI process)

Again, this is not quite a specific-enough question.  Do the different groups 
(and I assume you really mean communicators) overlap?  Are they disjoint?  Is 
there a reason MPI_COMM_WORLD is not sufficient?

There are two typical ways to barrier a set of MPI processes.

1. Write your own algorithm to do sends / receives -- and possibly even 
collectives -- to ensure that no process leaves the barrier before every 
process enters the barrier.

2. Make sure that you have a communicator that includes exactly the set of 
processes that you want (and if you don't have a communicator fitting this 
description, make one), and then call MPI_BARRIER on it.

#2 is typically the easier solution.

Jeff Squyres

users mailing list

Reply via email to