lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yonik Seeley (JIRA)" <>
Subject [jira] Commented: (LUCENE-365) [PATCH] Performance improvement to DisjunctionSumScorer
Date Thu, 06 Apr 2006 02:27:52 GMT
    [ ] 

Yonik Seeley commented on LUCENE-365:

Nice Paul!

I was just doing some performance work in the last week and noticed that DisjunctionSumScorer
was taking up a fair amount of time (the queries consisted of a very large number of disjunctions).
 I had planned on making a specialized heap for Scorers once I reviewed the code (until I
ran across this bug).

I'm personally only committing bug fixes for Lucene 2.0, but after that, I'll commit this.

> [PATCH] Performance improvement to DisjunctionSumScorer
> -------------------------------------------------------
>          Key: LUCENE-365
>          URL:
>      Project: Lucene - Java
>         Type: Bug

>   Components: Search
>     Versions: CVS Nightly - Specify date in submission
>  Environment: Operating System: other
> Platform: Other
>     Reporter: paul.elschot
>     Assignee: Lucene Developers
>  Attachments:,,,
> A recent profile of the new BooleanScorer2 showed that 
> quite a bit of CPU time is spent in the advanceAfterCurrent method 
> of DisjunctionScorer, and in the PriorityQueue of scorers that 
> is used there. 
> This patch reduces the internal overhead of DisjunctionScorer 
> to about 70% of the current one (ie. 30% saving in cpu time). 
> It also reduces the number of calls to the subscorers, but 
> that was not measured. 
> To get this, it was necessary to specialize the PriorityQueue 
> for a Scorer and to add move some code fragments from DisjunctionScorer 
> to this specialized queue.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

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

View raw message