cvs commit: src/sys/kern kern_cputimer.c
Matthew Dillon
dillon at apollo.backplane.com
Wed Jun 1 14:25:48 PDT 2005
:
:On Wed, Jun 01, 2005 at 01:49:11PM -0700, Matthew Dillon wrote:
:> I'll probably remove it entirely, actually. I don't think we can
:> suppor changing the primary system timebase, not without putting 64 bit
:> arithmatic in the critical timer paths.
:
:But is that part supposed to happen in the normal operation? If yes,
:we have to eliminate it.
:
:Joerg
The choices are:
* Use a normalized time base and convert values on the fly.
This is fairly tidy but puts 64 bit multiplies and divides in the
critical path.
* Use a normalized time base and cache a copy of the calculation(s).
This is much faster but requires a *huge* infrastructure to recalculate
the cached values whenever the timebase changes.
* Use hardware counter units and do not allow the timebase to change
once the system has come up.
It is my feeling that there are just too many gotchas involved with
changing the timebase on the fly. I far prefer #3.
-Matt
Matthew Dillon
<dillon at xxxxxxxxxxxxx>
More information about the Commits
mailing list