18 lines
488 B
C
18 lines
488 B
C
#include "timer.h"
|
|
#include <stdint.h>
|
|
#include <stdio.h>
|
|
#define __USE_POSIX199309 1
|
|
#include <time.h>
|
|
|
|
uint64_t com_timer_count_ns(void) {
|
|
struct timespec time;
|
|
clock_gettime(CLOCK_MONOTONIC, &time);
|
|
return time.tv_sec * 1000000000 + time.tv_nsec;
|
|
}
|
|
|
|
void com_timer_profile(uint64_t starttime, const char *what) {
|
|
uint64_t const endtime = com_timer_count_ns();
|
|
uint64_t const diff = endtime - starttime;
|
|
printf("profile \"%s\" took %fms\n", what, (double)diff / 1000000);
|
|
}
|