#include <sys/stat.h>
#include "../lib/lfsr.h"
+#include "../gettime.h"
+#include "../fio_time.h"
void usage()
{
void *v = NULL, *v_start;
double total, mean;
+ arch_init(argv);
+
/* Read arguments */
switch (argc) {
case 5: if (strncmp(argv[4], "verify", 7) == 0)
v_size = numbers * sizeof(uint8_t);
v = malloc(v_size);
memset(v, 0, v_size);
- printf("\nVerification table is %lf KBs\n", (double)(v_size) / 1024);
+ printf("\nVerification table is %lf KiB\n", (double)(v_size) / 1024);
}
v_start = v;
* negligible overhead.
*/
fprintf(stderr, "\nTest initiated... ");
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &start);
- while (!lfsr_next(fl, &i, fl->max_val)) {
+ fio_gettime(&start, NULL);
+ while (!lfsr_next(fl, &i)) {
if (verify)
*(uint8_t *)(v + i) += 1;
}
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &end);
+ fio_gettime(&end, NULL);
fprintf(stderr, "finished.\n");
}
/* Calculate elapsed time and mean time per number */
- total = (end.tv_sec - start.tv_sec) * pow(10,9) +
- end.tv_nsec - start.tv_nsec;
+ total = utime_since(&start, &end);
mean = total / fl->num_vals;
printf("\nTime results ");
if (verify)
printf("(slower due to verification)");
printf("\n==============================\n");
- printf("Elapsed: %lf s\n", total / pow(10,9));
- printf("Mean: %lf ns\n", mean);
+ printf("Elapsed: %lf s\n", total / pow(10,6));
+ printf("Mean: %lf us\n", mean);
free(v_start);
free(fl);