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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox