1. 13 May, 2019 1 commit
    • 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