Hi,

Yes, I am pretty sure that the JDK does not currently have epoll support -
there is no Sun JDK for the 2.6 kernel specifically.

However, I understand that JDK 1.7 is going to introduce AIO support -
which doesn't help us right now unfortunately! Given that Solaris has very
good AIO support I can't understand why Sun haven't done this sooner.

In our testing on RHEL 3, on a 4 way dual-core opteron box, we have found
that the BEA JRockit performance (measured in throughput) is about 5-10%
faster than the Sun JVM, including the latest JDK 1.6 beta. I am guessing
that their NIO implementation is a bit better than the one in the Sun JVM
since our test doesn't really exercise much else.

Robert


                                                                                
                                                       
                      "Vinod Panicker"                                          
                                                       
                      <[EMAIL PROTECTED]        To:       
[email protected]                                                 
                      m>                       cc:                              
                                                       
                                               Subject:  Re: Performance in 
MINA                                                       
                      27/02/2006 18:11                                          
                                                       
                      Please respond to                                         
                                                       
                      mina-dev                                                  
                                                       
                                                                                
                                                       
                                                                                
                                                       




Hi Robert,

On 2/27/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]>
wrote:
> Hi,
>
> This is maybe a suitable thread for me to discuss some of the performance
> analysis that I've just started doing.

<snip/>

> I have also implemented an "AIOSocketIoProcessor" using the IBM
alphaworks
> aio package (which is not open source but useful nonetheless to determine
> whether it is worth building an AIO library). Even using the naive
> threadpool that comes by default with the IBM library, latency was
improved
> significantly on win32. I was going to do further testing with the IBM
AIO
> library but unfortunately it doesn't support the linux version we run on
> our larger boxes (RHEL 3). Does anyone know of any other AIO libraries
for
> Java?

Seems like the IBM aio4j is the only true aio library out there.
Really unfortunate that they dont have an open source license for that
inspite of many repeated requests.  My personal findings with java nio
are that there is significant room for improvement.  The current nio
implementation is a cpu hog, even when it gets to a huge number (over
10K) of idle connections.  I dont think they have implemented epoll
support as yet in the jdk - something that blackdown had done with
theirs.

Also the aio4j library doesn't support SSL/TLS :(

An open source aio implementation is something that is begging to be
done, and is on my long term agenda.

> Minimising Copying:
>
> One of the operations our servers do is take in data and retransmit it
> unmodified to a number of subscribers as quickly as possible. Therefore
> minimising copying of data is important for us.

zero data copy is the holy grail for network servers.  It would be
great if we can minimize all the data copies that are happening.
Would increase performance by many a magnitude.  Would be eagerly
waiting for your proposed changes.

<snip/>

> We are going to be doing performance testing with larger numbers of
> connections (e.g. 500) later this month and I will report on my findings.

I'm looking at testing for much higher numbers (100K+), but
unfortunately its always been put on the back burner.  Someday!

Regards,
Vinod.





This communication is for informational purposes only. It is not intended
as an offer or solicitation for the purchase or sale of any financial
instrument or as an official confirmation of any transaction. All market prices,
data and other information are not warranted as to completeness or accuracy and
are subject to change without notice. Any comments or statements made herein 
do not necessarily reflect those of JPMorgan Chase & Co., its subsidiaries 
and affiliates.

Reply via email to