You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Paul Elschot (JIRA)" <ji...@apache.org> on 2009/05/10 20:46:45 UTC

[jira] Commented: (LUCENE-1632) boolean docid set iterator improvement

    [ https://issues.apache.org/jira/browse/LUCENE-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12707827#action_12707827 ] 

Paul Elschot commented on LUCENE-1632:
--------------------------------------

The real performance improvement here is in the disjunctions, is that correct?
In that case the patch for performance could be simplified by only inlining the heap in ScorerDocQueue
in a similar way as in the patch here. ScorerDocQueue might even disappear completely.

However by concentrating on disjunctions only, one would loose for example AndDocIdSetIterator
from the patch, which might be useful as a superclass (or attribute) of all current Scorers that
perform conjunctions. Actually this is (yet) another issue.

For the longer class names DISI might be preferable over DocIdSetIterator as a name component.

> boolean docid set iterator improvement
> --------------------------------------
>
>                 Key: LUCENE-1632
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1632
>             Project: Lucene - Java
>          Issue Type: Improvement
>    Affects Versions: 2.4
>            Reporter: John Wang
>         Attachments: Lucene-1632-patch.txt
>
>
> This was first brought up in Lucene-1345. But Lucene-1345 conversation has digressed. As per suggested, creating a separate issue to track.
> Added perf comparisons with boolean set iterators with current scorers
> See patch
> System: Ubunto, 
> java version "1.6.0_11"
> Intel core2 Duo 2.44ghz
> new milliseconds=470
> new milliseconds=534
> new milliseconds=450
> new milliseconds=443
> new milliseconds=444
> new milliseconds=445
> new milliseconds=449
> new milliseconds=441
> new milliseconds=444
> new milliseconds=445
> new total milliseconds=4565
> old milliseconds=529
> old milliseconds=491
> old milliseconds=428
> old milliseconds=549
> old milliseconds=427
> old milliseconds=424
> old milliseconds=420
> old milliseconds=424
> old milliseconds=423
> old milliseconds=422
> old total milliseconds=4537
> New/Old Time 4565/4537 (100.61715%)
> OrDocIdSetIterator milliseconds=1138
> OrDocIdSetIterator milliseconds=1106
> OrDocIdSetIterator milliseconds=1065
> OrDocIdSetIterator milliseconds=1066
> OrDocIdSetIterator milliseconds=1065
> OrDocIdSetIterator milliseconds=1067
> OrDocIdSetIterator milliseconds=1072
> OrDocIdSetIterator milliseconds=1118
> OrDocIdSetIterator milliseconds=1065
> OrDocIdSetIterator milliseconds=1069
> OrDocIdSetIterator total milliseconds=10831
> DisjunctionMaxScorer milliseconds=1914
> DisjunctionMaxScorer milliseconds=1981
> DisjunctionMaxScorer milliseconds=1861
> DisjunctionMaxScorer milliseconds=1893
> DisjunctionMaxScorer milliseconds=1886
> DisjunctionMaxScorer milliseconds=1885
> DisjunctionMaxScorer milliseconds=1887
> DisjunctionMaxScorer milliseconds=1889
> DisjunctionMaxScorer milliseconds=1891
> DisjunctionMaxScorer milliseconds=1888
> DisjunctionMaxScorer total milliseconds=18975
> Or/DisjunctionMax Time 10831/18975 (57.080368%)
> OrDocIdSetIterator milliseconds=1079
> OrDocIdSetIterator milliseconds=1075
> OrDocIdSetIterator milliseconds=1076
> OrDocIdSetIterator milliseconds=1093
> OrDocIdSetIterator milliseconds=1077
> OrDocIdSetIterator milliseconds=1074
> OrDocIdSetIterator milliseconds=1078
> OrDocIdSetIterator milliseconds=1075
> OrDocIdSetIterator milliseconds=1074
> OrDocIdSetIterator milliseconds=1074
> OrDocIdSetIterator total milliseconds=10775
> DisjunctionSumScorer milliseconds=1398
> DisjunctionSumScorer milliseconds=1322
> DisjunctionSumScorer milliseconds=1320
> DisjunctionSumScorer milliseconds=1305
> DisjunctionSumScorer milliseconds=1304
> DisjunctionSumScorer milliseconds=1301
> DisjunctionSumScorer milliseconds=1304
> DisjunctionSumScorer milliseconds=1300
> DisjunctionSumScorer milliseconds=1301
> DisjunctionSumScorer milliseconds=1317
> DisjunctionSumScorer total milliseconds=13172
> Or/DisjunctionSum Time 10775/13172 (81.80231%)
> AndDocIdSetIterator milliseconds=330
> AndDocIdSetIterator milliseconds=336
> AndDocIdSetIterator milliseconds=298
> AndDocIdSetIterator milliseconds=299
> AndDocIdSetIterator milliseconds=310
> AndDocIdSetIterator milliseconds=298
> AndDocIdSetIterator milliseconds=298
> AndDocIdSetIterator milliseconds=334
> AndDocIdSetIterator milliseconds=298
> AndDocIdSetIterator milliseconds=299
> AndDocIdSetIterator total milliseconds=3100
> ConjunctionScorer milliseconds=332
> ConjunctionScorer milliseconds=307
> ConjunctionScorer milliseconds=302
> ConjunctionScorer milliseconds=350
> ConjunctionScorer milliseconds=300
> ConjunctionScorer milliseconds=304
> ConjunctionScorer milliseconds=305
> ConjunctionScorer milliseconds=303
> ConjunctionScorer milliseconds=303
> ConjunctionScorer milliseconds=299
> ConjunctionScorer total milliseconds=3105
> And/Conjunction Time 3100/3105 (99.83897%)
> main contributors to the patch: Anmol Bhasin & Yasuhiro Matsuda

-- 
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: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org