[gmx-users] numerical reproducibility on Gromacs 2018.3 GPU

Hubert Santuz hubert.santuz at gmail.com
Mon Oct 22 13:36:02 CEST 2018


Hi,

Thanks for your response and the link to the documentation. I missed that :)
The non-deterministic order is due to the fact that the sum of the NB terms
in GPU kernels is done "independently" and leads to a different order of
the sum ? Am I reading correctly ?
Can we compare it, more or less, to the effect on the number of cores used
on a CPU side ?

Hubert


Le lun. 22 oct. 2018 à 11:33, Mark Abraham <mark.j.abraham at gmail.com> a
écrit :

> Hi,
>
> On Mon, Oct 22, 2018 at 11:11 AM Hubert Santuz <hubert.santuz at gmail.com>
> wrote:
>
> > Hi everyone,
> >
> > I'm trying to get numerical identical results on a test system
> (di-alanine
> > in water) with Gromacs 2018.3 version with GPU. I'm doing 100 steps in
> NVE.
> >
> > When I'm using GPU (gmx mdrun -nt 1 -nb gpu), I'm not getting exactly the
> > same results when I launch 2 separated times the same system (same mdp,
> > same gromacs version). The numerical values start to diverge at step
> ~1-2.
> >
>
> That is expected, and is by design. See
>
> http://manual.gromacs.org/documentation/current/user-guide/managing-simulations.html#reproducibility
>
>
> > When I discard GPU (gmx mdrun -nt 1 -nb cpu), I can get the same exactly
> > results when I launch 2 separated times.
> >
>
> That case will work reproducibly, but in others you would want gmx mdrun
> -reprod.
>
>
> > I tried to play with verlet-buffer-tolerance = 0.00000005 or
> > vdw-modifier/coulomb-modifier = None.
> > I also tried the "-reprod" option in mdrun.
> >
> > Is this an expected behavior with GPU? I tried to search for
> documentation
> > about that without success.
> > Can I achieve identical numerical results with GPU in the same way as
> CPU?
> >
>
> No. That code would be slow, for no known value to users. A reproducible
> force reduction could help prove the absence of some kinds of bugs, but not
> that the code is correct enough (which itself depends on the particular
> purpose). Even if it was reproducible, you could rotate the input box by
> whatever angle, and now the trajectory will be different. Which one is
> correct? :-)
>
> Mark
>
>
> > Thanks in advance,
> > Hubert
> > --
> > Gromacs Users mailing list
> >
> > * Please search the archive at
> > http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> > posting!
> >
> > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> >
> > * For (un)subscribe requests visit
> > https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> > send a mail to gmx-users-request at gromacs.org.
> >
> --
> Gromacs Users mailing list
>
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.
>


More information about the gromacs.org_gmx-users mailing list