• Frank Winklmeier's avatar
    Counter-based timer class · 9be9bb98
    Frank Winklmeier authored and Marco Clemencic's avatar Marco Clemencic committed
    Implement a `Gaudi::Timer` class that accumulates its statistics in a
    `Counter`:
    - `GenericTimer` is a generic timer that can be templated with a
      `std::chrono`-compatible clock and a precision. A timing measurement
      is done via the RAII helper class `ScopeTimer`.
    - The Timer can register itself with an owner using the dedicated
      constructor.
    - `RdtscClock` is a (non-walltime) clock based on `rdtsc`. Depending on
      the available CPU this can be significantly faster than the default
      clock. Run the `test_GaudiTimer` unit tests for a measurement of the
      overhead of the various clocks.
    - `Gaudi/Timers.h` provides a default `Gaudi::Timer` based on wall-clock and
      `Gaudi::FastTimer` based on the `RdtscClock`.
    9be9bb98
test_GaudiTimer.cpp 1.21 KB