Re: HZ question

Mark Hounschell
2005-09-13T15:06:05Z

Tim Schmielau wrote:
> On Tue, 13 Sep 2005, Mark Hounschell wrote:
>
>>Most if not all userland delay calls rely on HZ value in some way or
>>another. The minimum reliable delay you can get is one (kernel)HZ. A
>>program that needs an acurrate delay for a time shorter that one
>>(kernel)HZ may have an alternative if it knows that HZ is greater the
>>the requested delay.
>
> Just assume that kernel HZ are USER_HZ and see anything else as an
> additional bonus that you cannot rely on.
>
> What does 'acurrate delay' mean, anyways?
>
> Tim
>

But they are not the same. Why can I get USER_HZ but not HZ?

On a 100HZ kernel ANY requested delay via udelay or
pthread_cond_timedwait of less than 10000usecs is unreliable and the the
actual results are totally unacceptable.

On a 1000HZ kernel the number is 1000 usecs.

I'm not asking the kernel running at 1000hz to actually give me 500 usec
delay if I ask. I do expect it to be at least 500 usec and within +- a
single HZ however. Oviously a 1000HZ machine is going to give me better
resulution in any requested delay. Why is it unreasonable for userland
to know the probable resolution of userland delay requests.

For those required delays less than a HZ I have alternatives that are
more accruate than += one HZ. I just need to know the kernel HZ in order
to better predict when my alternative methods will be prefered.

Mark