UNPKG

613 Btext/x-cView Raw
1/*
2Test performance of native C UUID generation
3
4To Compile: cc -luuid benchmark-native.c -o benchmark-native
5*/
6
7#include <stdio.h>
8#include <unistd.h>
9#include <sys/time.h>
10#include <uuid/uuid.h>
11
12int main() {
13 uuid_t myid;
14 char buf[36+1];
15 int i;
16 struct timeval t;
17 double start, finish;
18
19 gettimeofday(&t, NULL);
20 start = t.tv_sec + t.tv_usec/1e6;
21
22 int n = 2e5;
23 for (i = 0; i < n; i++) {
24 uuid_generate(myid);
25 uuid_unparse(myid, buf);
26 }
27
28 gettimeofday(&t, NULL);
29 finish = t.tv_sec + t.tv_usec/1e6;
30 double dur = finish - start;
31
32 printf("%d uuids/sec", (int)(n/dur));
33 return 0;
34}