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
  2. 19 Mar, 2019 1 commit
  3. 12 Mar, 2019 2 commits
    • Frank Winklmeier's avatar
      Avoid extending the `std` namespace · 4a7f643f
      Frank Winklmeier authored
      - Add new `Gaudi/Chrono/Counters.h` header file that is supposed to be
        included when duration-base Counters are needed.
      - Allow specialization of `sqrt` within the `Gaudi::Accumulators`
        namespace for custom types via ADL.
      - Only define `std::chrono::duration` stream operator for <=C++17.
      4a7f643f
    • Frank Winklmeier's avatar
      Make Counters work with std::chrono::duration · d45147d1
      Frank Winklmeier authored
      Add helpers to stream and calculate with std::chrono::duration objects.
      This makes them directly usable with Gaudi::Accumulators. Add unit test
      case.
      d45147d1
  4. 01 Feb, 2019 1 commit
  5. 29 Jan, 2019 1 commit
  6. 18 Dec, 2018 1 commit
  7. 01 Nov, 2018 1 commit