Indeed - I just ran the FileReaderTest on a Linux tmpfs ramdisk - with
SeparateFile all 4 of my cores are immediately pinned and remain so.
With ChannelFile, all 4 cores hover 20-30%.

It would appear it may not be a good idea to use NIOFSDirectory on ramdisks.

Even still though - it looks like you have a further issue - your Lucene
2.9 old-api results don't use it, and are still not good.

-- 
- Mark

http://www.lucidimagination.com


Uwe Schindler wrote:
> Maybe Linux has some problems with NIO on tmpfs/other ramdisks. What Linux
> do you use, 64bit or 32bit JVM and kernel, ram fs type?
>
> If you have 64 bit and you stored your index in Linux tmpfs (not the old RAM
> fs), the fastest would be MMapDirectory, as the tmpfs RAM can be directly
> used when mapped into the JVM address space.
>
> -----
> Uwe Schindler
> H.-H.-Meier-Allee 63, D-28213 Bremen
> http://www.thetaphi.de
> eMail: u...@thetaphi.de
>
>   
>> -----Original Message-----
>> From: Mark Miller [mailto:markrmil...@gmail.com]
>> Sent: Tuesday, September 15, 2009 5:30 PM
>> To: java-user@lucene.apache.org
>> Subject: Re: lucene 2.9.0RC4 slower than 2.4.1?
>>
>> Thomas Becker wrote:
>>     
>>> Hey Mark,
>>>
>>> yes. I'm running the app on unix. You see the difference between 2.9 and
>>>       
>> 2.4 here:
>>     
>>> http://ankeschwarzer.de/tmp/graph.jpg
>>>
>>>       
>> Right - I know your measurements showed a difference (and will keep that
>> in mind) - but the profiling results then seem
>> oddly similar.
>>
>>     
>>> 2.4 responds much quicker thus increasing throughput severly. I'm having
>>>       
>> a
>>     
>>> single segment only:
>>>
>>> -rw-r--r-- 1 asuser asgroup         20 Sep  9 16:40 segments.gen
>>> -rw-r--r-- 1 asuser asgroup        294 Sep  9 16:44 segments_1o
>>> -rw-r--r-- 1 asuser asgroup 2810603184 Sep  9 16:44 _7c.cfs
>>>
>>> The FileChannel.read hotspot is indeed strange. Especially if taking
>>>       
>> into
>>     
>>> account that the index is lying on a tmpfs (in memory). And 2.4 should
>>>       
>> be using
>>     
>>> NIOFSDirectory as well?! Will check that.
>>>
>>>       
>> 2.4 did not use NIOFSDirectory by default - you would have had to
>> manually specified it. Now its used by default if its detects a non
>> Windows OS.
>>
>> Any particular reason your profiling output does not show invocations?
>> Its not essential most likely, but I've found it to be helpful in
>> comparisons.
>>
>> We are about to release 2.9, and its been such a long haul, I'd hate to
>> see a release with an unknown performance trap.
>>
>> --
>> - Mark
>>
>> http://www.lucidimagination.com
>>
>>
>>     
>>> Thanks a lot for your support!
>>>
>>> Cheers,
>>> Thomas
>>>
>>> Mark Miller wrote:
>>>
>>>       
>>>> A few quick notes -
>>>>
>>>> Lucene 2.9 old api doesn't appear much worse than Lucene 2.4?
>>>>
>>>> You save a lot with the new Intern impl, because thats not a hotspot
>>>> anymore. But then,
>>>> RandomAccessFile seeks end up being a lot more of the pie. They look
>>>> fairly similar in speed overall?
>>>>
>>>> It looks like the major bottleneck with 2.9 new api is that its using
>>>> NIOFSDirectory (your on unix I guess, and it now
>>>> defaults to that on non Windows os's), and that appears to be a real
>>>> killer for you. Its taking half the time for its
>>>> reads.  ???
>>>>
>>>> No conclusions yet, but I'm looking it over. Some other guys will come
>>>> in with some ideas as well.
>>>>
>>>> Do confirm that those profiling results are on a single segment though.
>>>>
>>>> - Mark
>>>>
>>>>
>>>> Mark Miller wrote:
>>>>
>>>>         
>>>>> Thomas Becker wrote:
>>>>>
>>>>>
>>>>>           
>>>>>> Here's the results of profiling 10 different search requests:
>>>>>>
>>>>>> http://ankeschwarzer.de/tmp/lucene_24_oldapi.png
>>>>>> http://ankeschwarzer.de/tmp/lucene_29_oldapi.png
>>>>>> http://ankeschwarzer.de/tmp/lucene_29_newapi.png
>>>>>>
>>>>>> But you already gave me a good hint. The index being used is an old
>>>>>>             
>> one build
>>     
>>>>>> with lucene 2.4. I will now try a freshly build 2.9 index and see if
>>>>>>             
>> performance
>>     
>>>>>> improves. Maybe that already solves the issue...stupid me...
>>>>>>
>>>>>>
>>>>>>
>>>>>>             
>>>>> That shouldn't be an issue unless there is some odd bug.
>>>>>
>>>>>
>>>>>
>>>>>           
>>>>>> We're updating the index every 30 min. at the moment and it gets
>>>>>>             
>> optimized after
>>     
>>>>>> each update.
>>>>>>
>>>>>>
>>>>>>
>>>>>>             
>>>>> So this profiling is on an optimized index (eg a single segment) ?
>>>>> That would be odd indeed, and possibly point to some of the scoring
>>>>>           
>> changes.
>>     
>>>>>
>>>>>           
>>>>>> Mark Miller wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>             
>>>>>>> Thomas Becker wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>               
>>>>>>>> Hey Mark,
>>>>>>>>
>>>>>>>> thanks for your reply. Will do. Results will follow in a couple of
>>>>>>>>                 
>> minutes.
>>     
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>                 
>>>>>>> Thanks, awesome.
>>>>>>>
>>>>>>> Also, how many segments (approx) are in your index? If there are a
>>>>>>>               
>> lot,
>>     
>>>>>>> have you/can you try the same tests on an optimized index? Don't
>>>>>>>               
>> want to
>>     
>>>>>>> get ahead of the profiling results, but just to continue the info
>>>>>>>               
>> loop.
>>     
>>>>>>>
>>>>>>>
>>>>>>>               
>>>>>>
>>>>>>             
>>>>>           
>>>       
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
>> For additional commands, e-mail: java-user-h...@lucene.apache.org
>>     
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
> For additional commands, e-mail: java-user-h...@lucene.apache.org
>
>   





---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-user-h...@lucene.apache.org

Reply via email to