On Wed, Feb 13, 2002 at 02:29:30AM -0800, Kip Macy wrote:
> 
> > I still wonder, whether this problem occurs because of how thttpd does
> > things, or how FreeBSD implements kqueue stuff, however, I am not sure
> 
> I take it you don't have any logs for 4.4?
> 

You mean, webserver logs on FreeBSD 4.4?  I don't have them, however, this
problem did take place, and it persisted after upgrading to 4.5.  Sad but
true :(

>  
> > And one more question: out of kqread()/poll()/select() methods, which one
> > is more likely to perform better, both under normal server access, and
> 
> Under normal load it doesn't matter. Under heavy load there can be no
> comparison.
> see:
> http://www.kegel.com/dkftpbench/Poller_bench.html
> 
> This excerpt is the FreeBSD relevant portion:
> 
> 
> With 1 active socket amongst 100, 1000, or 10000 total sockets,
> waitAndDispatchEvents takes the following amount of wall-clock time, in
> microseconds (lower is faster): 
> 
> On a single processor 600Mhz Pentium-III with 512MB of memory, running FreeBSD
> 4.x-STABLE (results contributed by Jonathan Lemon): 
> 
>      pipes    100    1000    10000   30000
>     select     54       -        -       -
>       poll     50     552    11559   35178
>     kqueue      8       8        8       8
> 
> (Note: Jonathan also varied the number of active pipes, and found that kqueue's
> time scaled linearly with that number, whereas poll's time scaled linearly with
> number of total pipes.) 
> 

Hmm...  It looks like kqueue is really the way to go...  I think I should do
a bit further investigation on this subject, since poll() does not satisfy me
anymore :)

Regards,
Alexey D.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to