Re: amber-developers: Verlet update time and ntt=3 parallel scaling

From: David A. Case <case.scripps.edu>
Date: Tue, 6 May 2008 15:47:28 -0700

On Tue, May 06, 2008, Robert Duke wrote:

> This is a very well known issue with ntt 3, caused by the nonscaling nature
> of the random number generator in use. To run separate rng's in each
> process would potentially be theoretically unsound, so we run through the
> sequence of all random numbers in all processors.

I think the *main* reason for running through all random numbers on each
machine is for testing: this ensures that you get the same trajectory (at
least for some number of steps) no matter how many cpus are used.

I think there would be no problem in starting each node with its own seed (say
from setting ig=-1), and modifying the code so the extra calls to random() are
not used. The statistical properties of the rng are supposed to be
independent of the seed, and as long as each node is not using the same seed,
I don't see a problem. [But I don't know how to *prove* this.]

...dave
Received on Wed May 07 2008 - 06:07:50 PDT
Custom Search