CoMD
A Mini-app for Co-Design of Classical Molecular Dynamics.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
New Features and Changes in CoMD 1.1

The main goals of the 1.1 release were to add support for MPI and to improve the structure and clarity of the code.

Achieving these goals required considerable changes compared to the 1.0 release. However, the core structure of the most computationally intensive kernels (the force routines) is mostly unchanged. We believe that lessons learned from optimizing 1.0 force kernels to specific hardware or programming models can be quickly transferred to kernels in the 1.1 release.

Significant changes in CoMD 1.1 include:

  • MPI support. Both MPI and single node serial executables can be built from the same source files.
  • Improved modularity and code clarity. Major data structures are now organized with their own structs and initialization routines.
  • The build system has been simplified to use only standard Makefiles instead of CMake.
  • The halo exchange operation needed to communicate remote particle data between MPI ranks also creates "image" particles in the serial build.
  • Unified force kernels for both serial and MPI builds

    • The addition of remote/image atoms allows periodic boundary conditions to be handled outside the force loop.
    • An additional communication/data copy step to handle electron density on remote/image atoms has been added to the EAM force loop.
  • The coordinate system has been simplified to a single global coordinate system for all particles.
  • Evaluation of energies and forces using a Chebyshev polynomial fits has been removed. Polynomial approximation of energies and forces will return in a future CoMD version.
  • Atomic structures are now generated internally, eliminating the requirement to read, write, and distribute large atom configuration files. Arbitrarily large initial structures can be generated with specified initial temperature and random displacements from lattice positions. Code to read/write atomic positions has been removed.
  • EAM potentials are now read from standard funcfl and setfl format files. Voter style files are no longer supported.
  • Collection of performance metrics is significantly improved. Developers can easily add new timers to regions of interest. The system is also designed to allow easy integration with platform specific API's to high resolution timers, cycle counters, hardware counters, etc.
  • Hooks to in-situ analysis and visualization have been removed. In-situ analysis capabilities will return in a future CoMD release.

Please contact the CoMD developers (exema.nosp@m.tex-.nosp@m.comd@.nosp@m.llnl.nosp@m..gov) if any of the deleted features negative impacts your work. We may be able to help produce a custom version that includes the code you need.