Giter VIP home page Giter VIP logo

comd's Introduction

CoMD

Classical molecular dynamics proxy application.

This is CoMD version 1.1

CoMD is a reference implementation of typical classical molecular dynamics algorithms and workloads. It is created and maintained by ExMatEx: Exascale Co-Design Center for Materials in Extreme Environments (exmatex.org). The code is intended to serve as a vehicle for co-design by allowing others to extend and/or reimplement it as needed to test performance of new architectures, programming models, etc.

To view the generated Doxygen documentation for CoMD, please visit the site: http://ecp-copa.github.io/CoMD.

To contact the developers of CoMD send email to [email protected].

ZMQ Add-on

This version of CoMD was modified to generate a ZeroMQ data stream with the main results (basically, atom's id&position) obtained for each timestep (or a set of timesteps).

This ZMQ support was only added to the MPI version. The compilation flag DO_ZMQ=ON/OFF enables/disables this option in the Makefile.

When compiled with ZMQ support, some extra parameters are needed to set the recipient's hostname(s)/port(s) (--help to list them). Examples of use:

  • Serial execution with 256000 atoms (4 x 40 x 40 x 40) using ZMQ with default port (9000):

    bin/CoMD-serial --hostDir ~/tmp/ --nx 40 --ny 40 --nz 40

    With --hostDir we indicate the path where a file for each port used sets the hostname (eg. localhost) for the ZMQ connection. In this example this file is needed: ${HOME}/tmp/9000

       cat ~/tmp/9000
    
       dahu-7.grenoble.grid5000.fr
    
  • 4 MPI processes using 4 different ZMQ ports:

    mpirun -np 4 bin/CoMD-mpi --hostDir ~/tmp/ --nx 40 --ny 40 --nz 40 --xproc 2 --yproc 2 --zproc 1

    4 files in ${HOME}/tmp are needed: ${HOME}/tmp/9000 ${HOME}/tmp/9001 ${HOME}/tmp/9002 ${HOME}/tmp/9003

Credits for this add-on: Omar A. Mures, Henrique C. Zanúz, Bruno Raffin and Emilio J. Padrón

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.