NGC | Catalog

Tinker-HP

Logo for Tinker-HP
Description
Tinker-HP is a CPUs and GPUs based, multi-precision, MPI massively parallel package dedicated to long polarizable molecular dynamics simulations and to polarizable QM/MM.
Publisher
Tinker Tools
Latest Tag
2021.03
Modified
April 1, 2024
Compressed Size
2.18 GB
Multinode Support
Yes
Multi-Arch Support
Yes

Tinker-HP

Tinker-HP is a CPUs and GPUs based, multi-precision, MPI massively parallel package dedicated to long polarizable molecular dynamics simulations and to polarizable QM/MM. Tinker-HP is an evolution of the popular Tinker package that conserves it simplicity of use but brings new capabilities allowing performing very long molecular dynamics simulations on modern supercomputers that use thousands of cores.

The Tinker-HP approach offers various strategies using domain decomposition techniques for periodic boundary conditions in the framework of the (n)log(n) Smooth Particle Mesh Ewald. Tinker-HP proposes a high performance scalable computing environment for polarizable (AMOEBA, Amberpol...) and classical (Amber, Charmm, OPLS...) force fields giving access to large systems up to millions of atoms.

This phase-advance GPU version (1.2 ++) is not (yet) an official release of Tinker-HP but is made freely available in link with the COVID-19 HPC community effort. This work will be part of a larger 2021 Tinker-HP 1.3 official release.There is no difference between the use of Tinker-HP and Tinker-HP (GPU version) as long as the feature you are looking for is available on the GPU version. The present version is optimized to accelerate simulations using the AMOEBA polarizable force field. Some minimal non-polarizable capabilities are present (enhanced support will be available in 2021). The code has been extensively tested on 1080, 2080, 3090, P100, V100 and A100 NVIDIA GPU cards and support multi-GPUs computations. It will be part of the major Tinker-HP 1.3 2021 release but this present version will continue to evolve.

System requirements

Before running the NGC Tinker-HP container please ensure your system meets the following requirements.

  • One of the following container runtimes
  • One of the following NVIDIA GPU(s)
    • Pascal(sm60)
    • Volta (sm70)
    • Ampere (sm80)

x86_64

  • CPU with AVX2 instruction support
  • One of the following CUDA driver versions
    • >= r460
    • r450 (>=.80.02)
    • r440 (>=.33.01)
    • r418 (>=.40.04)

arm64

  • Marvell ThunderX2 CPU
  • CUDA driver version >= r460

Examples

The following examples demonstrate using the NGC Tinker-HP container DYNAMIC executable. The DYNAMIC program performs a molecular dynamics (MD) or stochastic dynamics (SD) computation. Starts either from a specified input molecular structure (an .xyz file) or from a structure-velocity-acceleration set saved from a previous dynamics trajectory (a restart from a .dyn file).

The environment variable BENCHMARK_DIR will be used throughout the example to refer to the directory containing the extracted data. Ensure you're running the correct container version by replacing YYYY.MM with the appropriate container tag.

wget https://raw.githubusercontent.com/TinkerTools/tinker-hp/master/GPU/examples/cox.xyz
wget https://raw.githubusercontent.com/TinkerTools/tinker-hp/master/GPU/examples/cox.key
export BENCHMARK_DIR=$PWD

Running with nvidia-docker

cd $BENCHMARK_DIR
docker run --rm --gpus all --ipc=host -v $BENCHMARK_DIR:/host_pwd -w /host_pwd nvcr.io/hpc/tinkerhp:YYYY.MM mpirun --oversubscribe -np 1 /usr/local/tinker-hp/bin/dynamic cox.xyz 500 2 20 2 300

Note: Docker < v1.40

Docker versions below 1.40 must enable GPU support with --runtime nvidia.

docker run --rm --gpus all --runtime nvidia --ipc=host -v $BENCHMARK_DIR:/host_pwd -w /host_pwd nvcr.io/hpc/tinkerhp:YYYY.MM mpirun --oversubscribe -np 1 /usr/local/tinker-hp/bin/dynamic cox.xyz 500 2 20 2 300

