Skip to content

frankhan91/deepmd-kit_docker

 
 

Repository files navigation

Docker Engine Utility for DeePMD-kit

DeePMD-kit is a deep learning package for many-body potential energy representation, optimization, and molecular dynamics.

This docker project is set up to simplify the installation process of DeePMD-kit. And GPU support is added in this fork (CUDA==9.0, CuDNN==7.0, NCCL==2.4.2).

Because of the error /usr/bin/ld: warning: libcuda.so.1 could not be solved for Tensorflow 1.8, in this fork the version is updated to 1.12. The solution to the error is ln -s /usr/local/cuda/lib64/stubs/libcuda.so /usr/local/cuda/lib64/stubs/libcuda.so.1 && LD_LIBRARY_PATH=/usr/local/cuda/lib64/stubs:${LD_LIBRARY_PATH}.

Thanks to @TimChen314 for the inital creation of this docker project.

Thanks to @frankhan91 for the maintainess and impression of the CPU version.

QuickStart

Building

git clone https://github.com/Cloudac7/deepmd-kit_docker_GPU.git deepmd-kit_docker
cd deepmd-kit_docker && docker build -f Dockerfile -t deepmd-kit_docker:gpu .

It will take a few minutes to download necessary package and install them.

The ENV statement in Dockerfile sets the install prefix of packages. These environment variables can be set by users themselves.

The ARG tensorflow_version specifies the version of tensorflow to install, which can be set during the build command through --build-arg tensorflow_version=1.12.

Version of miniconda is limitted to 4.5.1 for python 3.6 to support tf-1.12.

Training

Docker Compose could be used for training in a easy way. Before going ahead, for users that item runtime: nvidia is not supportted, /etc/docker/daemon.json should be edited like the following (from docker/app#241):

// Snippet from "/etc/docker/daemon.json" on my machine
{
  // ...
  "default-runtime": "nvidia",
  "runtimes": {
    "nvidia": {
      "path": "/usr/bin/nvidia-container-runtime",
      "runtimeArgs": []
    }
  }
}

Then you could edit docker-compose.yml , while changing the path of your system (including set.00x, train.json, etc.). With everything ready, just use docker-compose up to start the training.

About

A docker of DeePMD-kit

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dockerfile 61.1%
  • Shell 38.9%