Convert nbnxn_pairlist_set_t to class PairlistSet
authorBerk Hess <hess@kth.se>
Fri, 15 Mar 2019 21:10:08 +0000 (22:10 +0100)
committerBerk Hess <hess@kth.se>
Mon, 25 Mar 2019 20:48:37 +0000 (21:48 +0100)
commit08ded432f53b665261b3bb54ba771dd30813ce28
tree6b851800adc86c70cd41b36bcceacde5e756a0f8
parentf2ce1a69eb650dfa60875fc47067f0fed097f67e
Convert nbnxn_pairlist_set_t to class PairlistSet

This change is only refactoring.
Two implementation details have changed:
The CPU and GPU pairlist objects are now straight lists instead
of array of pointer to lists. This means that the pairlist objects are
no longer allocated on their respecitive thtreads. But since the lists
have buffers to avoid cache polution and the actual i- and j-lists are
llocated thread local, this should not affect performance
ignificantly.
The free-energy lists are now only allocated with perturbed atoms.

Change-Id: Ifc76608215518edfc61c0ca8eb71ea2a928cf57c
src/gromacs/nbnxm/kerneldispatch.cpp
src/gromacs/nbnxm/nbnxm.cpp
src/gromacs/nbnxm/nbnxm.h
src/gromacs/nbnxm/nbnxm_setup.cpp
src/gromacs/nbnxm/pairlist.cpp
src/gromacs/nbnxm/pairlist.h
src/gromacs/nbnxm/pairlistset.cpp
src/gromacs/nbnxm/pairlistset.h
src/gromacs/nbnxm/prunekerneldispatch.cpp