Next: Biasing and analysis methods
Up: Selecting atoms
Previous: Treatment of periodic boundary
Contents
Index
In simulations performed with message-passing programs (such as NAMD or LAMMPS), the calculation of energy and forces is distributed (i.e., parallelized) across multiple nodes, as well as over the processor cores of each node.
When Colvars is enabled, certain atomic coordinates are collected on a single node, where the calculation of collective variables and of their biases is executed.
This means that for simulations over large numbers of nodes, a Colvars calculation may produce a significant overhead, coming from the costs of transmitting atomic coordinates to one node and of processing them.
Performance can be improved in multiple ways:
- The calculation of variables, components and biases can be distributed over the processor cores of the node where the Colvars module is executed.
Currently, an equal weight is assigned to each colvar, or to each component of those colvars that include more than one component.
The performance of simulations that use many colvars or components is improved automatically.
For simulations that use a single large colvar, it may be advisable to partition it in multiple components, which will be then distributed across the available cores.
If printed, the message ``SMP parallelism is available.'' indicates the availability of the option (will be supported in a future release of VMD).
If available, the option is turned on by default, but may be disabled using the keyword smp if required for debugging.
- As a general rule, the size of atom groups should be kept relatively small (up to a few thousands of atoms, depending on the size of the entire system in comparison).
To gain an estimate of the computational cost of a large colvar, one can use a test calculation of the same colvar in VMD (hint: use the time Tcl command to measure the cost of running cv update).
Next: Biasing and analysis methods
Up: Selecting atoms
Previous: Treatment of periodic boundary
Contents
Index
vmd@ks.uiuc.edu