Project

General

Profile

Task #2453

Updated by Szilárd Páll over 1 year 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.

Back