Csaba Endre Simon a écrit :

Hi Emmanuel,

Hi Csaba,


I'm a little bit puzzled but some of the results I get. First of all, we are
using MINA-1.0.1, with different JVM (JRockit, IBM, Sun) on different
platforms (Linux, Mac OSx).


The published results are on Linux? What kernel are you using?

It's on MacOSx (intel). It's BSD based. I have also tested it on Fedora Core 5, and on a Suse (2.6.18.2-34-xen #1 SMP, 8 CPU, 64 bits)


I also made some tests with MINA and on the *same* hardware with
*different* Operating Systems I got different results. Tested on Linux
kernel 2.4, Linux kernel 2.6 and Solaris. My server responds with a
lot of small packet to the client request. This approach on kernel 2.6
seems that is 4.5X slower than on kernel 2.4 or Solaris. Traced with
strace it seems that the kernels is descheduling  my server
application: the same sized packet sometimes takes a *lot* more time
to send (time spent in system call "write") then normal.

This 4.5X seems like a constant :-) Does not mater if the application
is in C or C++ or Java using MINA. The only way to overcome the 2.6
kernel bad behavior is to buffer all the small packets and send it
onces.

The packet size is not big in my case (no more than 1 kb), and they are sent in one shot (no scattering). The received packets are even smaller (less than 100 bytes).

Thanks,
Emmanuel

Reply via email to