Add SYCL implementation of LeapFrogGpu
authorAndrey Alekseenko <al42and@gmail.com>
Mon, 9 Nov 2020 17:57:21 +0000 (17:57 +0000)
committerPaul Bauer <paul.bauer.q@gmail.com>
Mon, 9 Nov 2020 17:57:21 +0000 (17:57 +0000)
commit92e1eccca1e1f6a687d11915cf391217fdeeb8ad
tree693705e6943d89e824c8551f5dc2544b31766457
parente2eeab4aea5be826cabe858a5584830b4c1fe641
Add SYCL implementation of LeapFrogGpu

An implementation of LeapFrogGpu integrator using SYCL. Also, some additions to SYCL's DeviceBuffer.

Code pretty much follows CUDA version.

For float3, I had to use gmx::RVec instead of SYCL's built-in cl::sycl::float3, since latter is 16 bytes.
src/gromacs/gpu_utils/devicebuffer_datatype.h
src/gromacs/gpu_utils/devicebuffer_sycl.h
src/gromacs/gpu_utils/gputraits_sycl.h
src/gromacs/mdlib/CMakeLists.txt
src/gromacs/mdlib/leapfrog_gpu.cu
src/gromacs/mdlib/leapfrog_gpu.h
src/gromacs/mdlib/leapfrog_gpu_sycl.cpp [new file with mode: 0644]
src/gromacs/mdlib/tests/leapfrogtestrunners.h
src/gromacs/mdlib/tests/leapfrogtestrunners_gpu.cpp