lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 33019] - [PATCH] BooleanScorer can score documents in non increasing order
Date Tue, 29 Mar 2005 21:30:28 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=33019>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=33019





------- Additional Comments From paul.elschot@xs4all.nl  2005-03-29 23:30 -------
Created an attachment (id=14589)
 --> (http://issues.apache.org/bugzilla/attachment.cgi?id=14589&action=view)
BooleanScorer1.java

This is an alternative to BooleanScorer that uses buckets for speed.
Here an extra array of indexes into the bucket array is used instead
of a linked list over the buckets.

The indexes in this extra array consist of the low bits of the document
numbers in the current range. This can be sorted by a simple call to
Arrays.sort() by allowSkipTo().
Doing such sorting retrieves the docs in order and allows
skipTo on BooleanScorer1, but it also doubles the overhead time of
BooleanScorer1.

To my suprise BooleanScorer1 without skipTo() takes 85%-98% of the time
required by the current BooleanScorer in test cases of
TestDisjunctionPerf1.java. In other words,
BooleanScorer1 is a bit faster than the current BooleanScorer on disjunctions.
The only cause	I can think of for the performance improvement is better
use of L2/L1 cache.

To keep things from getting simple, the current performance order of the
various boolean scorers on disjunctions is:

1. BooleanScorer1 without skipTo()
2. BooleanScorer without skipTo()
3. DisjunctionScorer
4. BooleanScorer1 with skipTo()
5. BooleanScorer (as posted on 26 March) with skipTo()

So I would propose that BooleanScorer1 replaces the current BooleanScorer.
I used a new name BooleanScorer1 because it is a rather drastic change
to BooleanScorer and I'd like to see some verification before the replacement.

Regards,
Paul Elschot


-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
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