neoremind commented on PR #16145:
URL: https://github.com/apache/lucene/pull/16145#issuecomment-5806937284

   Thanks @goankur ! Your real workload finding matches what I saw above with 
microbenchmarks across on hot/mixed/cold workload. The backoff counter is two 
sides of the same coin: it's great when data is hot, and roughly a no-op when 
reads are mostly cold, but it is harmful right at the middle ground of 
mix-warm-cold memory pressure case, which is where your realworld bench goes. 
   
   One small thing, did you run #16279 locally to get the 3.394 ops/ms (backoff 
disabled) vs 3.389 (enabled) numbers since I couldn't find them in the PR. 
Actually, #16279 doesn't vet the backoff on/off, it only compares I/O 
strategies of mmap, pread, nio, and direct I/O. But anyway, I think the numbers 
you cited or got align with my above finding, see **"2. When most reads are 
cold, the backoff doesn't matter"**: NVMe T1 at backoff (current impl.) 2.69 vs 
always-prefetch (this PR) 2.91 ops/ms, EBS T1 at 1.35 vs 1.34 ops/ms, no 
difference backoff on/off on cold scenario since every miss resets the counter. 
Your real workload with a partially cached index matches the finding in **"3. 
At the mixed-warm-cold scenario, the backoff suppresses the prefetch it needs 
most"**.


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