Re: sched_clock() uses are broken

Nicolas Pitre
2006-05-04T14:18:36Z

On Wed, 3 May 2006, George Anzinger wrote:

> Nicolas Pitre wrote:
> > Yet that counter isn't necessarily nanosecond based. So rescaling the
> > returned value to nanosecs requires expensive divisions which could be done
> > only once within sched_clock_diff() instead of twice as often in each
> > sched_clock() calls.
>
> Oh phooey!! Scaling can be done with a mpy and a shift. See the new clock
> code where the TSC (or what ever) is scaled to ns.

I know.

And if you want to preserve more than 32 bits of precision you need 4
mpy_and_add insns with a shift on ARM at least.

But the point remains that it is more efficient to do it once rather
than twice or more.

Nicolas