DL_POLY on WestGrid Systems

Introduction

NOTE:  The bulk of this page was written when DL_POLY was available on the WestGrid Matrix and Cortex systems. However, both those systems have subsequently been retired.

DL_POLY 4.02 and DL_POLY CLASSIC 1.7 have been installed on Lattice under /global/software/dl_poly, along with all of the test files for these programs.  DL_POLY 4.0.2 is available on Checkers under /global/software/dlpoly.  DL_POLY 4.0.4 is available on Jasper, where the environment to use it is initialized using module load application/dl_poly/4.04 .  However, the notes below have not yet been updated for use on these systems. Please note that Lattice accounts are not activated automatically, but, can be requested as explained in the Lattice QuickStart Guide.

 

DL_POLY is a suite of programs developed at Daresbury Laboratory for molecular dynamics simulations of a variety of systems, including "macromolecules, polymers, ionic systems and solutions".

The software is licensed for academic, non-commercial use to individual researchers. In accordance with section 2.3 of the license agreement, WestGrid makes the software available only to researchers who have registered at http://www.cse.scitech.ac.uk/ccg/software/DL_POLY/DL_POLY_4_Licence.shtml , agreeing to the license terms given there. Please note that this is a new registration for DL_POLY 4.  If you have previously registered to use DL_POLY 2, you should reregister for DL_POLY 4.

If you have completed that registration and would like to use the DL_POLY software on WestGrid systems, please send a signed email to support@westgrid.ca with the subject line: "DL_POLY access request (user name)", substituting your WestGrid user name. In your request, please confirm that you have registered for DL_POLY 4. In response, a request will be sent to the WestGrid system administrators to add your user name to the UNIX group wg-dlpol. Only members of that group have access to the directory in which the DL_POLY software is located. It may take a day or two for the request to be processed.  Please note that registration is not required to use DL_POLY CLASSIC.

Users are expected to be generally familiar with DL_POLY capabilities and input file formats. In particular, you must decide whether DL_POLY 2 or DL_POLY 3 is most appropriate for your work. DL_POLY 3 can handle much larger systems than DL_POLY 2 due to a different parallelization strategy. In some cases, benchmarking with both versions may be needed to make the best choice. DL_POLY 4 will likely be the only registered version of DL_POLY installed on WestGrid systems going forward.

Running DL_POLY on Matrix

The DL_POLY 2 and 3 software has been installed in /usr/apps/dl_poly in version-specific subdirectories.  DL_POLY 4 will not be installed on Matrix.

Like other jobs on WestGrid systems, DL_POLY jobs are run by submitting an appropriate script for batch scheduling using the qsub command.

Details of scheduling and job management are explained on the Running Jobs page, but, a simple example is given below.

The following command submits a DL_POLY 3 job script, dlpoly3.pbs, to run on eight processors:

qsub -l nodes=4:ppn=2 dlpoly3.pbs

where dlpoly3.pbs is:

#!/bin/bash
#PBS -S /bin/bash

# Script for running a single DL_POLY 3 test
# from the distributed DL_POLY 3 test suite.
# The TESTNUM variable below is used to select
# the test to use from the DL_POLY data directory.
# 2007-10-16 DSP

DLPOLY3=/usr/apps/dl_poly/dl_poly_3.08

cd $PBS_O_WORKDIR

echo "Node file: $PBS_NODEFILE :"
echo "---------------------"
cat $PBS_NODEFILE
echo "---------------------"
NUM_PROCS=`/bin/awk 'END {print NR}' $PBS_NODEFILE`
echo "Running on $NUM_PROCS processors."

# Set up a directory for the run

ROOT="dlpoly3_test"
TESTNUM=1

mkdir ${ROOT}${TESTNUM}
cd ${ROOT}${TESTNUM}
ln -fs ${DLPOLY3}/execute/DLPOLY.Y DLPOLY.Y
ln -fs ${DLPOLY3}/data/TEST${TESTNUM}/CONTROL CONTROL
ln -fs ${DLPOLY3}/data/TEST${TESTNUM}/FIELD FIELD
ln -fs ${DLPOLY3}/data/TEST${TESTNUM}/CONFIG CONFIG
ln -fs ${DLPOLY3}/data/TEST${TESTNUM}/TABLE TABLE
ln -fs ${DLPOLY3}/data/TEST${TESTNUM}/TABEAM TABEAM
ln -fs ${DLPOLY3}/data/TEST${TESTNUM}/REFERENCE REFERENCE

echo "Current directory: `pwd`"
echo "Starting run at: `date`"
MY_PROG="DLPOLY.Y"

/usr/apps/bin/PBS_mpirun $MY_PROG

echo "Job finished with exit code $? at: `date`"

 

The dlpoly3.pbs script is available on Matrix as /usr/apps/examples/dlpoly/dlpoly3.pbs . The DL_POLY software is normally run so that input and output files are referenced relative to the directory containing the executable, DLPOLY.Y . However, by linking to the executable, as shown in the example, on the line:

ln -fs ${DLPOLY3}/execute/DLPOLY.Y DLPOLY.Y

you do not have to make your own copy of the software in every job directory.

 


Updated 2013-01-18.