Re: [patch 00/13] Syslets, "Threadlets", generic AIO support, v3
From: Johann Borck
Date: Thu Mar 01 2007 - 14:10:59 EST
On Thu, Mar 01, 2007 at 04:41:27PM +0100, Eric Dumazet wrote:
I had to loop on accept() :
for (i=0; i<num; ++i) {
if (event[i].data.fd == main_server_s) {
do {
err = evtest_callback_main(event[i].data.fd);
} while (err != -1);
}
else
err = evtest_callback_client(event[i].data.fd);
}
Or else we can miss an event forever...
On Thu, 1 Mar 2007, Evgeniy Polyakov wrote:
The same here - I would just enable a debug to find it.
I reported this a while ago and suggested to have the number of
pending accepts reported with the event to save that last syscall.
I created an ab replacement based on kevent, and at least with my
machines, which are comparable to each other, the load on client
dropped from 100% to 2% or something. ab just doesn't give meaningful
results (if the client is not way more powerful). With that new client
I get very similar results for epoll and kevent, from 1000 through to
26000 concurrent requests, the results have been posted on
kevent-homepage in october, I just checked it with new version, but
there's no significant difference.
this is the benchmark with kevent-based client:
http://tservice.net.ru/~s0mbre/blog/2006/10/11#2006_10_11
btw, each result is average over 1,000,000 requests
and just for comparison, this is on the same machines using ab:
http://tservice.net.ru/~s0mbre/blog/2006/10/08#2006_10_08
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/