This file declares functions for mdrun to call to make a new domain decomposition, and check it.
- Author
- Berk Hess hess@.nosp@m.kth..nosp@m.se
|
bool | check_grid_jump (int64_t step, const gmx_domdec_t *dd, real cutoff, const gmx_ddbox_t *ddbox, gmx_bool bFatal) |
| Check whether the DD grid has moved too far for correctness.
|
|
void | print_dd_statistics (const t_commrec *cr, const t_inputrec *ir, FILE *fplog) |
| Print statistics for domain decomposition communication.
|
|
void | dd_partition_system (FILE *fplog, const gmx::MDLogger &mdlog, int64_t step, const t_commrec *cr, gmx_bool bMasterState, int nstglobalcomm, t_state *state_global, const gmx_mtop_t &top_global, const t_inputrec *ir, gmx::ImdSession *imdSession, pull_t *pull_work, t_state *state_local, gmx::PaddedHostVector< gmx::RVec > *f, gmx::MDAtoms *mdatoms, gmx_localtop_t *top_local, t_forcerec *fr, gmx_vsite_t *vsite, gmx::Constraints *constr, t_nrnb *nrnb, gmx_wallcycle *wcycle, gmx_bool bVerbose) |
| Partition the system over the nodes. More...
|
|
void | checkNumberOfBondedInteractions (const gmx::MDLogger &mdlog, t_commrec *cr, int totalNumberOfBondedInteractions, const gmx_mtop_t *top_global, const gmx_localtop_t *top_local, const rvec *x, const matrix box, bool *shouldCheckNumberOfBondedInteractions) |
| Check whether bonded interactions are missing, if appropriate. More...
|
|
void checkNumberOfBondedInteractions |
( |
const gmx::MDLogger & |
mdlog, |
|
|
t_commrec * |
cr, |
|
|
int |
totalNumberOfBondedInteractions, |
|
|
const gmx_mtop_t * |
top_global, |
|
|
const gmx_localtop_t * |
top_local, |
|
|
const rvec * |
x, |
|
|
const matrix |
box, |
|
|
bool * |
shouldCheckNumberOfBondedInteractions |
|
) |
| |
Check whether bonded interactions are missing, if appropriate.
- Parameters
-
[in] | mdlog | Logger |
[in] | cr | Communication object |
[in] | totalNumberOfBondedInteractions | Result of the global reduction over the number of bonds treated in each domain |
[in] | top_global | Global topology for the error message |
[in] | top_local | Local topology for the error message |
[in] | x | Position vector for the error message |
[in] | box | Box matrix for the error message |
[in,out] | shouldCheckNumberOfBondedInteractions | Whether we should do the check. Always set to false. |
void dd_partition_system |
( |
FILE * |
fplog, |
|
|
const gmx::MDLogger & |
mdlog, |
|
|
int64_t |
step, |
|
|
const t_commrec * |
cr, |
|
|
gmx_bool |
bMasterState, |
|
|
int |
nstglobalcomm, |
|
|
t_state * |
state_global, |
|
|
const gmx_mtop_t & |
top_global, |
|
|
const t_inputrec * |
ir, |
|
|
gmx::ImdSession * |
imdSession, |
|
|
pull_t * |
pull_work, |
|
|
t_state * |
state_local, |
|
|
gmx::PaddedHostVector< gmx::RVec > * |
f, |
|
|
gmx::MDAtoms * |
mdatoms, |
|
|
gmx_localtop_t * |
top_local, |
|
|
t_forcerec * |
fr, |
|
|
gmx_vsite_t * |
vsite, |
|
|
gmx::Constraints * |
constr, |
|
|
t_nrnb * |
nrnb, |
|
|
gmx_wallcycle * |
wcycle, |
|
|
gmx_bool |
bVerbose |
|
) |
| |
Partition the system over the nodes.
step is only used for printing error messages. If bMasterState==TRUE then state_global from the master node is used, else state_local is redistributed between the nodes. When f!=NULL, *f will be reallocated to the size of state_local.
- Parameters
-
[in] | fplog | Pointer to the log file |
[in] | mdlog | MD file logger |
[in] | step | Current step |
[in] | cr | Communication record |
[in] | bMasterState | Is it a master state |
[in] | nstglobalcomm | Will globals be computed on this step |
[in] | state_global | Global state |
[in] | top_global | Global topology |
[in] | ir | Input record |
[in] | imdSession | IMD handle |
[in] | pull_work | Pulling data |
[in] | state_local | Local state |
[in] | f | Force buffer |
[in] | mdatoms | MD atoms |
[in] | top_local | Local topology |
[in] | fr | Force record |
[in] | vsite | Virtual sites |
[in] | constr | Constraints |
[in] | nrnb | Cycle counters |
[in] | wcycle | Timers |
[in] | bVerbose | Be verbose |