Gromacs  2020.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Functions
#include "gromacs/math/vec.h"
+ This graph shows which files directly or indirectly include this file:

Description

Declares functions for choosing the DD grid setup.

Author
Berk Hess hess@.nosp@m.kth..nosp@m.se

Classes

class  gmx::ArrayRef< T >
 STL-like interface to a C array of T (or part of a std container of T). More...
 
struct  DDGridSetup
 Describes the DD grid setup. More...
 

Functions

real comm_box_frac (const gmx::IVec &dd_nc, real cutoff, const gmx_ddbox_t &ddbox)
 Returns the volume fraction of the system that is communicated.
 
void checkForValidRankCountRequests (int numRanksRequested, bool usingPme, int numPmeRanksRequested, bool checkForLargePrimeFactors)
 Checks that requests for PP and PME ranks honor basic expectations. More...
 
real getDDGridSetupCellSizeLimit (const gmx::MDLogger &mdlog, bool request1DAnd1Pulse, bool bDynLoadBal, real dlb_scale, const t_inputrec &ir, real systemInfoCellSizeLimit)
 Return the minimum cell size (in nm) required for DD.
 
DDGridSetup getDDGridSetup (const gmx::MDLogger &mdlog, const t_commrec *cr, int numRanksRequested, const gmx::DomdecOptions &options, const DDSettings &ddSettings, const DDSystemInfo &systemInfo, real cellSizeLimit, const gmx_mtop_t &mtop, const t_inputrec &ir, const matrix box, gmx::ArrayRef< const gmx::RVec > xGlobal, gmx_ddbox_t *ddbox)
 Determines the DD grid setup. More...
 

Function Documentation

void checkForValidRankCountRequests ( int  numRanksRequested,
bool  usingPme,
int  numPmeRanksRequested,
bool  checkForLargePrimeFactors 
)

Checks that requests for PP and PME ranks honor basic expectations.

Issues a fatal error if there are more PME ranks than PP, or if the count of PP ranks has a prime factor that is too large to be likely to have good performance.

DDGridSetup getDDGridSetup ( const gmx::MDLogger mdlog,
const t_commrec *  cr,
int  numRanksRequested,
const gmx::DomdecOptions options,
const DDSettings &  ddSettings,
const DDSystemInfo &  systemInfo,
real  cellSizeLimit,
const gmx_mtop_t &  mtop,
const t_inputrec &  ir,
const matrix  box,
gmx::ArrayRef< const gmx::RVec xGlobal,
gmx_ddbox_t *  ddbox 
)

Determines the DD grid setup.

Either implements settings required by the user, or otherwise chooses estimated optimal number of separate PME ranks and DD grid cell setup, DD cell size limits, and the initial ddbox.