Introduce PpForceWorkload
Assigns responsibility for knowing what work is required for the force
calculation of an MD step to a single object. Moved actual control of
executing any necessary CUDA bonded work to the new schedule
object. Changed low-level routines to assert when invalid calls are
made, because only one place should control whether work is done.
This prepares for making GpuBondedLists an opaque type, when
bonded_gpu_have_interactions will not be able to be an inline
function.
Refs #2724, #2574
Change-Id: Ie59b790c54170692b0221f5eb3812643ba6f61d6
13 files changed: