On Tuesday 17 March 2009 16:17:55 Mari Kotlov wrote: > Hi everyone, > I am doing a port of C++ code from Windows to FreeBSD and need to > replace function GetTickCount(), which is used mostly for the purposes > of obtaining elapsed time (e.g. as a millisecond timer). As I > understand it, there are two ways to do that: 1) via sysctl() function > with CTL_KERN&KERN_BOOTTIME options and 2) via gettimeofday(). In both > case, struct timeval is returned, so I can compute the difference > between the two times and get the elapsed time. > > I am wondering if anyone could tell me performance implications of > using sysctl() function call to obtain system boot time vs. > gettimeofday(). Is one better than the other? More efficient? Are > there advantages or disadvantages to using either of these two > methods? Any insight would be appreciated. > > Thanks very much in advance, > Mari.
For the purpose of determining the elapsed time between two measurements, I can recommend clock_gettime(2) w/ CLOCK_MONOTONIC as clock_id. Sysctl is definately not meant to be used for this, as it is not portable and has probably more overhead than clock_gettime() or gettimeofday(). - Pieter _______________________________________________ freebsd-performance@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-performance To unsubscribe, send any mail to "freebsd-performance-unsubscr...@freebsd.org"