On 23 Mar 2009, at 21:11, Ralph Castain wrote:
Just one point to emphasize - Eugene said it, but many times people
don't fully grasp the implication.
On an MPI_Allreduce, the algorithm requires that all processes -enter-
the call before anyone can exit.
It does -not- require that they all exit at the same time.
So if you want to synchronize on the -exit-, as your question
indicated, then you must add the MPI_Barrier as you describe.
All MPI_Barrier requires is that all processes enter the call before
anyone can exit, I'm not sure that "synchronising on exit" has any
particular meaning at all.
Putting a MPI_Barrier call immediatly after a MPI_Allreduce call would
be superfluous.
Ashley,