Software:tinkergpu
Tinker9 GPU Molecular Dynamics
Tinker9 is the next generation of Tinker software with GPU accelaration. As of 2021, Ren lab switched to Tinker9 for GPU simulations, which is similar/consistent to Tinker CPU in terms of usage/setup, is faster than OpenMM for AMOEBA and some fixed charged force fields, and has all our new development for AMOEBA+.
For single molecule or cluster without PBC, please CPU code. Use openmp-threads to speed up if necessary
The setup and key files used by Tinker CPU (on this wiki page) can be directly applied to Tinker9.
Source code
https://github.com/TinkerTools/tinker9
Free to academic and nonprofit org
Compile Tinker9
Please read Tinker9 Github site for how to setup the environmental variables and compile Tinker9 code (https://github.com/TinkerTools/tinker9). Successful builds on various hardware and cuda version can also be found at https://github.com/TinkerTools/tinker9/discussions/121.
As of May 23, 2022, Ren lab clusters equiped with GPU cards all have cuda version 11 with compatitable cuda driver. An example compile script can be found at:
/home/liuchw/Softwares/tinkers/Tinker9/2205/build_cuda11/compile_cuda11.2This is to say, after downloading Tinker9, make a folder called "build_cuda11". From that folder, ./compile_cuda11.2 will do everything.
Example
Example setup, xyz and key files for protein simulations: https://github.com/TinkerTools/tinker9/blob/master/example/
Recommend to use RESPA integrator with 2fs time step and write out less frequent (e.g. every 2 ps). On RTX3070, you should be able to achieve ~40ns/day for DHFR. Use MonteCarlo or Langvin piston for pressure control in NPT More details see Tutorials
Manual
https://tinkerdoc.readthedocs.io/en/latest/
Run Script
Here is a simple script to run molecular dynamics
#!/bin/bash export TINKER9=/home/liuchw/Softwares/tinkers/Tinker9/2205/build_cuda11 export PATH=$PATH:$TINKER9 # option 1 nohup dynamic9 your.xyz -k your.key 1000 2.0 2.0 4 298.15 1.0 >your.log 2>&1 & # option 2 nohup tinker9 dynamic your.xyz -k your.key 1000 2.0 2.0 4 298.15 1.0 >your.log 2>&1 &