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/
CUDA version of Leap-Frog integrator with basic tests
Part of the GPU-only loop. Curent version is as a stand-alone module,
with its own coordinate, velocities and forces data management.
To activate, set environment variable GMX_INTEGRATE_GPU.
-- Only basic Leap-Frog is implemented.
-- No temperature control.
-- No pressure control.