Skip to content

TinkerTools/tinker-gpu

Repository files navigation

Tinker-GPU: Next Generation of Tinker with GPU Support

Docs Status Doxygen Page Status

Introduction

Tinker-GPU is a comprehensive rewrite and GPU-enabled extension of the canonical CPU-based Tinker software. Tinker-GPU is implemented as C++ code with OpenACC directives and CUDA kernels providing excellent performance on NVIDIA GPUs. At present, Tinker-GPU builds against the object library from the CPU version of Tinker, and provides GPU versions of the Tinker ANALYZE, BAR, DYNAMIC, MINIMIZE and TESTGRAD programs. Existing Tinker file formats and force field parameter files are compatible with Tinker-GPU, and nearly all Tinker keywords function identically in Tinker and Tinker-GPU.

Installation Steps

Use Git to retrieve the source code. If you want to specify a release version, use command git clone --depth 1 --branch $VERSION https://github.com/TinkerTools/tinker-gpu. Do not download the zip or tarball file from the release page.

  1. Prerequisites for Tinker-GPU
  2. Download Recommended CPU Tinker Version
  3. Build Tinker-GPU with CMake

Examples of other successful builds are shown here.

User Manual

The HTML version is hosted on readthedocs and the PDF version is accessible from the same webpage.

We are working to merge this documentation into tinkerdoc.

C++ and CUDA Code Documentation (Doxygen)

Issues and Discussions

Please use GitHub Issues for bug tracking and GitHub Discussions for general discussions.

The executables included in these Docker images were compiled for a prior version of Tinker-GPU, previously called Tinker9. It is known that they will not run on the machines with very old CPUs. If this is a problem for you, please write a new issue and provide us with more details.