18 #ifndef FOEDUS_DEBUGGING_RDTSC_WATCH_HPP_
19 #define FOEDUS_DEBUGGING_RDTSC_WATCH_HPP_
53 return stopped_ - started_;
64 #endif // FOEDUS_DEBUGGING_RDTSC_WATCH_HPP_
Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services).
uint64_t elapsed() const __attribute__((always_inline))
uint64_t get_rdtsc()
Returns the current CPU cycle via x86 RDTSC.
RdtscWatch() __attribute__((always_inline))
void start() __attribute__((always_inline))
Take current time tick.
A RDTSC-based low-overhead stop watch.
Implements an RDTSC (Real-time time stamp counter) wait to emulate latency on slower devices...
uint64_t stop() __attribute__((always_inline))
Take another current time tick.
#define ALWAYS_INLINE
A function suffix to hint that the function should always be inlined.