You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@druid.apache.org by GitBox <gi...@apache.org> on 2021/08/20 20:09:16 UTC
[GitHub] [druid] capistrant commented on pull request #11257: Reduce method invocation of reservoir sampling
capistrant commented on pull request #11257:
URL: https://github.com/apache/druid/pull/11257#issuecomment-902929050
> > It would be useful to add a benchmark for this code if possible to show the difference of the new implementation, maybe here: https://github.com/apache/druid/tree/master/benchmarks/src/test/java/org/apache/druid/server/coordinator
>
> Here's the benchmark data(or see [JMH result graph](https://jmh.morethan.io/?gist=577d9e192ca1f191309a82520d1d50e6))
>
> ```
> Benchmark (maxSegmentsToMove) (mode) (numberOfSegments) Mode Cnt Score Error Units
> BalancerStrategyBenchmark.pickSegmentsToMove 10 default 10000 avgt 10 2.402 ± 0.019 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 10 default 100000 avgt 10 41.890 ± 2.326 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 10 default 1000000 avgt 10 620.377 ± 14.541 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 10 50percentOfSegmentsToConsiderPerMove 10000 avgt 10 1.475 ± 0.008 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 10 50percentOfSegmentsToConsiderPerMove 100000 avgt 10 15.383 ± 0.342 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 10 50percentOfSegmentsToConsiderPerMove 1000000 avgt 10 310.409 ± 18.073 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 10 useBatchedSegmentSampler 10000 avgt 10 0.234 ± 0.003 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 10 useBatchedSegmentSampler 100000 avgt 10 3.944 ± 0.199 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 10 useBatchedSegmentSampler 1000000 avgt 10 59.548 ± 2.327 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 default 10000 avgt 10 22.205 ± 0.105 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 default 100000 avgt 10 392.765 ± 23.001 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 default 1000000 avgt 10 5759.416 ± 171.515 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 50percentOfSegmentsToConsiderPerMove 10000 avgt 10 13.925 ± 0.026 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 50percentOfSegmentsToConsiderPerMove 100000 avgt 10 181.052 ± 2.517 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 50percentOfSegmentsToConsiderPerMove 1000000 avgt 10 2900.901 ± 81.967 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 useBatchedSegmentSampler 10000 avgt 10 0.276 ± 0.001 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 useBatchedSegmentSampler 100000 avgt 10 4.330 ± 0.037 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 100 useBatchedSegmentSampler 1000000 avgt 10 56.426 ± 1.235 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 default 10000 avgt 10 222.513 ± 0.559 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 default 100000 avgt 10 4369.863 ± 62.496 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 default 1000000 avgt 10 57107.843 ± 1082.160 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 50percentOfSegmentsToConsiderPerMove 10000 avgt 10 136.567 ± 0.301 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 50percentOfSegmentsToConsiderPerMove 100000 avgt 10 1766.142 ± 12.927 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 50percentOfSegmentsToConsiderPerMove 1000000 avgt 10 28437.935 ± 257.949 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 useBatchedSegmentSampler 10000 avgt 10 0.303 ± 0.002 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 useBatchedSegmentSampler 100000 avgt 10 4.247 ± 0.057 ms/op
> BalancerStrategyBenchmark.pickSegmentsToMove 1000 useBatchedSegmentSampler 1000000 avgt 10 59.161 ± 1.597 ms/op
> ```
wow, awesome benchmark results! So sorry that I didn't participate more in the review of this PR, I hav been pulled away from Druid more than I'd like lately. Regardless, I see that y'all had it more than covered! So excited to start using this 💯
--
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: commits-unsubscribe@druid.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@druid.apache.org
For additional commands, e-mail: commits-help@druid.apache.org