Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »

Understanding the timers in E3SM.

This timing library is used in all components of E3SM including the driver/coupler.

Below is a few lines from the top of “model_timing_stats”. This file is written out at the end of a run in $RUNDIR/timing/ and also copied to $CASEDIR/timing where is is renamed to model_timing_stats.<jobid>.<date-string>. Example: e3sm_timing_stats.209399.220810-232430

***** GLOBAL STATISTICS (  6720 MPI TASKS) *****

$Id: gptl.c,v 1.157 2011-03-28 20:55:18 rosinski Exp $
'count' is cumulative. All other stats are max/min
'on' indicates whether the timer was active during output, and so stats are lower or upper bounds.

name                                            on  processes  threads        count      walltotal   wallmax (proc   thrd  )   wallmin (proc   thrd  )
"CPL:INIT"                                       -       6720     6720 6.720000e+03   5.423981e+05    82.145 (    60      0)    77.582 (  5906      0)
"CPL:cime_pre_init1"                             -       6720     6720 6.720000e+03   1.456266e+05    22.453 (    53      0)    20.920 (  4726      0)
"CPL:mpi_init"                                   -       6720     6720 6.720000e+03   1.286709e+05    19.927 (    39      0)    18.394 (  4727      0)
"CPL:ESMF_Initialize"                            -       6720     6720 6.720000e+03   4.814818e-01     0.001 (  4437      0)     0.000 (    20      0)

“on”

“processes” number of mpi tasks the timer is called on.

“threads” total number of threads the timer is called on. Will be equal to processes for single-threaded runs.

“count” how many times the timer was called over all processors and threads over the entire run..

“walltotal” total time in the timer for all calls on all processors/threads.

“wallmax (proc thrd)” the processor and thread that took the most time (over all processors/threads) and the value of that time.

“wallmin (proc thrd)” the processor and thread that took the least time (over all processors/threads) and the value of that time

This data is postprocessed by CIME and another file is placed in $CASEDIR/timing with summary statistics such as simulated years per day for each component, the pelayout and other useful information. The filename has the form e3sm_timing.<casename>.<jobid>.<date-string>.

The source code for the timing library is in E3SM/share/timing

  • No labels