lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tomer Gabel <>
Subject Re: IndexSearcher and multi-threaded performance
Date Wed, 19 Nov 2008 18:15:14 GMT

It's more than possible, it's probable. Cache thrashing would definitely be
my first guess; with so many copies of the exact same data you're not only
missing out on significant gains with the L2 cache, you're also taking a
major hit with every cache miss (which probably happens every context
switch) and the access to main memory.

Increased paging due to the increased memory pressure might also explain
some of the discrepancy.

Michael McCandless-2 wrote:
> Good!
> In fact now we see similar slowness with nio-thread vs nio-shared as  
> we see for RAM-thread vs RAM-shared.  Ie, for both RAM and NIO you get  
> better performance sharing a single reader than reader-per-thread.   
> This is odd -- I would have expected that with infinite RAM reader-per- 
> thread would always be as fast or faster than a shared reader.  It's  
> particularly interesting that the RAM case shows it worse than the NIO  
> case.
> Maybe it's because in the reader-per-thread case the CPU's cache is  
> less effective since things like norms & deleted docs are now  
> replicated in memory?
> Mike

-- Tomer Gabel 

View this message in context:
Sent from the Lucene - Java Users mailing list archive at

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message