Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Nov 2000 11:24:00 -0800 (PST)
From:      John Baldwin <jhb@FreeBSD.org>
To:        John Hay <jhay@icomtek.csir.co.za>
Cc:        mark@grondar.za, arch@FreeBSD.org
Subject:   Re: new monotime() call for all architectures.
Message-ID:  <XFMail.001117112400.jhb@FreeBSD.org>
In-Reply-To: <200011171909.eAHJ9et99988@zibbi.icomtek.csir.co.za>

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

On 17-Nov-00 John Hay wrote:
>> >> I need a fast-as-possible "time" inside the kernel to help
>> >> speed up the /dev/random device. I say "time", because although
>> >> it needs to be a function of time (preferably accurate and linear),
>> >> it has no need whatsoever to be "real time", so a simple counter
>> >> is quite OK.
>> >> 
>> >> Pentiums, Alphas and IA64's all have a suitable register on chip,
>> >> while I have to make do with nanotime(9) on i386 and i486.
>> >> 
>> >> I have prepared a monotime(9) call for the i386, alpha and ia64
>> >> architectures (patch enclosed). I have been running this for a
>> >> week or two now with promising results (on a Pentium). With
>> >> the exception of the minimum of "glue" (and nanotime on older
>> >> architectures), these functions reduce to one instruction.
>> >> 
>> > 
>> > Are you sure it will work on SMP machines? There is nothing that
>> > synchronizes the onboard counters. Or will your code stay on one
>> > cpu?
>> 
>> It doesn't matter.  He just needs a psuedo-timestamp for entropy gathering
>> purposes.  It dosen't need to be entirely precise, so if different CPU's
>> counters are not 100% in sync it won't hurt anything.
> 
> Ok, I just thought the "mono" in his function name is for monotonic. If
> you are staying on one processor it will work, but if the timestamps
> have scheduling inbetween the timestamps and you land on a different
> processor it won't be monotonic anymore.

It's close enough. :)

> John

-- 

John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/


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




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