jpountz commented on PR #14910:
URL: https://github.com/apache/lucene/pull/14910#issuecomment-3059176116

   This is very cool and the speedup makes sense to me. When dynamic pruning is 
enabled, only queries whose leading clauses are dense benefit significantly 
from this speedup (`OrStopWords` and `AndStopWords`). But if you evaluated 
exhaustive evaluation, I'm sure we'd be seeing a bigger speedup on all 
disjunctive queries that have one dense postings list or more.
   
   Like for #14896, I'd like to split this PR in two: one where we merge your 
scalar improvements, and then this one where we add support for vectorization. 
By the way, we may want to look into other approaches for the scalar case. 
Since we only use bit sets in postings when many bits would be set, a linear 
scan should perform quite efficiently? (`foreach (bit in 0..n) { if 
bitSet.get(bit) out.append(bit); }`) I imagine that you used a micro benchmark 
to come up with your manual unrolling, let's include this micro benchmark in 
the PR?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to