lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul Elschot (JIRA)" <j...@apache.org>
Subject [jira] Updated: (LUCENE-365) [PATCH] Performance improvement to DisjunctionSumScorer
Date Tue, 17 Oct 2006 22:23:37 GMT
     [ http://issues.apache.org/jira/browse/LUCENE-365?page=all ]

Paul Elschot updated LUCENE-365:
--------------------------------

    Attachment: DisjunctionSumScorer20061017.patch

This patch obsoletes DisjunctionSumScorer and ScorerDocQueue as attached earlier.
All tests pass here.

TestDisjunctionPerf1 and BooleanScorerBtree are for performance testing only.
BooleanScorerBtree could be faster then this version of DisjunctionSumScorer
for a relatively small number of subscorers.
I did not include these in the patch because TestDisjunctionPerf1 depends on
older versions of BooleanScorer with local names.

Regards,
Paul Elschot

> [PATCH] Performance improvement to DisjunctionSumScorer
> -------------------------------------------------------
>
>                 Key: LUCENE-365
>                 URL: http://issues.apache.org/jira/browse/LUCENE-365
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Search
>    Affects Versions: CVS Nightly - Specify date in submission
>         Environment: Operating System: other
> Platform: Other
>            Reporter: Paul Elschot
>         Assigned To: Lucene Developers
>         Attachments: BooleanScorerBtree.java, DisjunctionSumScorer.java, DisjunctionSumScorer20061017.patch,
ScorerDocQueue.java, TestDisjunctionPerf1.java
>
>
> 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: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org


Mime
View raw message