directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alessandro Torrisi <alessandro.torr...@eurone.it>
Subject Re: [mina] JDJ Reader's Awards
Date Thu, 19 Jan 2006 18:31:17 GMT
Excuse me I didn't understand...

> Using java.nio: 0
> Combine Unified I/O with java.nio: 844

this means Java IO is much more performant than UIO ?
And what is the impact with Mina ?

Let me knwo about this, thx very much
Alex



On 19/gen/06, at 18:22, Kaspar Luethi wrote:

> hi trustin
>
> i hope you were successful finding a new job.
>
>> https://uio.dev.java.net/
>>  It claims that it performs much better than plain java.io and  
>> java.nio file
>> I/O class libraries.  But there's no much information on  
>> implementation
>> details we could learn from the author.  Anyone who knows about UIO?
>
> no, but i just had a little look at it.
> wouldn't it be silly to claim a better performance than pure nio?  
> it seemed
> to me, so i looked in the perfomance-test code for flaws.
>
> after a small change i get different results:
>
> running IOTest.java:
> (...)
> Using java.nio: 0
> Combine Unified I/O with java.nio: 844
>
> :)
>
>
> it looks unfair, the nio-only test has to recreate its bytebuffer  
> every time
>
>         for(int i = 0; i < 100; i++) {
>             byteBuffer.clear();
>             for(int j = 0; j < intArray.length; j++) {
>                 byteBuffer.putInt(intArray[j]);
>             }
>             channel.write(byteBuffer);
>         }
>
> so i changed it to
>
>         byteBuffer.clear();
>         for(int j = 0; j < intArray.length; j++) {
>             byteBuffer.putInt(intArray[j]);
>         }
>
>         for(int i = 0; i < 100; i++) {
>         	channel.write(byteBuffer);
>         }
>
> (when sending to different channels, we would have used the famous
> byteBuffer.duplicate() here, using it takes 16ms instead 0ms  in  
> this test.
> so there is some cost in duplicate() but much less than copying).
>
> i might have missed some of the authors intentions here, but in
> "writeComby()" he doesn't perform an action similar to the int copying
> in writeNio(). "RandomAccessRO.readFully()" in "writeComby()" uses
> System.arraycopy.
>
> the library itself looks like to be designed for fileIO and specially
> image file access. but the performance claim looks pretty broken.
>
> kaspar
>


Mime
View raw message