no-PBC no-cutoff is broken with SIMD group kernels in 4.6.1
From gmx-users 2013-05-13
So I think I figured out what was causing the discrepancy of Charmm27 energies between gromacs and NAMD. It appears that it's related to the gromacs version: energies from 4.5.7 and NAMD match very well while 4.6.1 gives energies that are different from both 4.5.7 and NAMD.
Here are the results form my tests on POPC membrane:
=============================== BOND ANGLE DIH IMP COUL LJ POT gromacs-4.5.7/gromacs.log 1539.120 3111.902 1250.540 16.284 -1705.306 -1219.345 2993.188 gromacs-4.6.1/gromacs.log 1539.120 3111.902 1250.540 16.284 -5997.992 350.084 269.945 namd-2.9/namd.out 1539.116 3111.920 1250.542 16.284 -1705.307 -1219.343 2993.211 ===============================
I think this could be due to either 1) the simulation setup should be different between 4.5.7 and 4.6.1 when running single point calculations, or 2) my 4.6.1 compilation is not correct (although all regression tests passed), or 3) there is a bug somewhere.
I'll attach a script that automates the comparison between GROMACS and NAMD in a separate post (it will make this post > 50kB). If you run it and got similar/different results as mine, I'll be happy to know. Also any comment on the simulations setup is highly appreciated.
#3 Updated by Reza Salari over 6 years ago
- File compare3.sh compare3.sh added
- File memb_nowat.pdb memb_nowat.pdb added
- File mdpfile.mdp mdpfile.mdp added
- File par_all27_prot_lipid.prm par_all27_prot_lipid.prm added
I attached the input files (pdb and mdp) that I used for the tests. I also attached the automated script plus the charmm27 par file used for the NAMD runs.
#5 Updated by Berk Hess over 6 years ago
- Assignee set to Erik Lindahl
- Priority changed from High to 7
In Gromacs the 4.6 release branch:
No pbc, no cut-off's always gives me no non-bonded interactions at all.
With pbc and a cut-off of 12 nm, the group scheme x86 SIMD kernels give incorrect energies.
Setting GMX_NOOPTIMIZEDKERNELS gives correct results. The Verlet scheme also gives correct results.
So there seem to be 2 serious bugs:
1) pbc=no skips all non-bonded interactions
2) group SIMD kernels give incorrect results for this system.
#9 Updated by Mark Abraham about 6 years ago
Hack fix in Gerrit https://gerrit.gromacs.org/#/c/2399/. Now produces correct results and avoids the known failing cases.
Erik still hopes to have time to fix the issue with the SIMD group kernels, but probably the all-vs-all kernels will not be fixed any time soon.