![]() |
The Gaudi Framework
v32r2 (46d42edc)
|
A std::chrono compatible Clock using rdtsc as its timing source. More...
#include <Gaudi/Timers/RdtscClock.h>
Public Types | |
| typedef Precision::rep | rep |
| typedef Precision::period | period |
| typedef std::chrono::duration< rep, period > | duration |
| typedef std::chrono::time_point< RdtscClock > | time_point |
Static Public Member Functions | |
| static rep | calibrate () noexcept |
| Calibrate the RDTSC clock against wall time. More... | |
| static time_point | now () noexcept |
Static Public Attributes | |
| static constexpr bool | is_steady {true} |
Static Private Member Functions | |
| static rep | ticks_per_unit () noexcept |
| static rep | do_calibrate () noexcept |
A std::chrono compatible Clock using rdtsc as its timing source.
This clock is not directly related to wall time but meant as a low-overhead time interval measurement. The Precision template parameter determines the internal precision of the clock (e.g. std::milli, std::micro). On first invocation of now() the timer is calibrated against a wall-time clock, which will have an overhead of several milliseconds. This can be avoided by calling calibrate() explicitly before the first measurement.
Definition at line 23 of file RdtscClock.h.
| typedef std::chrono::duration<rep, period> Gaudi::Timers::RdtscClock< Precision >::duration |
Definition at line 28 of file RdtscClock.h.
| typedef Precision::period Gaudi::Timers::RdtscClock< Precision >::period |
Definition at line 27 of file RdtscClock.h.
| typedef Precision::rep Gaudi::Timers::RdtscClock< Precision >::rep |
Definition at line 26 of file RdtscClock.h.
| typedef std::chrono::time_point<RdtscClock> Gaudi::Timers::RdtscClock< Precision >::time_point |
Definition at line 29 of file RdtscClock.h.
|
inlinestaticnoexcept |
Calibrate the RDTSC clock against wall time.
Definition at line 39 of file RdtscClock.h.
|
inlinestaticprivatenoexcept |
Definition at line 49 of file RdtscClock.h.
|
inlinestaticnoexcept |
Definition at line 41 of file RdtscClock.h.
|
inlinestaticprivatenoexcept |
Definition at line 44 of file RdtscClock.h.
|
static |
Definition at line 31 of file RdtscClock.h.