[ 
https://issues.apache.org/jira/browse/LUCENE-753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12550710
 ] 

Michael McCandless commented on LUCENE-753:
-------------------------------------------

OK my results on Win XP now agree with Yonik's.

On UNIX & OS X, ChannelPread is a bit (2-14%) better, but on windows
it's quite a bit (31-34%) slower.

Win Server 2003 R2 Enterprise x64 (Sun Java 1.6):
{code}
config: impl=ClassicFile serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=68094, MB/sec=197.10654095808735

config: impl=ChannelFile serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=72594, MB/sec=184.88818359644048

config: impl=ChannelPread serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=98328, MB/sec=136.5000081360345

config: impl=ChannelTransfer serial=false nThreads=1 iterations=200 
bufsize=1024 filelen=67108864
answer=110480725, ms=201563, MB/sec=66.58847506734867
{code}

Win XP Pro SP2, laptop (Sun Java 1.5):
{code}
config: impl=ClassicFile serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=47449, MB/sec=282.8673481000653

config: impl=ChannelFile serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=54899, MB/sec=244.4811890926975

config: impl=ChannelPread serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=71683, MB/sec=187.237877878995

config: impl=ChannelTransfer serial=false nThreads=1 iterations=200 
bufsize=1024 filelen=67108864
answer=110480725, ms=149475, MB/sec=89.79275999330991
{code}

Linux 2.6.22.1 (Sun Java 1.5):
{code}
config: impl=ClassicFile serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=41162, MB/sec=326.0719304212623

config: impl=ChannelFile serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=53114, MB/sec=252.69745829724744

config: impl=ChannelPread serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=40226, MB/sec=333.65914582608264

config: impl=ChannelTransfer serial=false nThreads=1 iterations=200 
bufsize=1024 filelen=67108864
answer=110480725, ms=59163, MB/sec=226.86092321214272
{code}

Mac OS X 10.4 (Sun Java 1.5):
{code}
config: impl=ClassicFile serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=85894, MB/sec=156.25972477705076

config: impl=ChannelFile serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=109939, MB/sec=122.08381738964336

config: impl=ChannelPread serial=false nThreads=1 iterations=200 bufsize=1024 
filelen=67108864
answer=110480725, ms=75517, MB/sec=177.73180608339845

config: impl=ChannelTransfer serial=false nThreads=1 iterations=200 
bufsize=1024 filelen=67108864
answer=110480725, ms=130156, MB/sec=103.12066136021389
{code}


> Use NIO positional read to avoid synchronization in FSIndexInput
> ----------------------------------------------------------------
>
>                 Key: LUCENE-753
>                 URL: https://issues.apache.org/jira/browse/LUCENE-753
>             Project: Lucene - Java
>          Issue Type: New Feature
>          Components: Store
>            Reporter: Yonik Seeley
>         Attachments: FileReadTest.java, FileReadTest.java, FileReadTest.java, 
> FSIndexInput.patch, FSIndexInput.patch
>
>
> As suggested by Doug, we could use NIO pread to avoid synchronization on the 
> underlying file.
> This could mitigate any MT performance drop caused by reducing the number of 
> files in the index format.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to