GROMACS

GROMACS is a versatile package to perform molecular dynamics

Introduction

GROMACS is a powerful and versatile molecular dynamics simulation package. It is capable of solving Newtonian Equations of Motions for extremely large systems that can range in the hundreds of millions of particles. It's primary purpose is for simulating biochemical systems with large numbers of complex bonded interactions such as proteins, lipids and nucleic acids. It is also quite capable of simulating non-biological systems as well since the program can compute such non-bonded interactions extremely quickly.

Use of GROMACS on RCC Resources

GROMACS is one of the computational chemistry programs available on both the Spear and the HPC systems. It can be loaded by running module load gromacs along with module load gnu-openmpi to load the OpenMPI module which is required for parallel jobs. Once these commands are run, GROMACS commands can be run by prefixing any GROMACS command with gmx. For example, the pdb2gmx GROMACS command would be run as gmx pdb2gmx [options and filenames]. Examples on how to use GROMACS can be found at the GROMACS Tutorial and Documentation pages.

Running Parallel GROMACS Jobs with MPI

GROMACS can be run in parallel on multiple nodes using MPI or on multiple cores in a shared memory system using OpenMP. In order to run a parallel job on multiple nodes on RCC Systems, you first must load the gnu-openmpi module along with the gromacs module. Then, a parallel job can be executed by using mpirun as shown below where N is the number of processors you wish to use for the job. For more information on accelerating GROMACS and running it in parallel, please refer to the documentation on that topic and the documentation available on the mdrun command itself.

GROMACS 2020 (latest version available)

# for GROMACS 2020...
module load gnu-openmpi/8.2.1-4.0.0

mpirun -np N gmx mdrun_mpi

GROMACS 2019

# for GROMACS 2019...
module load gnu-openmpi
module load gromacs
    
mpirun -np N gmx mdrun_mpi