Re: Timings for optimised poll(2)

Mikael Abrahamsson (swmike@uplift.sparta.lu.se)
Wed, 27 Aug 1997 09:08:20 +0200 (MET DST)


On Tue, 26 Aug 1997, Dean Gaudet wrote:

>
>
> On Wed, 27 Aug 1997, Richard Gooch wrote:
>
> > Hm. Perhaps a simple and cheap alternative is to use find_first_bit on
> > each fd_set, then take the minimum index of the three, and start
> > normal scanning from there. Of course, it won't help in the case where
> > you are selecting on descriptors 100,200,300,400,500,600,700,800,900
> > or some other such sparse set.
>
> I doubt that sort of input is terribly common, but you never know. On the
> other hand, output like that is probably really common. Consider an IRC
> server (or say Squid) which is doing select()s on a thousand network
> sockets. Only a small handful will have any events associated with them.

Let me inject here that actually there is a problem with linux + ircd.

Linux never was really good at running ircd, and it still isnt (at least
2.0.x-series), but then again the only really good one is freebsd. Solaris
works so-so.

I get mysterious TCP lockups, dropped TCP connections etc, when my irc
server reaches like 300-400 or more simultanious users.

Another thing is that linux should be able to handle at least 4096 fd /
process. We tried to up this from 1024 but got some nasty oopses and
alike.

-----
Mikael Abrahamsson email: swmike@df.lth.se