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

   > When all clauses return DefaultBulkScorer, the bulk windowing and replay 
logic adds overhead while preventing effective use of minCompetitiveScore and 
block-max optimizations
   
   It's true that the windowing+replay logic isn't free but I remember that it 
was still better than using a `Scorer` which had to keep reordering a heap on 
every document. As far as block-max optimizations are concerned, 
`DisjunctionBulkMaxScorer` tracks the min competitive score and passes it to 
its sub clauses whenever scoring a window 
(https://github.com/apache/lucene/blob/7ebdb9316e5ccd6940c195f60df9e08f0d3a178a/lucene/core/src/java/org/apache/lucene/search/DisjunctionMaxBulkScorer.java#L81),
 so this should work fine.
   
   Let's benchmark this change with luceneutil and our dismax tasks 
(https://github.com/mikemccand/luceneutil/blob/main/tasks/wikinightly.tasks#L257-L276)?
 `DisMaxTerm` in particular should be a good task since `TermQuery` doesn't 
have a bulk scorer. I haven't played with this for a while, it's possible that 
bulk scoring isn't helping anymore.


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to