Skip to content

Add Apple as recognized vendor

Philip Turner requested to merge philipturner/gromacs:ocl-vkfft-2 into main

Let GRO-MACS run on Macs... (always wanted to say that!)

Adds an OpenCL VkFFT backend, which activates whenever GMX_GPU_FFT_VKFFT is passed into CMake. This compile path automatically activates on ARM64 macOS because that's the only possible way to perform GPU-accelerated FFTs. In addition, these changes make Apple GPUs fully recognized as a vendor architecture. Doing so does not measurably improve performance (except that the GPU can perform PME), but it lays the groundwork for a future SYCL Metal backend for Apple silicon.

Performance concerns: OpenMP uses all CPU cores even though they're heterogenous (4-8 performance cores, 2-4 efficiency cores). That drastically deteriorates performance; perhaps we should investigate it when merging the SYCL Metal backend. Or if the GPU performs bonded forces ("GPU resident") at that point, the CPU performance degradation will be minimized.

Refs #4622

Edited by Philip Turner

Merge request reports