Running with Singularity

cd $BENCHMARK_DIR
singularity run --nv -B $BENCHMARK_DIR:/host_pwd --pwd /host_pwd docker://nvcr.io/hpc/tinkerhp:YYYY.MM mpirun --oversubscribe -np 1 /usr/local/tinker-hp/bin/dynamic cox.xyz 500 2 20 2 300

Note: Singularity < v3.5

There is currently an issue in Singularity versions below v3.5 causing the LD_LIBRARY_PATH to be incorrectly set within the container environment. As a workaround The LD_LIBRARY_PATH must be unset before invoking Singularity:

LD_LIBRARY_PATH="" singularity run --nv -B $BENCHMARK_DIR:/host_pwd --pwd /host_pwd docker:nvcr.io/hpc/tinkerhp:ngc-YYYYMMDD mpirun --oversubscribe -np 1 dynamic cox.xyz 500 2 20 2 300

Running multi-node with Slurm and Singularity

Clusters running the Slurm resource manager and Singularity container runtime may launch parallel Tinker-HP experiments directly through srun. The NGC Tinker-HP container supports pmi2, which is available within most Slurm installations, as well as pmix3. The following example was run on two nodes using Slurm.

srun --mpi=pmi2 --ntasks-per-node=1 singularity run  --nv -B $PWD:/host_pwd --pwd /host_pwd tinkerhp.sif /usr/local/tinker-hp/bin/dynamic cox.xyz 500 2 20 1 300

Suggested Reading

The Tinker-HP repository

More Tinker-HP tutorials

Tinker-HP: a Massively Parallel Molecular Dynamics Package for Multiscale Simulations of Large Complex Systems with Advanced Polarizable Force Fields.

Accelerating Molecular Dynamics Simulations of Large Complex Systems with Advanced Point Dipole Polarizable Force Fields using GPUs and Multi-GPUs systems

Tinkertools, Tinker-HP is part of the Tinker distribution and uses the same tools as Tinker

TINKER Software Tools for Molecular Design Version 3.9 June 2001

More information on Tinker-HP capabilities

License

By pulling and using the container, you accept the terms and conditions of the Tinker License

Funding

This work has received funding from the European Research Council (ERC) under the European Union's Horizon 2020 research and innovation programme (grant agreement No. 810367), project EMC2 (see preprint for full acknowledgments). We would also like to thank GENCI, NVIDIA and HPE as well as the engineering team of the IDRIS Supercomputer center (CNRS/GENCI, France).

Additional Support

Tinker-HP developers also provide support to registered users only (http://tinker-hp.ip2ct.upmc.fr/?Download-instructions).

Email: TinkerHP_Support@ip2ct.upmc.fr

Citations

Users can cite:

Tinker-HP : Accelerating Molecular Dynamics Simulations of Large Complex Systems with Advanced Point Dipole Polarizable Force Fields using GPUs and Multi-GPUs systems. O. Adjoua, L. Lagardère, L.-H. Jolly, Arnaud Durocher, Z. Wang, T. Very, I. Dupays, T. Jaffrelot Inizan, F. Célerse, P. Ren, J. Ponder, J-P. Piquemal, J. Chem. Theory. Comput., 2021, XX, XX, online (Open Access) https://doi.org/10.1021/acs.jctc.0c01164

Tinker-HP: a Massively Parallel Molecular Dynamics Package for Multiscale Simulations of Large Complex Systems with Advanced Polarizable Force Fields. L. Lagardère, L.-H. Jolly, F. Lipparini, F. Aviat, B. Stamm, Z. F. Jing, M. Harger, H. Torabifard, G. A. Cisneros, M. J. Schnieders, N. Gresh, Y. Maday, P. Ren, J. W. Ponder, J.-P. Piquemal, Chem. Sci., 2018, 9, 956-972 (Open Access) https://doi.org/10.1039/C7SC04531J