korowa commented on PR #8721:
URL: 
https://github.com/apache/arrow-datafusion/pull/8721#issuecomment-1874405534

   Benchmark results are
   ```
   Comparing master and count_distinct_groups_accumulator
   --------------------
   Benchmark clickbench_1.json
   --------------------
   
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
   ┃ Query        ┃     master ┃ count_distinct_groups_accumulator ┃        
Change ┃
   
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
   │ QQuery 0     │     1.96ms │                            2.20ms │  1.12x 
slower │
   │ QQuery 1     │    92.00ms │                           81.50ms │ +1.13x 
faster │
   │ QQuery 2     │   219.23ms │                          223.98ms │     no 
change │
   │ QQuery 3     │   231.46ms │                          231.61ms │     no 
change │
   │ QQuery 4     │  2086.56ms │                         2080.57ms │     no 
change │
   │ QQuery 5     │  3009.78ms │                         2994.23ms │     no 
change │
   │ QQuery 6     │    82.67ms │                           77.54ms │ +1.07x 
faster │
   │ QQuery 7     │    90.44ms │                           89.39ms │     no 
change │
   │ QQuery 8     │  3426.67ms │                         3469.59ms │     no 
change │
   │ QQuery 9     │  4986.15ms │                         1895.55ms │ +2.63x 
faster │
   │ QQuery 10    │   721.45ms │                          718.35ms │     no 
change │
   │ QQuery 11    │   814.72ms │                          797.00ms │     no 
change │
   │ QQuery 12    │  2756.22ms │                         2788.63ms │     no 
change │
   │ QQuery 13    │  5374.68ms │                         5300.41ms │     no 
change │
   │ QQuery 14    │  2990.96ms │                         3018.51ms │     no 
change │
   │ QQuery 15    │  2361.06ms │                         2360.47ms │     no 
change │
   │ QQuery 16    │  6424.18ms │                         6294.30ms │     no 
change │
   │ QQuery 17    │  6082.96ms │                         5977.81ms │     no 
change │
   │ QQuery 18(x) │     0.16ms │                            0.18ms │  1.10x 
slower │
   │ QQuery 19    │   193.16ms │                          185.69ms │     no 
change │
   │ QQuery 20    │  3371.44ms │                         3343.49ms │     no 
change │
   │ QQuery 21    │  4264.87ms │                         4326.25ms │     no 
change │
   │ QQuery 22    │ 11111.22ms │                        10905.60ms │     no 
change │
   │ QQuery 23    │ 27881.39ms │                        27258.91ms │     no 
change │
   │ QQuery 24    │  1444.51ms │                         1434.72ms │     no 
change │
   │ QQuery 25    │  1200.78ms │                         1174.84ms │     no 
change │
   │ QQuery 26    │  1576.50ms │                         1555.85ms │     no 
change │
   │ QQuery 27    │  4708.36ms │                         4633.59ms │     no 
change │
   │ QQuery 28    │ 30362.04ms │                        31230.25ms │     no 
change │
   │ QQuery 29    │  1224.66ms │                         1202.81ms │     no 
change │
   │ QQuery 30    │  2692.08ms │                         2668.50ms │     no 
change │
   │ QQuery 31    │  3509.70ms │                         3498.93ms │     no 
change │
   │ QQuery 32(x) │     0.18ms │                            0.24ms │  1.32x 
slower │
   │ QQuery 33(x) │     0.17ms │                            0.24ms │  1.37x 
slower │
   │ QQuery 34(x) │     0.16ms │                            0.14ms │ +1.12x 
faster │
   │ QQuery 35    │  3781.02ms │                         3800.45ms │     no 
change │
   │ QQuery 36    │   322.11ms │                          332.11ms │     no 
change │
   │ QQuery 37    │   183.90ms │                          171.58ms │ +1.07x 
faster │
   │ QQuery 38    │   162.01ms │                          161.94ms │     no 
change │
   │ QQuery 39    │   771.03ms │                          760.86ms │     no 
change │
   │ QQuery 40    │    81.05ms │                           77.93ms │     no 
change │
   │ QQuery 41    │    74.25ms │                           62.69ms │ +1.18x 
faster │
   │ QQuery 42    │    75.99ms │                           70.00ms │ +1.09x 
faster │
   
└──────────────┴────────────┴───────────────────────────────────┴───────────────┘
   ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┓
   ┃ Benchmark Summary                                ┃             ┃
   ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━┩
   │ Total Time (master)                              │ 140745.91ms │
   │ Total Time (count_distinct_groups_accumulator)   │ 137259.41ms │
   │ Average Time (master)                            │   3273.16ms │
   │ Average Time (count_distinct_groups_accumulator) │   3192.08ms │
   │ Queries Faster                                   │           7 │
   │ Queries Slower                                   │           4 │
   │ Queries with No Change                           │          32 │
   └──────────────────────────────────────────────────┴─────────────┘
   --------------------
   Benchmark tpch.json
   --------------------
   
┏━━━━━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
   ┃ Query        ┃   master ┃ count_distinct_groups_accumulator ┃        
Change ┃
   
┡━━━━━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
   │ QQuery 1     │ 299.27ms │                          294.08ms │     no 
change │
   │ QQuery 2     │  71.33ms │                           71.51ms │     no 
change │
   │ QQuery 3     │ 146.08ms │                          153.59ms │  1.05x 
slower │
   │ QQuery 4     │  95.64ms │                           99.49ms │     no 
change │
   │ QQuery 5     │ 190.03ms │                          177.54ms │ +1.07x 
faster │
   │ QQuery 6     │  90.02ms │                           79.86ms │ +1.13x 
faster │
   │ QQuery 7     │ 309.50ms │                          310.71ms │     no 
change │
   │ QQuery 8     │ 222.93ms │                          219.75ms │     no 
change │
   │ QQuery 9     │ 288.22ms │                          307.12ms │  1.07x 
slower │
   │ QQuery 10    │ 254.91ms │                          257.15ms │     no 
change │
   │ QQuery 11    │  72.89ms │                           69.68ms │     no 
change │
   │ QQuery 12    │ 153.95ms │                          148.15ms │     no 
change │
   │ QQuery 13    │ 307.94ms │                          284.76ms │ +1.08x 
faster │
   │ QQuery 14    │ 119.62ms │                          132.48ms │  1.11x 
slower │
   │ QQuery 15    │ 145.98ms │                          131.71ms │ +1.11x 
faster │
   │ QQuery 16    │  80.01ms │                           84.45ms │  1.06x 
slower │
   │ QQuery 17    │ 295.38ms │                          254.44ms │ +1.16x 
faster │
   │ QQuery 18    │ 551.83ms │                          535.77ms │     no 
change │
   │ QQuery 19    │ 206.88ms │                          223.29ms │  1.08x 
slower │
   │ QQuery 20    │ 188.34ms │                          192.10ms │     no 
change │
   │ QQuery 21    │ 391.18ms │                          396.50ms │     no 
change │
   │ QQuery 22    │  85.64ms │                           83.84ms │     no 
change │
   
└──────────────┴──────────┴───────────────────────────────────┴───────────────┘
   ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━┓
   ┃ Benchmark Summary                                ┃           ┃
   ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━┩
   │ Total Time (master)                              │ 4567.55ms │
   │ Total Time (count_distinct_groups_accumulator)   │ 4507.98ms │
   │ Average Time (master)                            │  207.62ms │
   │ Average Time (count_distinct_groups_accumulator) │  204.91ms │
   │ Queries Faster                                   │         5 │
   │ Queries Slower                                   │         5 │
   │ Queries with No Change                           │        12 │
   └──────────────────────────────────────────────────┴───────────┘
   ```
   The target query was clickbench q9 -- there are not so many queries where DF 
plans groups accumulator for count distinct.
   
   (x) marked queries were constantly killed by OOM on my laptop, so they were 
replaced with dummy `select 1;` (there are no `count distinct` queries among 
them).


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

Reply via email to