Gromacs 2026.2

Webpage

http://www.gromacs.org/

Version

2026.2

Build Environment

  • GCC 13.3.1 (gcc-toolset-13)
  • Open MPI 4.1.8
  • cmake 3.31.6
  • HDF5 1.14.6
    • (./configure --enable-fortran --enable-cxx --enable-hl)
  • libtorch 2.12.0-cpu (downloaded binary package)

Files Required

  • gromacs-2026.2.tar.gz
  • regressiontests-2026.2.tar.gz
  • (some of other files downloaded during installation)

Build Procedure

#!/bin/sh

VERSION=2026.2
INSTALL_PREFIX=/apl/gromacs/${VERSION}

BASEDIR=/home/users/${USER}/Software/Gromacs/${VERSION}/
GROMACS_TARBALL=${BASEDIR}/gromacs-${VERSION}.tar.gz
REGRESSION_TARBALL=${BASEDIR}/regressiontests-${VERSION}.tar.gz
WORKDIR=/gwork/users/${USER}
REGRESSION_PATH=${WORKDIR}/regressiontests-${VERSION}

TORCH_DIR=/apl/libtorch/2.12.0/cpu

PARALLEL=12
export LANG=C

#---------------------------------------------------------------------
umask 0022

module -s purge
module -s load gcc-toolset/13
module -s load openmpi/4.1.8/gcc13
module -s load hdf5/1.14.6
module -s load cmake/3.31.6
module -s load libtorch/2.12.0/cpu

cd ${WORKDIR}
if [ -d gromacs-${VERSION} ]; then
 mv gromacs-${VERSION} gromacs_erase
 rm -rf gromacs_erase &
fi

if [ -d regressiontests-${VERSION} ]; then
 mv regressiontests-${VERSION} regressiontests_erase
 rm -rf regressiontests_erase &
fi

tar xzf ${GROMACS_TARBALL}
tar xzf ${REGRESSION_TARBALL}
cd gromacs-${VERSION}

# single precision, no MPI
mkdir rccs-s
cd rccs-s
cmake .. \
  -DCMAKE_PREFIX_PATH="${TORCH_DIR}" \
  -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
  -DCMAKE_VERBOSE_MAKEFILE=ON \
  -DCMAKE_C_COMPILER=gcc \
  -DCMAKE_CXX_COMPILER=g++ \
  -DGMX_MPI=OFF \
  -DGMX_GPU=OFF \
  -DGMX_DOUBLE=OFF \
  -DGMX_THREAD_MPI=ON \
  -DGMX_BUILD_OWN_FFTW=ON \
  -DGMX_NNPOT=TORCH \
  -DGMX_USE_EXT_FMM=OFF \
  -DGMX_USE_HDF5=ON \
  -DREGRESSIONTEST_DOWNLOAD=OFF \
  -DREGRESSIONTEST_PATH=${REGRESSION_PATH}
make -j${PARALLEL} && make check && make install
cd ..
rm -rf rccs-s

# double precision, no MPI
mkdir rccs-d
cd rccs-d
cmake .. \
  -DCMAKE_PREFIX_PATH="${TORCH_DIR}" \
  -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
  -DCMAKE_VERBOSE_MAKEFILE=ON \
  -DCMAKE_C_COMPILER=gcc \
  -DCMAKE_CXX_COMPILER=g++ \
  -DGMX_MPI=OFF \
  -DGMX_GPU=OFF \
  -DGMX_DOUBLE=ON \
  -DGMX_THREAD_MPI=ON \
  -DGMX_BUILD_OWN_FFTW=ON \
  -DGMX_NNPOT=TORCH \
  -DGMX_USE_EXT_FMM=OFF \
  -DGMX_USE_HDF5=ON \
  -DREGRESSIONTEST_DOWNLOAD=OFF \
  -DREGRESSIONTEST_PATH=${REGRESSION_PATH}
make -j${PARALLEL} && make check
make install
cd ..
rm -rf rccs-d

# single precision, with MPI
mkdir rccs-mpi-s
cd rccs-mpi-s
cmake .. \
  -DCMAKE_PREFIX_PATH="${TORCH_DIR}" \
  -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
  -DCMAKE_VERBOSE_MAKEFILE=ON \
  -DCMAKE_C_COMPILER=mpicc \
  -DCMAKE_CXX_COMPILER=mpicxx \
  -DGMX_MPI=ON \
  -DGMX_GPU=OFF \
  -DGMX_DOUBLE=OFF \
  -DGMX_THREAD_MPI=OFF \
  -DGMX_BUILD_OWN_FFTW=ON \
  -DGMX_USE_PLUMED=ON \
  -DGMX_NNPOT=TORCH \
  -DGMX_USE_EXT_FMM=OFF \
  -DGMX_USE_HDF5=ON \
  -DREGRESSIONTEST_DOWNLOAD=OFF \
  -DREGRESSIONTEST_PATH=${REGRESSION_PATH}
make -j${PARALLEL} && make check && make install
cd ..
rm -rf rccs-mpi-s

mkdir rccs-mpi-d
cd rccs-mpi-d
cmake .. \
  -DCMAKE_PREFIX_PATH="${TORCH_DIR}" \
  -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
  -DCMAKE_VERBOSE_MAKEFILE=ON \
  -DCMAKE_C_COMPILER=mpicc \
  -DCMAKE_CXX_COMPILER=mpicxx \
  -DGMX_MPI=ON \
  -DGMX_GPU=OFF \
  -DGMX_DOUBLE=ON \
  -DGMX_THREAD_MPI=OFF \
  -DGMX_BUILD_OWN_FFTW=ON \
  -DGMX_USE_PLUMED=ON \
  -DGMX_NNPOT=TORCH \
  -DGMX_USE_EXT_FMM=OFF \
  -DGMX_USE_HDF5=ON \
  -DREGRESSIONTEST_DOWNLOAD=OFF \
  -DREGRESSIONTEST_PATH=${REGRESSION_PATH}
make -j${PARALLEL} && make check
make install
cd ..
rm -rf rccs-mpi-d

Tests

All the tests have passed successfully.

Notes

  • Neural Network Potential using libtorch 2.12.0 is enabled.
    • The model should be trained/created with pytorch 2.12.0 according to the official document. If you want to use different version of pytorch, you may need to prepare it by yourselves. The above procedure may be helpful.
    • For GPU-enabled version, please see this page.
    • Binary version of libtorch 2.12.0 is employed. This version is free from glibc version issue.
      • We failed to build libtorch 2.12.0 due to a compilation errir.
  • Plumed is enabled but it does not work properly.
    • Serial run seems to work. However, MPI parallel runs failed. (Tested with empty plumed.dat.)
  • We failed to enable the interface to CP2K.
    • Failed with existing CP2K installation 2025.2 and 2026.1, which were built using cmake.
    • We didn't test cmake-free versions of CP2K (2024.3 or before).
  • FMM (Fast Multipole Method) was not tested.