SYCL-specific routines for the GPU implementation of SETTLE constraints algorithm.
- Author
- Artem Zhmurov zhmur.nosp@m.ov@g.nosp@m.mail..nosp@m.com
|
template<bool updateVelocities, bool computeVirial> |
auto | gmx::settleKernel (sycl::handler &cgh, const int numSettles, DeviceAccessor< WaterMolecule, mode::read > a_settles, SettleParameters pars, DeviceAccessor< Float3, mode::read > a_x, DeviceAccessor< Float3, mode::read_write > a_xp, float invdt, OptionalAccessor< Float3, mode::read_write, updateVelocities > a_v, OptionalAccessor< float, mode::read_write, computeVirial > a_virialScaled, PbcAiuc pbcAiuc) |
| Function returning the SETTLE kernel lambda.
|
|
template<bool updateVelocities, bool computeVirial, class... Args> |
static sycl::event | gmx::launchSettleKernel (const DeviceStream &deviceStream, int numSettles, Args &&...args) |
| SETTLE SYCL kernel launch code.
|
|
template<class... Args> |
static sycl::event | gmx::launchSettleKernel (bool updateVelocities, bool computeVirial, Args &&...args) |
| Select templated kernel and launch it.
|
|
void | gmx::launchSettleGpuKernel (int numSettles, const DeviceBuffer< WaterMolecule > &d_atomIds, const SettleParameters &settleParameters, const DeviceBuffer< Float3 > &d_x, DeviceBuffer< Float3 > d_xp, bool updateVelocities, DeviceBuffer< Float3 > d_v, real invdt, bool computeVirial, DeviceBuffer< float > virialScaled, const PbcAiuc &pbcAiuc, const DeviceStream &deviceStream) |
| Apply SETTLE. More...
|
|