Gromacs  2022.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Attributes
gmx_walltime_accounting Struct Reference

Description

Manages caching wall-clock time measurements for simulations.

Public Attributes

double start_time_stamp
 Seconds since the epoch recorded at the start of the simulation.
 
double reset_time_stamp
 Seconds since the epoch recorded at the reset of counters for the simulation (or the start, if no reset has occured).
 
double reset_time_stamp_per_thread
 Seconds since the epoch recorded at the reset of counters for the simulation for this thread (or the start, if no reset has occured).
 
double elapsed_time
 Total seconds elapsed over the simulation since counter reset.
 
double elapsed_time_over_all_threads
 Total seconds elapsed over the simulation since counter reset running this thread.
 
int numOpenMPThreads
 Number of OpenMP threads that will be launched by this MPI rank. More...
 
int64_t nsteps_done_at_reset
 Numbers of steps done before reset of counters.
 
int64_t nsteps_done
 Set by integrators to report the amount of work they did.
 
bool isValidFinish
 Whether the simulation has finished in a way valid for walltime reporting.
 

Member Data Documentation

int gmx_walltime_accounting::numOpenMPThreads

Number of OpenMP threads that will be launched by this MPI rank.

This is used to scale elapsed_time_over_all_threads so that any combination of real MPI, thread MPI and OpenMP (even mdrun -ntomp_pme) processes/threads would (when run at maximum efficiency) return values such that the sum of elapsed_time_over_all_threads over all threads was constant with respect to parallelism implementation.


The documentation for this struct was generated from the following file: