I intended to take the best timing out of several tries. Turned out I
only took the *last* timing, which defeats the purpose.
Now we take the fastest try as intended. The results are now a bit
more stable.
#define TIMING_START \
timespec duration; \
+ duration.tv_sec = -1; \
+ duration.tv_nsec = -1; \
duration.tv_sec = 3600 * 24; \
duration.tv_nsec = 0; \
FOR (i, 0, 50) { \
#define TIMING_END \
TIMESTAMP(end); \
- duration = diff(start, end); \
+ duration = min(duration, diff(start, end)); \
} /* end FOR*/ \
return speed(duration)