HPC Packages

From TAMUQ Research Computing User Documentation Wiki
Jump to navigation Jump to search

Gromacs

"GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles. It is primarily designed for biochemical molecules like proteins, lipids and nucleic acids that have a lot of complicated bonded interactions, but since GROMACS is extremely fast at calculating the nonbonded interactions (that usually dominate simulations) many groups are also using it for research on non-biological systems, e.g. polymers." [1]

Versions on raad2-gfx

On raad2 GPU Cluster we have following version of Gromacs available.

  1. 2018.2

Sample Job File

#!/bin/sh
##########################################################
#SBATCH -J GromacsJob
#SBATCH -p gpu
#SBATCH --time=00:30:00
#SBATCH --ntasks=18
#SBATCH --output=gromacsjob.o%j
#SBATCH --error=gromacsjob.e%j
#SBATCH --gres=gpu:v100:1
##########################################################
module load gromacs/2018.2
##########################################################

GMXEXG="srun -n 1 gmx grompp"
GMXEXR="srun -n 1 gmx mdrun -ntmpi 1 -nb gpu -ntomp ${SLURM_TASKS_PER_NODE} -v -pin on"

${GMXEXG} -f pme.mdp
${GMXEXR} -s topol.tpr
################################END##############################

Resources

  1. Gromacs MDRUN Performance

LAMMPS

"Large-scale Atomic/Molecular Massively Parallel Simulator (LAMMPS) is a software application designed for molecular dynamics simulations. It has potentials for solid-state materials (metals, semiconductor), soft matter (biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be used to model atoms or, more generically, as a parallel particle simulator at the atomic, meso, or continuum scale. LAMMPS runs on single processors or in parallel using message-passing techniques and a spatial-decomposition of the simulation domain." [2]

Versions on raad2-gfx

  1. 2018.10

Sample Job file

#!/bin/bash
#SBATCH -p gpu
#SBATCH --nodes=1
#SBATCH --ntasks=18
#SBATCH --gres=gpu:v100:1
#SBATCH --time=00:30:00

# Load Lammps Module
module load lammps/2018.10

#Define GPU Count (Should be equal to GPUs requested in header)
GPU_COUNT=1

#Define lmp parameters
LMP="lmp -k on g ${GPU_COUNT} -sf kk -pk kokkos gpu/direct on neigh full comm device binsize 2.8"

# Launch parallel lmp
srun --mpi=pmi2 ${LMP} ${INPUT}

Example

#!/bin/bash
#SBATCH -p gpu
#SBATCH --nodes=1
#SBATCH --ntasks=18
#SBATCH --gres=gpu:v100:1
#SBATCH --time=00:30:00

# Download Lennard Jones example input
wget -c https://lammps.sandia.gov/inputs/in.lj.txt
INPUT="-var x 4 -var y 4 -var z 8 -in in.lj.txt"

module load lammps/2018.10

GPU_COUNT=1

LMP="lmp -k on g ${GPU_COUNT} -sf kk -pk kokkos gpu/direct on neigh full comm device binsize 2.8"

# Launch parallel lmp
srun --mpi=pmi2 ${LMP} ${INPUT}

NAMD

"NAMD is a parallel molecular dynamics code designed for high-performance simulation of large biomolecular systems. NAMD uses the popular molecular graphics program VMD for simulation setup and trajectory analysis, but is also file-compatible with AMBER, CHARMM, and X-PLOR." [3]

Versions on raad2-gfx

On raad2 GPU Cluster we have the following version of NAMD available;

  1. NAMD 2.13

Sample Job File

#!/bin/bash
#SBATCH -p gpu
#SBATCH --nodes=1
#SBATCH --ntasks=18
#SBATCH --gres=gpu:v100:1
#SBATCH --time=00:30:00

# Load NAMD Module
module load namd

# Launch NAMD
srun --ntasks=1 namd2 +idlepoll <input.namd>

Julia

Introduction

Versions Available on raad2 GPU

- 1.2.0

Interactive Use

sinteractive module load Julia julia>

Batch Submission

Notes