/* Simple timer, for use in benchmark reporting. */ #include #include #define JEMALLOC_CLOCK_GETTIME defined(_POSIX_MONOTONIC_CLOCK) \ && _POSIX_MONOTONIC_CLOCK >= 0 typedef struct { #ifdef _WIN32 FILETIME ft0; FILETIME ft1; #elif JEMALLOC_CLOCK_GETTIME struct timespec ts0; struct timespec ts1; int clock_id; #else struct timeval tv0; struct timeval tv1; #endif } timedelta_t; void timer_start(timedelta_t *timer); void timer_stop(timedelta_t *timer); uint64_t timer_usec(const timedelta_t *timer); void timer_ratio(timedelta_t *a, timedelta_t *b, char *buf, size_t buflen);