How to compile Gromacs
Quick and dirty installation
Linux machine, Ubuntu 16.04, GTX 1080
tar xfz gromacs-2020.1.tar.gz cd gromacs-2020.1 mkdir build cd build cmake .. -DGMX_DOUBLE=OFF -DGMX_GPU=ON -DCMAKE_INSTALL_PREFIX=/opt/gromacs/2019.3 -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda -DGMX_BUILD_OWN_FFTW=ON make -j8 make check make install source /usr/local/gromacs/bin/GMXRC
Options
Must-have
cmake .. -DCMAKE_INSTALL_PREFIX=path/to/gromacs/5.0.6
C++ compilers (optional)
-DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc
FFT Generally, there is no advantage in using MKL with GROMACS, and FFTW is often faster.
-DGMX_BUILD_OWN_FFTW=ON
MPI
-DGMX_MPI=ON -DMPI_CXX_COMPILER=mpicxx -DMPI_C_COMPILER=mpicc
Double precision (important to cg minimization; unimportant for MD)
-DGMX_DOUBLE=ON
GPU (NO double precision)
-DGMX_GPU=ON -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda/
Usually you would have to add suffix for GPU version
-DGMX_DEFAULT_SUFFIX=OFF -DGMX_BINARY_SUFFIX=_cuda_mpi -DGMX_LIBS_SUFFIX=_cuda_mpi