Skip to content

[package list]

OpenMM

License information

The precise license for OpenMM is unclear.

The GitHub repository does state a code of conduct in the CODE_OF_CONDUCT.md file.

The User Guide does require you to cite a publication, see the "Introduction" section of the User Guide.

User documentation

OpenMM should be installed in a container as it is mainly used through Python.

We provide an EasyBuild recipe that will use lumi-container-wrapper to install a specific version of OpenMM and Python through Conda. This recipe does not offer the usual guarantee for reproducibility of the software installation, as we only specify the version of OpenMM and Python and nothing else. Apart from that, Conda installations are never fully reproducible as they may change the compilers used for building software also.

The recipe is very easy to adapt. The definition file needed for lumi-container-wrapper is also generated by the EasyBuild recipe and is easily found in the sources of it (the _def_file variable), so it is possible to further extend the recipe. See also the documentation for lumi-container-wrapper or the corresponding CSC Tykky package.

User-installable modules (and EasyConfigs)

Install with the EasyBuild-user module:

eb <easyconfig> -r
To access module help after installation and get reminded for which stacks and partitions the module is installed, use module spider OpenMM/<version>.

EasyConfig:

Technical documentation

General information

OpenMM is a high-performance toolkit for molecular simulation. You can use it as an application, a library, or a flexible programming environment. It include extensive language bindings for Python, C, C++, and Fortran.

In the early days of LUMI, we used native installs on LUMI, combining with Cray Python. As it turned out that installing Python software uncontainerized on the Lustre filesystem puts too much stress on the filesystem and can also drastically reduce the performance of the software, we stopped offering those recipes (the 7.5.1 recipes below).

We currently offer a recipe based on lumi-container-wrapper and Conda in a recipe that is very easy to adapt to different versions of OpenMM and Python, but does not offer complete reproducibility as only the versions of these packages are specified. The EasyConfig is very easy to customise.

EasyBuild

Version 7.5.1 for CPE GNU 21.08

  • The EasyConfig is derived from the EasyBuilders one
  • Include a patch to fix problem when building with Doxygen 1.9 used in buildtools

Version 7.5.1 for CPE Cray 21.08

One of the test fail (segfault), be aware of it if you are using this version.

  • The EasyConfig is derived from the EasyBuilders one
  • Include a patch to fix problem when building with Doxygen 1.9 used in buildtools

Version 8.6.0 with lumi-container-wrapper

  • EasyConfig is a LUST-development. The installation is done using a Bundle EasyConfig and post_install_cmds as we needed a generic EasyBlock that can work without sources. We wanted to avoid developing an EasyBlock specifically for installations with lumi-container-wrapper.

  • The EasyConfig can easily be used as a template to play around with other versions of OpenMM and Python. It is also easy to extend the installation with other packages as the definition file for lumi-container-wrapper is also generated in the EasyConfig, so it is a single file solution.

  • The resulting module offers the same functionality as the (undocumented ) CSC openmm modules.

Archived EasyConfigs

The EasyConfigs below are additional easyconfigs that are not directly available on the system for installation. Users are advised to use the newer ones and these archived ones are unsupported. They are still provided as a source of information should you need this, e.g., to understand the configuration that was used for earlier work on the system.