xref: /dflybsd-src/test/sysperf/syscall5.c (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
1*86d7f5d3SJohn Marino /*
2*86d7f5d3SJohn Marino  * syscall1.c
3*86d7f5d3SJohn Marino  *
4*86d7f5d3SJohn Marino  * $DragonFly: src/test/sysperf/syscall5.c,v 1.1 2005/03/28 03:13:24 dillon Exp $
5*86d7f5d3SJohn Marino  */
6*86d7f5d3SJohn Marino 
7*86d7f5d3SJohn Marino #include "blib.h"
8*86d7f5d3SJohn Marino 
9*86d7f5d3SJohn Marino int
main(int ac,char ** av)10*86d7f5d3SJohn Marino main(int ac, char **av)
11*86d7f5d3SJohn Marino {
12*86d7f5d3SJohn Marino     long long count = 0;
13*86d7f5d3SJohn Marino     long long max;
14*86d7f5d3SJohn Marino     struct timespec ts;
15*86d7f5d3SJohn Marino     int j;
16*86d7f5d3SJohn Marino 
17*86d7f5d3SJohn Marino     printf("timing standard clock_gettime() syscall\n");
18*86d7f5d3SJohn Marino 
19*86d7f5d3SJohn Marino     start_timing();
20*86d7f5d3SJohn Marino     while (stop_timing(0, NULL) == 0) {
21*86d7f5d3SJohn Marino 	for (j = 0; j < 100; ++j)
22*86d7f5d3SJohn Marino 	    clock_gettime(CLOCK_REALTIME, &ts);
23*86d7f5d3SJohn Marino 	count += 100;
24*86d7f5d3SJohn Marino     }
25*86d7f5d3SJohn Marino     max = count;
26*86d7f5d3SJohn Marino     start_timing();
27*86d7f5d3SJohn Marino     for (count = 0; count < max; count += 100) {
28*86d7f5d3SJohn Marino 	for (j = 0; j < 100; ++j)
29*86d7f5d3SJohn Marino 	    clock_gettime(CLOCK_REALTIME, &ts);
30*86d7f5d3SJohn Marino     }
31*86d7f5d3SJohn Marino     stop_timing(count, "getuid()");
32*86d7f5d3SJohn Marino     return(0);
33*86d7f5d3SJohn Marino }
34*86d7f5d3SJohn Marino 
35