[gmx-users] Identical energies generated in a rerun calculation ... but ...

Mark Abraham Mark.Abraham at anu.edu.au
Sat Apr 25 08:55:51 CEST 2009


Mark Abraham wrote:
> Berk Hess wrote:
>> Hi,
>>
>> I think you can replace all state-> by state_global-> within { } after 
>> the if statement
>> on line 929 of md.c.
>> Then I think it should work for serial, PD and DD.
>>
>> Mark, could you test if this works and report back?
> 
> Thanks for the prompt response.
> 
> I had tried something equivalent to this earlier, and kept getting the 
> same segfault. I now see why... state_global is only allocated on 
> DDMASTER(cr) (or some such), so we need a slightly more cunning 
> solution. I'll figure it out tomorrow.

OK I have a complete fix. Under DD, non-DDMASTER processes should skip 
this step copying data structures from rerun_fr to state_global. The 
sizes of the various loop copies should be state_global->natoms, not 
mdatoms->nr (which is smaller than state_global->natoms under DD, but 
equal under other conditions). So attached is a patchfile to be applied 
from src/kernel with

patch md.c < dd_mdrun.patch

I tested single-processor with and without mpi, four processors with DD 
and no separate PME nodes, four processors with PD, and 16 processors 
with DD and 5 PME nodes and got agreement between the leading 
significant figures reported in the .log file for all cases compared 
with single-processor plain 4.0.4.

I had a quick look at CVS releases-4.0-patches and since this bit of 
do_md() looks the same, this patch can probably be applied there and/or 
to the head 4.1 branch painlessly.

I will attach this patchfile to the bugzilla.

Before a release of 4.0.5 or 4.1, normal users should do "mdrun -rerun 
-pd", unless they're confident with applying this patch!

Mark
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: dd_rerun.patch
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-users/attachments/20090425/3dd019c3/attachment.ksh>


More information about the gromacs.org_gmx-users mailing list