Re: [AMBER] How to reproduce a parallel PMEMD run?

From: Robert Duke <>
Date: Wed, 25 Mar 2009 23:45:49 +0000

There has been extensive discussion as to why this is not possible, actually
with either pmemd or sander, though pmemd may have a bit more variability
than sander due to more dynamic workload reassignment algorithms. At issue
is "network indeterminancy" - you can't be sure about the order of network
i/o completion when multiple communications events are scheduled, and this
effects the order of additions. Now, order of additions should be
commutative in the "math world", but in the real world of computers, it is
not, and rounding error is influenced by the order of a sequence of
additions. The effect is very very small - last decimal place in a double
precision floating point number, but due to the nature of dynamics, it does
not take all that long for this effect to be observable on output - say
300-500 steps. So if you want absolute reproducibility, you have to do
uniprocessor runs. Note, however, that absolute reproducibility is
basically meaningless here. I have made much more extensive responses to
queries of this type on the amber reflector in the past; please refer to
those emails for further insight if need be. Note that we DO carefully
evaluate code for reproducibility out to 300-500 steps, and try to set up
the test runs to catch error conditions in this many steps.
Regards - Bob Duke

----- Original Message -----
From: "Siang Yip" <>
To: <>
Sent: Wednesday, March 25, 2009 6:33 PM
Subject: [AMBER] How to reproduce a parallel PMEMD run?

Dear Amber Users,

I was trying to reproduce a parallel PMEMD run from yesterday, but found
itís impossible even if the same restart file, the same input file, and the
same machine were used. Anyone has any suggestion on how to reproduce the
parallel MD run? The input file is listed as below.

2000ps MD
  imin = 0, irest = 1, ntx = 7,
  ntb = 2, pres0 = 1.0, ntp = 1,
  taup = 3.0, iwrap=1,
  cut = 8, ntr = 0,
  ntc = 2, ntf = 2,
  tempi = 300.0, temp0 = 300.0,
  ntt = 1,
  nstlim = 1000000, dt = 0.002,
  ntpr = 2500, ntwx = 2500, ntwr = 10000

Best Regards!
Xiang Ye
AMBER mailing list
AMBER mailing list
Received on Fri Mar 27 2009 - 01:12:09 PDT
Custom Search