Task #2453
Updated by Szilárd Páll almost 2 years ago
With porting PME from CUDA to OpenCL I'm first going with a dirty code with lots of duplication to see how to strike a balance between neatness and extensibility. Most of the host-side logic is quite easy to wrap to look the same in CUDA/OpenCL since there is no C++ limitations.
Functionality achieved (https://github.com/yupinov/gromacs/tree/pme_opencl_gerrit):
- PME OpenCL kernels passing unit tests on NVIDIA and AMD GPUs;
- clFFT still broken with RoCM.
TODO:
-- - check correctness on Intel;- Intel;
- document and cleanup FIXMEs;
- subtasks.
Functionality achieved (https://github.com/yupinov/gromacs/tree/pme_opencl_gerrit):
- PME OpenCL kernels passing unit tests on NVIDIA and AMD GPUs;
- clFFT still broken with RoCM.
TODO:
-- - check correctness on Intel;- Intel;
- document and cleanup FIXMEs;
- subtasks.