jpountz opened a new pull request, #14023:
URL: https://github.com/apache/lucene/pull/14023

   This implements a small contained hack to make sure that our compound 
scorers like `MaxScoreBulkScorer`, `ConjunctionBulkScorer`, 
`BlockMaxConjunctionBulkScorer`, `WANDScorer` and `ConjunctionDISI` only have 
two concrete implementations of `DocIdSetIterator` and `Scorable` to deal with.
   
   This helps because it makes calls to `DocIdSetIterator#nextDoc()`, 
`DocIdSetIterator#advance(int)` and `Scorable#score()` bimorphic at most, and 
bimorphic calls are candidate for inlining.
   
   This should help speed up boolean queries of term queries at the expense of 
boolean queries of other query types. This feels fair to me as it gives more 
speedups than slowdowns in benchmarks, and that boolean queries of term queries 
are extremely typical. Boolean queries that mix term queries and other types of 
queries may get a slowdown or a speedup depending on whether they get more from 
the speedup on their term clauses than they lose on their other clauses.


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