Main Page

Revision as of 17:42, 9 November 2017 by Root (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  • Links to the other Tinker platform:



A high performance software for molecular model and design. Running Molecular Dynamics using AMOEBA force field and OpenMM GPU engine through TINKER-OpenMM interface. You will be able to run Molecular Dynamics simulations with the regular TINKER inputs and ouputs using the OpenMM as the backend engine.


Download and Install cuda driver and library (this will install the Nvidia driver). Usually install into /usr/local/cuda. Currently we are using cuda_7.5 but 6.5 should also work.

Download OpenMM (forked from Pande group, with modifications). Tips for installing this version of openmm:

Download tinker with openmm interface:


Intel compilers are recommended.

Compile tinker/source as usual.

Compile dynamic_omm.x by copying files from tinker/openmm/ into tinker/source. You need to modify the Makefile and replace with your own openmm directory

OPENMMDIR = /users/mh43854/openMMstable2/bin
Example source file for running dynamic_omm
export PATH=$PATH:/usr/local/cuda-7.5/bin/
export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:/usr/local/cuda-7.5/lib:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-7.5/
export LD_LIBRARY_PATH=/users/mh43854/openMMstable2/bin/lib:$LD_LIBRARY_PATH
export PATH=/users/mh43854/openMMstable2/bin/:$PATH
export OPENMM_PLUGIN_DIR=/users/mh43854/openMMstable2/bin/lib/plugins
export OPENMM_CUDA_COMPILER=/usr/local/cuda-7.5/bin/nvcc

Now you can run dynamic_omm.x as the usual dynamic.x but it will use GPU instead of CPU.



  • AMOEBA force fields and tinker inputs (same as those for CPU version)
  • Bussi thermostat
  • RESPA (2fs) integrator. 3fs is possible if using H mass re-partitioning.
  • Cubic PBC
  • 4-5 ns/day for the DHFR (JAC) benchmark system on GTX970 (cuda 7.5).
  • Softcore vdw and scaled electrostatics for free energy calculations.
  • NPT is possible with Monte Carlo barostat ("Barostat MONETECARLO" in key file). However, the most reliable NPT is available on CPU using Nose-Hoover integrator/thermostat/baraostat (1 fs time-step).
  • centroid based distance restraint, torsion restraint

Work in progress:

  • AMOEBA virial and constant pressure

How to use it

Information on how to run simulations:

Example tinker key file to use with dhfr (14 ns/day on GTX1070, 3fs time step)

parameters amoebapro13.prm
integrator              RESPA         #respa integrator allows 2-fs time step;
HEAVY-HYDROGEN                        # 3fs with H mass repartitioning
thermostat              BUSSI
#barostat montecarlo
a-axis 62.23 
vdw-cutoff              12.0
ewald-cutoff            7.0
polar-eps               0.0001
pme-grid 64 64 64  #grid set automatically by TINKER/OpenMM is very conservative; if set manually, it should be at least 1.1 x box size and allowed values are in tinker/source/kewald.f
#VDWTERM  only
#if above uncommented ("verbose" enabled); tinker will print both CPU and GPU energy of the initial structure for comparison before MD starts. Suggested for testing before long simulations
#Also answer no if asked if you want send information from GPU back.


We have run the code on GTX780, 970, 980, GTX1070 and 1080. GTX1070 gives the best performance/price ratio for Tinker-OpenMM.


Harger, M., D. Li, Z. Wang, K. Dalby, L. Lagardere, J.P. Piquemal, J. Ponder, and P.Y. Ren, Tinker-OpenMM: Absolute and Relative Alchemical Free Energies using AMOEBA on GPUs. Journal of Computational Chemistry, 2017. 38(23): p. 2047-2055.