From: Ben Greear <greearb@candelatech.com>
To: arjanv@redhat.com
Cc: linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: select returning slow on RH 2.4.18-14 (RH 8.0) kernel.
Date: Thu, 13 Feb 2003 13:27:36 -0800 [thread overview]
Message-ID: <3E4C0DC8.3050803@candelatech.com> (raw)
In-Reply-To: <1045136340.2313.1.camel@laptop.fenrus.com>
Arjan van de Ven wrote:
> On Thu, 2003-02-13 at 10:08, Ben Greear wrote:
>
>>I've been doing some testing with RH 8.0 on an Ezra 800Mhz
>>machine.
>>
>>Even when lightly loaded select() often returns 3-9 miliseconds slower
>>than the timeout would suggest. I know select is not guaranteed to
>>return with < 10ms accuracy, but with almost no load, shouldn't it
>>at least return with 1ms accuracy on average?
>
> no
> the kernel.org kernels will return in multiple-of-10ms quantities due to
> HZ having the value of 100.
> 2.4.18-14 (which is btw obsoleted by several security errata) has a HZ
> value of 512 so will return in shorter quantities, EXCEPT when you
> always try to wait exactly 10ms of course....
For posterity's sake...I think I found a somewhat suitable work around.
I set up the real-time-clock at 1024hz, open /dev/rtc, and then add it's
file descriptor to my select input set when (0 < timeout < 10).
This causes a near busy-spin on slower cpus...but for me at least that
is the lesser of two evils...
If anyone has any cleaner/better/faster/ hacks they feel like sharing,
do let me know!
PS. Don't use SCHED_RR with this hack..or you can live-lock your system
if it's like mine :)
Thanks,
Ben
--
Ben Greear <greearb@candelatech.com> <Ben_Greear AT excite.com>
President of Candela Technologies Inc http://www.candelatech.com
ScryMUD: http://scry.wanfear.com http://scry.wanfear.com/~greear
prev parent reply other threads:[~2003-02-13 21:17 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-02-13 9:08 select returning slow on RH 2.4.18-14 (RH 8.0) kernel Ben Greear
2003-02-13 11:39 ` Arjan van de Ven
2003-02-13 21:27 ` Ben Greear [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3E4C0DC8.3050803@candelatech.com \
--to=greearb@candelatech.com \
--cc=arjanv@redhat.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.