Turing: GROMACS

Introduction

GROMACS is a force field molecular dynamics software suite principally designed to simulate complex interactions between biochemical molecules such as proteins, lipids and nucleic acids.

Documentation is available on the GROMACS Official Website.

Availability

The available versions are :

  • 4.5.5
  • 4.6.5 (default version)
  • 5.0.1
  • 5.0.2

Beginning with version 4.6.3, the executable file of the mdrun calculation takes advantage of hybrid MPI/OpenMP parallelisation.

Attention: To use the modification and input file generation tools, you must connect on the pre/post processing machine, ADAPP.

Launching script

The executable files are accessible with the module command.

module load gromacs

The following is an example of a launching script in hybrid parallelisation for a calculation executed in the WORKDIR :

job.ll
# @ job_name         = gromacs
# @ job_type         = BLUEGENE
# @ output           = $(job_name).$(jobid)
# @ error            = $(job_name).$(jobid)
# @ bg_size          = 64
# @ wall_clock_limit = 10:00:00
# @ queue
 
### Module initialisation ###
module load gromacs
 
### Command echoes ###
set -x
 
### Run the calculation ###
runjob --np 1024 --ranks-per-node 16 --envs "OMP_NUM_THREADS=4" : $GROMACS_EXEDIR/mdrun -s example.tpr

The following is an example of a launching script in MPI parallelisation for a calculation executed in the TMPDIR :

job.ll
# Name of the LoadLeveler job
# @ job_name         = gromacs
# @ job_type         = BLUEGENE
# @ output           = $(job_name).$(jobid)
# @ error            = $(job_name).$(jobid)
# @ bg_size          = 64
# @ wall_clock_limit = 10:00:00
# @ queue
 
### Module initialisation ###
module load gromacs
 
### Command echoes ###
set -x
 
### Copy to the TMPDIR ###
cp ./* $TMPDIR
 
### Run the calculation ###
cd $TMPDIR
runjob --np 4096 --ranks-per-node 64 : $GROMACS_EXEDIR/mdrun -s example.tpr
 
### Copy to the submission folder ###
cd -
cp $TMPDIR/* .

Parameters specific to the software

In order to benefit from using the hybrid mode, the Verlet algorithm must be used. To avoid having to regenerate the input files, or simply to test this mode, you may use the -testverlet option for the mdrun executable file.
Remember to adapt the launching script directives (execution of a hybrid MPI/OpenMP parallel code).