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/03/02 18:57:32 UTC

[GitHub] [druid] jihoonson opened a new pull request #10936: Migrate bitmap benchmarks to JMH

jihoonson opened a new pull request #10936:
URL: https://github.com/apache/druid/pull/10936


   ### Description
   
   Bitmap operation benchmarks are currently written using JUnit. This PR rewrites them using JMH. Also added a new benchmark, `BitmapBenchmarkWithVaryingOrder`, to see if the bitmap order impacts on performance.
   
   <hr>
   
   This PR has:
   - [x] been self-reviewed.
      - [ ] using the [concurrency checklist](https://github.com/apache/druid/blob/master/dev/code-review/concurrency.md) (Remove this item if the PR doesn't have any relation to concurrency.)
   - [ ] added documentation for new or modified features or behaviors.
   - [ ] added Javadocs for most classes and all non-trivial methods. Linked related entities via Javadoc links.
   - [ ] added or updated version, license, or notice information in [licenses.yaml](https://github.com/apache/druid/blob/master/licenses.yaml)
   - [ ] added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
   - [ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold for [code coverage](https://github.com/apache/druid/blob/master/dev/code-review/code-coverage.md) is met.
   - [ ] added integration tests.
   - [ ] been tested in a test Druid cluster.


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

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


[GitHub] [druid] jihoonson edited a comment on pull request #10936: Migrate bitmap benchmarks to JMH

Posted by GitBox <gi...@apache.org>.
jihoonson edited a comment on pull request #10936:
URL: https://github.com/apache/druid/pull/10936#issuecomment-789471850


   Sharing results of the new benchmarks for people who might be interested. 
   
   ```
   Benchmark                            (bitmapLength)  (density)  (minIntersect)  (numBitmaps)   (type)  Mode  Cnt   Score    Error  Units
   UniformBitmapBenchmark.intersection          500000       0.01              50         10000  concise  avgt   10  52.272 ± 13.441   s/op
   UniformBitmapBenchmark.intersection          500000       0.01              50         10000  roaring  avgt   10   0.471 ±  0.004   s/op
   UniformBitmapBenchmark.union                 500000       0.01              50         10000  concise  avgt   10  14.196 ±  2.273   s/op
   UniformBitmapBenchmark.union                 500000       0.01              50         10000  roaring  avgt   10   0.082 ±  0.001   s/op
   ```
   
   ```
   Benchmark                              (bitmapLength)  (density)  (minIntersect)  (numBitmaps)   (type)  Mode  Cnt   Score    Error  Units
   RangeBitmapBenchmarkTest.intersection          500000      0.001              50         10000  concise  avgt   10  55.939 ± 12.144   s/op
   RangeBitmapBenchmarkTest.intersection          500000      0.001              50         10000  roaring  avgt   10   0.066 ±  0.001   s/op
   RangeBitmapBenchmarkTest.union                 500000      0.001              50         10000  concise  avgt   10   1.010 ±  0.013   s/op
   RangeBitmapBenchmarkTest.union                 500000      0.001              50         10000  roaring  avgt   10   0.056 ±  0.001   s/op
   ```
   
   ```
   Benchmark                                            (bitmapLength)  (minIntersect)  (numBitmaps)   (type)  Mode  Cnt     Score     Error  Units
   BitmapBenchmarkWithVaryingOrder.intersection                 500000              50         10000  roaring  avgt   10    87.798 ±   0.181  ms/op
   BitmapBenchmarkWithVaryingOrder.intersection                 500000              50         10000  concise  avgt   10  3705.541 ± 130.906  ms/op
   BitmapBenchmarkWithVaryingOrder.intersectionReverse          500000              50         10000  roaring  avgt   10    83.108 ±   0.213  ms/op
   BitmapBenchmarkWithVaryingOrder.intersectionReverse          500000              50         10000  concise  avgt   10  3900.905 ± 127.049  ms/op
   BitmapBenchmarkWithVaryingOrder.union                        500000              50         10000  roaring  avgt   10     8.992 ±   0.114  ms/op
   BitmapBenchmarkWithVaryingOrder.union                        500000              50         10000  concise  avgt   10  2079.946 ±  43.865  ms/op
   BitmapBenchmarkWithVaryingOrder.unionReverse                 500000              50         10000  roaring  avgt   10     9.974 ±   0.251  ms/op
   BitmapBenchmarkWithVaryingOrder.unionReverse                 500000              50         10000  concise  avgt   10  1943.105 ±  19.893  ms/op
   ```


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

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


[GitHub] [druid] jihoonson commented on pull request #10936: Migrate bitmap benchmarks to JMH

Posted by GitBox <gi...@apache.org>.
jihoonson commented on pull request #10936:
URL: https://github.com/apache/druid/pull/10936#issuecomment-789471850


   Sharing results of the new benchmarks for people who might be interested. 
   
   ```
   Benchmark                            (bitmapLength)  (density)  (minIntersect)  (numBitmaps)   (type)  Mode  Cnt   Score    Error  Units
   UniformBitmapBenchmark.intersection          500000       0.01              50         10000  concise  avgt   10  52.272 ± 13.441   s/op
   UniformBitmapBenchmark.intersection          500000       0.01              50         10000  roaring  avgt   10   0.471 ±  0.004   s/op
   UniformBitmapBenchmark.union                 500000       0.01              50         10000  concise  avgt   10  14.196 ±  2.273   s/op
   UniformBitmapBenchmark.union                 500000       0.01              50         10000  roaring  avgt   10   0.082 ±  0.001   s/op
   ```
   
   ```
   Benchmark                              (bitmapLength)  (density)  (minIntersect)  (numBitmaps)   (type)  Mode  Cnt   Score    Error  Units
   RangeBitmapBenchmarkTest.intersection          500000      0.001              50         10000  concise  avgt   10  55.939 ± 12.144   s/op
   RangeBitmapBenchmarkTest.intersection          500000      0.001              50         10000  roaring  avgt   10   0.066 ±  0.001   s/op
   RangeBitmapBenchmarkTest.union                 500000      0.001              50         10000  concise  avgt   10   1.010 ±  0.013   s/op
   RangeBitmapBenchmarkTest.union                 500000      0.001              50         10000  roaring  avgt   10   0.056 ±  0.001   s/op
   ```
   
   ```
   Benchmark                                            (bitmapLength)  (minIntersect)  (numBitmaps)   (type)  Mode  Cnt   Score   Error  Units
   BitmapBenchmarkWithVaryingOrder.intersection                 500000              50         10000  roaring  avgt   10  83.929 ± 0.214  ms/op
   BitmapBenchmarkWithVaryingOrder.intersectionReverse          500000              50         10000  roaring  avgt   10  84.921 ± 0.155  ms/op
   BitmapBenchmarkWithVaryingOrder.union                        500000              50         10000  roaring  avgt   10   9.616 ± 0.228  ms/op
   BitmapBenchmarkWithVaryingOrder.unionReverse                 500000              50         10000  roaring  avgt   10   9.149 ± 0.227  ms/op
   ```


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

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


[GitHub] [druid] jihoonson merged pull request #10936: Migrate bitmap benchmarks to JMH

Posted by GitBox <gi...@apache.org>.
jihoonson merged pull request #10936:
URL: https://github.com/apache/druid/pull/10936


   


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

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