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 complete rewrite and extension of the canonical Tinker software. Tinker-GPU is implemented as C++ code with OpenACC directives and CUDA kernels providing excellent performance on GPUs. At present, Tinker-GPU builds against the object library from 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 fully compatible with Tinker-GPU, and nearly all Tinker keywords function identically in Tinker-GPU. Over time we plan to port much or all of the remaining portions of Fortran Tinker to the C++ Tinker-GPU code base.

The executables included in these images were compiled on a recent computer. 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.

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
  2. Download the Canonical Tinker (important to get the REQUIRED version)
  3. Build Tinker-GPU with CMake

Examples of other successful builds are shown here.

User Manual (in progress)

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

We are trying 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.