Versionen im Vergleich
Schlüssel
- Diese Zeile wurde hinzugefügt.
- Diese Zeile wurde entfernt.
- Formatierung wurde geändert.
AMBER is a highly parallized suite of biomolecular simulation programs which use MPI and OpenMP on CPUs or CUDA (in combination with MPI) to run on GPUs.
Amber is distributed in two parts: AmberTools and Amber. Amber is a package of molecular simulation programs, AmberTools contains a collection of useful software to analyze and modify MD data. You can find a comprehensive manual here.
Examples
AmberTools on CPU with MPI: MMPBSA.py.MPI
The following example runs MMPBSA.py.MPI on 20 identical CPUs. Each of the called Sander jobs (used for surface and energy calculation) may take up to 4G of RAM - for bigger systems this has to be adjusted. The code below runs a 'stability calculation' for a single system. For a comprehensive overview the the AMBER18 manual.
Keep in mind, that MMPBSA calculations are more demanding in terms of memory than MMGBSA jobs.
Codeblock | ||||
---|---|---|---|---|
| ||||
#!/bin/bash
#PBS -l walltime=XX:YY:ZZ
#PBS -l select=20:ncpus=1:mpiprocs=1:mem=4G
#PBS -l place=group=arch
#PBS -r n
#PBS -N Job Name
#PBS -A Project Name
# input files
INFILE=MMPBSA.infile
EOFILE=Output.dat
PRMTOP=Topology.prmtop
TRAJ=Trajectory.nc
# loas libs
module load intelmpi
module load Amber/18
# go to work dir
cd $PBS_O_WORKDIR
# def executable
MPI_EXE=`readlink -f ${AMBERHOME}/bin/MMPBSA.py.MPI`
# generate log file
LOGFILE=$PBS_O_WORKDIR/$PBS_JOBNAME"."$PBS_JOBID".log"
echo "$PBS_JOBID ($PBS_JOBNAME) @ `hostname` at `date` in "$PBS_O_WORKDIR" START" > $LOGFILE
echo "`date +"%d.%m.%Y-%T"`" >> $LOGFILE
echo >> $LOGFILE
echo "GLOBAL PARAMETERS">> $LOGFILE
echo "---------------------------" >> $LOGFILE
echo "Node : "$HOSTNAME >> $LOGFILE
echo "Arch : "$ARCH >> $LOGFILE
echo "---------------------------" >> $LOGFILE
echo "RunDir : "$PBS_O_WORKDIR >> $LOGFILE
#
MPICPUS=$(cat $PBS_NODEFILE | wc -l)
HOSTS=$(cat $PBS_NODEFILE | cut -d"." -f1 | sort -u | tr "\n" ",")
echo "# MPI CPUs: ${MPICPUS}" >> $LOGFILE
mpirun -n $MPICPUS $MPI_EXE -i $INFILE -eo $EOFILE -cp $PRMTOP -y $TRAJ >>$LOGFILE
qstat -f $PBS_JOBID >> $LOGFILE
echo "$PBS_JOBID ($PBS_JOBNAME) @ `hostname` at `date` in "$RUNDIR" END" >> $LOGFILE
echo "`date +"%d.%m.%Y-%T"`" >> $LOGFILE |