Feature #2816: Device-side update&constraits, buffer ops and multi-gpu comms
CUDA version of Leap Frog algorithm
The initial implementation works independently from other parts of the code, which require a temporary infrastructure to hide CUDA-specific types from CPU compiler, manage coordinates, velocities and forces, handle periodic boundary conditions. It is enabled by setting environmental variable "GMX_INTEGRATE_GPU".
Initial implementation as a stand-alone class.
- Make sure that all not supported cases exit with error.
- Temperature control.
- Pressure control.
Tests against the exact solution of constant force case.
- Unify tests with the CPU version.
Current version: https://gerrit.gromacs.org/#/c/9272/