On Wed, Mar 08, 2006 at 09:11:49AM -0800, Benjamin LaHaise ([EMAIL PROTECTED]) 
wrote:
> On Wed, Mar 08, 2006 at 02:01:04PM +0300, Evgeniy Polyakov wrote:
> > When I tested RCU for similar change for kevent, but postponed more work
> > to RCU callback, including socket closing and some attempts to inode
> > dereferencing, such change forced performance degradation for httperf
> > benchmark and trivial web server from 2600 requests/sec down to 2200
> > with 4.1K index page and 1500 MTU. 
> > 
> > I still have this testbed and will gladly test this change tomorrow 
> > if it applies cleanly to 2.6.15-rc7?
> 
> I think it should, the code it touches isn't that heavily changed.  The 
> results should be most interesting.  It might be useful to compare SMP 
> and non-SMP cases as the difference in locks may show up in the test.

Ok, I hacked quite a bit in the patch, but I think nothing major was
changed, basically patch rejects.
And I'm now unable to bind to 0.0.0.0 address, i.e. bind() does not
fail, but all connections are refused.
Bind to machine's IP works fine.

Test decription.

Hardware.
Receiver: 2.4 Ghz Xeon (HT enabled) 1 Gb RAM, e1000 NIC.
Sender: AMD Athlon 3500+, 1 Gb RAM, 8169 Realtek NIC.

1500 MTU.

Client software.
httperf-0.8
./httperf --server pcix --num-conns 30000 --rate 3000 --timeout 1
Maximum number of connections is 30k, 3k per run with 1sec timeout
between runs.

Server software.
epoll and kevent based trivial web servers, 4.1k index.html.

Here are quite optimistic results.
Before and after number of requests per second does not differ,
probably there are some changes, but they have sunk in the noise.

epoll: ~1600-1700 requests per second, about 14k errors of 30k
connections, results vary significantly probably due to port rollover.
Maximum seen 1744 req/s.

kevent: ~2500 req/s, about 3.3k errors of 30k connections, 
results vary with the same rate.
Maximum seen 2535 req/s.

So I can confirm that this change do not noticebly hurt case where a lot
of connections are created and destroyed in a short period of time.
Except issue with INADDR_ANY bind, but this can be just backporting
problem.

>               -ben

-- 
        Evgeniy Polyakov
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to