Re: [AMBER] different results by sander and sander.MPI

From: David A Case <case.biomaps.rutgers.edu>
Date: Tue, 9 Jul 2013 12:59:23 -0400

On Tue, Jul 09, 2013, Jason Swails wrote:

> Ross's analysis and description here is very good. I add here only a small
> nitpick.

OK...now that I know we are supposed to nitpick:

> Since sander.MPI employs static load balancing, 2 identical parallel runs
> on the same hardware will produce identical results (I've verified this).

This should be true *if* (the number of threads is a power of two and
init.ne.3 and ineb.eq.0 and qmmm_nml%vsolv < 2) OR (you are using a
conservative implementation of MPI that specifies the order of operations in
an mpi_reduce call). But the MPI standard does not require determinism:

  http://lists.mpich.org/pipermail/discuss/2012-November/000006.html

(This is just a top Google hit; there are many discussions of this on the
web.)

Most of the time, sander.MPI uses a hand-written b-tree reduction scheme that
perserves the order of operations. But be aware that for some inputs this
will not be the case (see the code in parallel.F90).

...dac


_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Tue Jul 09 2013 - 10:00:05 PDT
Custom Search