[gmx-developers] Verlet-Tables integration
Adriaan Riet
adriaan.riet at case.edu
Tue Nov 13 22:47:34 CET 2018
Hello everyone,
I know that Feature #1347 talks about the necessary steps to get tables
into Verlet (pasted below). I'm curious to know where this sits. I'm happy
to contribute where (if) I can, but don't see clearly where to jump in.
Have the points of the list been integrated into redmine feature requests?
Have any of these been implemented yet?
Thanks,
Adriaan Riet
Things to do (roughly in order):
- support regressiontests being able to read tables from grompp or
mdrun, so that new functionality in the code doesn't need matching changes
to the other repo for valid testing in the few cases where they use tables (
*CSTab* in group-scheme kernels)
- add integration tests, e.g. a Martini-style(?) non-bonded, and several
kinds of bonded interactions
- extract code from mdlib (particularly init_forcerec) so that it is
callable at grompp time, make sure grompp can issue all notes and warnings,
permit mdrun to repeat any of those that it might need to. Keep code for
making hardware-specific layout decisions in mdrun, because we won't know
whether the kernels need tables for CPUs or GPUs until then. If we can do
it without significant loss of accuracy, grompp should handle any
regularization of the user input (e.g. by constructing and testing CPU and
GPU tables, if necessary).
- move e.g. dihedral-interaction table reading to grompp, bump .tpr
version, write to .tpr, read in mdrun, add infrastructure to support gmx
check and gmx dump on new .tpr contents
- move angle- and bond-interaction table reading to grompp, probably
another .tpr version bump
- move short-range interaction tables to grompp for group scheme
- extend [pairs] to permit atom-type pairs to use an interaction shape
read from a table, e.g. from a file named on that line of the topology.
Should we have a per-pair-type scaling parameter? Requirements for
simulations that use only user tables, and those that mix user tables with
normal short-ranged interaction types probably differ.
- add Verlet-scheme table-support infrastructure
- add CPU kernels (hopefully in new scheme)
- add GPU kernels (recycle from Alfredo's patch in gerrit)
- after some time passes and master branch rebases enough, remove
workaround from regressiontests (which is anyway only needed for
group-scheme kernel testing)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20181113/95f5aa31/attachment.html>
More information about the gromacs.org_gmx-developers
mailing list