goankur commented on PR #16145: URL: https://github.com/apache/lucene/pull/16145#issuecomment-6376381113
@michaeljmarshall Your numbers match mine: hot `prefetchOnly` at 1 thread was -20% with SKIP = 64 on my G6 instance ([JMH table](https://github.com/apache/lucene/pull/16145#issuecomment-6083852932)). When I preferred a fixed 64 over the 16 -> 256 schedule ([comparison](https://github.com/apache/lucene/pull/16145#issuecomment-5985452697)), it was because the schedule starts at a gap of 16 and keeps a small ramp, not because of its 256 cap. In the same runs the schedule was ~0.3 ms better on rerank p99 under memory pressure. So I have nothing that separates 64 from 128 or 256. On real workloads the sampling cost is too small to see. Start-confident at 64 was within noise on hot luceneutil ([0 query types slower](https://github.com/apache/lucene/pull/16145#issuecomment-6083852932), [1 slower](https://github.com/apache/lucene/pull/16145#issuecomment-6227383866)). The hot rerank does ~500 candidates per query at ~4.14 ms p50 ([rerank numbers](https://github.com/apache/lucene/pull/16145#issuecomment-5985452697)), so +49 ns per prefetch adds about 25 microseconds. A smaller SKIP shortens the blind window when a mostly cached file starts getting evicted, but none of our benchmarks exercise that transition. So I'd go with 128 as a middle ground but 256 is fine with me too. -- 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]
