Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/snapex2409/komd

Small MD framework
https://github.com/snapex2409/komd

kokkos md molecular-dynamics simulation

Last synced: about 1 month ago
JSON representation

Small MD framework

Awesome Lists containing this project

README

        

# KoMD
Small MD framework

The intention is to provide a full MD framework for non-rigid multi-site molecular models.
Portability is provided by using Kokkos. Currently, OpenMP and Cuda backends are supported.

## Prequisites
* vtk Library: ```sudo apt install libvtk-qt-dev``` minimum version: 7
* For CUDA support: Install CUDA Toolkit, follow the instructions on the official CUDA Toolkit page.
* For OpenMP support: Install OpenMP lib and runtime

## Compilation
* Create build directory ``` mkdir build && cd build```
* Configure CMake ``` cmake .. ``` or ```ccmake ..```
* CMake options:
* ENABLE_VTK:BOOL=ON|OFF
* CUDA options:
* CUDA_TOOLKIT_ROOT_DIR:FILEPATH=``````
* CUDAToolkit_INCLUDE_DIRECTORIES:FILEPATH=```/targets/x86_64-linux/include```
* CUDA_CUDART:FILEPATH=```/targets/x86_64-linux/lib```
* Kokkos options:
* Kokkos_ENABLE_``````:BOOL=ON backend options are CUDA and OpenMP
* Kokkos_ARCH_NATIVE:BOOL=ON
* Kokkos_NVCC_WRAPPER:FILEPATH=``````/dependencies-external/kokkos-4.3.01/bin/nvcc_wrapper
* Kokkos_ARCH_``````:BOOL=ON set arch to used GPU architecture
* Compile with ```make all```

## Troubleshooting
* When installing CUDA Toolkit, make sure it is fully installed and sourced. If it is not, then many CUDA tools and libs need to be symlinked into PATH directories.
* Recommendation: Use ccmake to configure CMake. There all options will be visible.

## Input File format
* see ```examples/inp.dat```

## Running KoMD
* ```KoMD ```
* When running with OpenMP, set these env variables: OMP_PROC_BIND=spread;OMP_NUM_THREADS=8