[Solved] FFT issue in Gromacs 2023.2 Cuda Compilation/Configuration

GROMACS version: 2023.2
GROMACS modification: No

I am encountering an issue with compiling/building gromacs with cuda. cuFFT was properly detected however, the configuration encounters an error on -DGMX_FFT_LIBRARY, it was looking for the following:

fftw3, mlk or fftpack build in

Since it detected cuFFT, why does it want to build a cpu fftw?

If the intention of -DGMX_FFT_LIBRARY is a fall back it should be named something else like

-DGMX_CPU_FFT_LIBRARY

:)

Hi!

GROMACS always assumes that a valid CPU-only codepath is available, so it always needs a CPU FFT library. The CMake flag name is historic (pre-GPU). Our error reporting and documentation can perhaps be improved to make it less ambiguous.

If you are positive you are not ever running PME on CPU, you can choose fftpack; it does not have a stellar performance, but is very lightweight and is included with GROMACS. A more typical choice would be FFTW, with -DGMX_BUILD_OWN_FFTW=ON to build the bundled FFTW3 version since you presumably don’t have it installed system-wide. Neither of the two options require any external dependencies.

1 Like