Introduction

The TINKER molecular modeling software is a complete and general package for molecular mechanics and dynamics, with some special features for biopolymers.

The code is written in Fortran 90 and parallelised for a shared memory environment using OpenMP. As such, users should not employ more than one ARCHER node.

TINKER is available on ARCHER via modules. This installation employs the current version of TINKER as made available via http://dasher.wustl.edu/tinker/ and the link 'TINKER Distribution Directory': http://dasher.wustl.edu/tinker/distribution/

This version is named "Version 7.1 February 2015".

This installation employs the Intel Programming Environment, PrgEnv-intel/5.2.56, which provides ifort 14.0.4. Further, this installation employs the default FFTW3 module, fftw/3.3.4.1, instead of using the FFTW3 code that comes with TINKER.

Licensing and Access

TINKER is licensed software. All users wishing to access the TINKER package should have a valid TINKER licence (see the TINKER License). Once you have a valid licence, please submit a request via SAFE.

Running

To run TINKER you need to add the correct module to your environment.

module add tinker

Updating the key file

The key file may include a line which requires updating. The line may read

parameters            ../params/amoebabio09

This can be updated in one of two ways: you may either employ the full path to this file, i.e.

parameters            /work/y07/y07/tinker/params/amoebabio09

or you may copy the contents of the /work/y07/y07/tinker/params to your own local directory, i.e.

cp -r /work/y07/y07/tinker/params .

and then change the key file accordingly, i.e.

parameters            params/amoebabio09

Example Job Submission Script

The TINKER job should be run from the directory in which the input files are stored. An example TINKER job submission script, running Bench7, is shown below.

#!/bin/bash --login
#PBS -N tinker-example
#PBS -l select=1 # No more than one node as only OpenMP parallel
#PBS -l walltime=01:30:00
#PBS -A [User Budget]
export PBS_O_WORKDIR=$(readlink -f $PBS_O_WORKDIR)
cd $PBS_O_WORKDIR
module load tinker
export KMP_AFFINITY=disabled
export OMP_NUM_THREADS=4
time aprun -cc none -n 1 -d 4 dynamic bench7 100 1.0 10.0 2 298.0

See the TINKER User Guide for a guide to running TINKER and a description of the arguments in the submission script above.

Compiling

Performance

Bench7 was used to benchmark this installation, where it was found to scale to up to 12 OpenMP threads.

Below is the table of execution times (the minimum of three runs), with the speed-up in brackets (as per TINKER benchmark results)

 MACHINE TYPE (OS, Compiler)           GHz    Cores/Threads     Seconds
 ---------------------------           ---    -------------     -------
 ARCHER (Cray Linux Env., Intel 14)    2.7         24/1     312.5 (1.00)
 ARCHER (Cray Linux Env., Intel 14)    2.7         24/2     175.1 (1.78)
 ARCHER (Cray Linux Env., Intel 14)    2.7         24/4      96.2 (3.25)
 ARCHER (Cray Linux Env., Intel 14)    2.7         24/8      61.9 (5.05)
 ARCHER (Cray Linux Env., Intel 14)    2.7         24/12     51.1 (6.12)
 ARCHER (Cray Linux Env., Intel 14)    2.7         24/16     45.3 (6.90)
Run times and Parallel Efficiency figures for TINKER Bench 7 on ARCHER