Re: Measure time

george anzinger (george@mvista.com)
Wed, 08 May 2002 16:22:12 -0700


Der Herr Hofrat wrote:
>
> >
> > Hi,
> >
> > ftime() will return milliseconds, but it's considered an obsolete function.
> > You could use gettimeofday() (as Richard Johnson suggested) to get
> > microseconds and divide them to get milliseconds, although I don't know how
> > time critical your routines are.
> >
> > If you're still looking for nanoseconds, I'm told you can use
> > clock_gettime() but it's still quite unavailable (I've never seen it myself,
> > yet).. however even if it was available you possibly wouldn't get a very
> > high resolution from it with current systems..
> >
> clock_gettime() is available in the hard realtime extensions like RTLinux .
> The clock resolution is limited to 32ns though - and atleast on X86 I don't
> think there is a way to get below that.

The high-res-timers patch provides clock_gettime() with resolution to
the TSC increment. But you need to understand that this is a system
call which can take on the order of 1000 or these units. Add in a
little cach hit/ miss and interrupt randomness and well...

Still, there it is. Check out the web site below.

-- 
George Anzinger   george@mvista.com
High-res-timers:  http://sourceforge.net/projects/high-res-timers/
Real time sched:  http://sourceforge.net/projects/rtsched/
Preemption patch: http://www.kernel.org/pub/linux/kernel/people/rml
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/