Zbr's days.

About :: TODO :: Blog :: RSS :: Old blog :: Projects :: GIT :: Gallery :: Notes

Sun, 08 Oct 2006

More kevent benchmarks.


Johann Borck (johann.borck_densedata.com) has ran set of very interesting benchmarks with kevent and compared them to epoll with different number of simultaneous connections.

kevent vs. epoll
kevent vs. epoll
Number of requests per second handled by kevent and epoll web servers with various total number of concurent connections.

kevent performance
Maximum total link utilization for kevent is about 25 MB/sec, which is about 5000 requests per second in his setup with 5kb index page.

Hardware used for tests:
Server: Athlon 1.8 GHz (Barton 2500) 1024 MB of RAM.
Client: Sempron64 1.6 GHz 512 MB of RAM, ApacheBench 2, latest version.

Johann Borck later reported that he was able to create web client and server applications, which use kevent with about 5000 requests per second with 8000 concurent connections between above machines (although it is possible that epoll has high rate too, but both ApacheBench and httperf as clients work much slower, as one can see above).

I want to thank Johann Borck for his time spent on debugging and testing kevents.

As unrelated to kevent or epoll note I want to say, that both graphs can be easily interpolated as reverse exponential or, which is likely, something like const/f(x), where f(x) is some function on number of simultaneous connections.
It does not look like it scales too good actually, but it can be also a client problem, which Johann noticed.

/devel/kevent :: Link / Comments ()