[lammps-users] compelling with single precision fftw3 on macOS Catalina


I’m currently trying to compile LAMMPS with the single precision fftw3 libraries on mac os catalina. I’ve successfully compiled with the standard libraries using the following amendments to the makefile.mpi and fftw3 libraries compiled as double precision:

FFT_INC = -DFFT_FFTW -I/usr/local/include

FFT_PATH = -L/usr/local/lib

FFT_LIB = -lfftw3

However when I recompile fftw3 using the single configure switch and attempt to compile LAMMPS with the following makefile.mpi settings:

FFT_INC = -DFFT_FFTW -DFFT_SINGLE -I/usr/local/include

FFT_PATH = -L/usr/local/lib

FFT_LIB = -lfftw3 -lfftw3f

I get an error “ld: library not found for -lfftw3”

Sorry for asking such basic questions, but I’m currently at the south pole and internet access for troubleshooting is limited.


Thoams Leps

You should not need - lfftw.

The performance impact of fftw versus kissfft is usually very small, and the benefit of single precision ffts shows mostly with many MPI ranks as it cuts the increasingly dominant communication in half.