Messages in this thread | | | Date | Thu, 13 Feb 2003 13:27:36 -0800 | From | Ben Greear <> | Subject | Re: select returning slow on RH 2.4.18-14 (RH 8.0) kernel. |
| |
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
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |