Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 Jul 1999 20:55:16 -0400
From:      "Louis A. Mamakos" <louie@TransSys.COM>
To:        Jennifer Clark <jen@vulture.dmem.strath.ac.uk>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: Advice on deriving accurate time values from the kernel? 
Message-ID:  <199907160055.UAA70943@whizzo.transsys.com>
In-Reply-To: Your message of "Thu, 15 Jul 1999 17:48:04 BST." <378E10C4.9AD7979E@vulture.dmem.strath.ac.uk> 
References:  <378E10C4.9AD7979E@vulture.dmem.strath.ac.uk> 

next in thread | previous in thread | raw e-mail | index | archive | help

I've done some work on measuring things like interrupt response times
and the interval between two interesting events or steps in processing.
A cheap way to do this is to use the TSC register in the CPU, though you
then need to calibrate the frequency that the CPU really runs at.

If you're willing to spend some money, you can get hardware to plug into
a PCI slot that can return timestamps in 100ns units, as well as generating
interrupt at some time in the future, etc.  

See http://www.bancomm.com/cbc637PCI.htm for one example of such hardware.
I have a device driver for FreeBSD for this board which even allows user
processes to get precise timing by mmap()'ing the device registers into
user space for easy access.

The driver will be contributed to the FreeBSD project "soon."  I was pretty
close to doing so just prior to the newbus conversion and now need to update
the driver for a more recent -current.

louie



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199907160055.UAA70943>