alamb commented on PR #19364:
URL: https://github.com/apache/datafusion/pull/19364#issuecomment-3670114568

    I benchmarked with/without the no buffers optimization and it seems to be 
worth around 1% (10ms out of 990ms)
   
   ```shell
   hyperfine --warmup 3 " ./datafusion-cli-starting  -c \"select 
l_returnflag,l_linestatus, count(*) as count_order from 'lineitem.parquet' 
group by l_returnflag, l_linestatus;\" "
   ```
   
   Starting (before 
https://github.com/apache/datafusion/pull/19364/commits/da34c4cd52033ad04bb2da93133636f019f62eeb)
   ```
   andrewlamb@Andrews-MacBook-Pro-3:~/Downloads$ hyperfine --warmup 3 " 
./datafusion-cli-starting  -c \"select l_returnflag,l_linestatus, count(*) as 
count_order from 'lineitem.parquet' group by l_returnflag, l_linestatus;\" "
   Benchmark 1:  ./datafusion-cli-starting  -c "select 
l_returnflag,l_linestatus, count(*) as count_order from 'lineitem.parquet' 
group by l_returnflag, l_linestatus;"
     Time (mean ± σ):     989.4 ms ±   9.2 ms    [User: 11962.4 ms, System: 
620.9 ms]
     Range (min … max):   980.0 ms … 1007.0 ms    10 runs
   ```
   
   After 
https://github.com/apache/datafusion/pull/19364/commits/da34c4cd52033ad04bb2da93133636f019f62eeb
   
   ```
   Benchmark 1:  ./datafusion-cli-no-buffers-opt  -c "select 
l_returnflag,l_linestatus, count(*) as count_order from 'lineitem.parquet' 
group by l_returnflag, l_linestatus;"
     Time (mean ± σ):     982.1 ms ±  10.0 ms    [User: 11962.7 ms, System: 
607.3 ms]
     Range (min … max):   968.4 ms … 996.9 ms    10 runs
   ```
   
   It seems reproducable:
   ```
   andrewlamb@Andrews-MacBook-Pro-3:~/Downloads$ hyperfine --warmup 3 " 
./datafusion-cli-starting  -c \"select l_returnflag,l_linestatus, count(*) as 
count_order from 'lineitem.parquet' group by l_returnflag, l_linestatus;\" "
   Benchmark 1:  ./datafusion-cli-starting  -c "select 
l_returnflag,l_linestatus, count(*) as count_order from 'lineitem.parquet' 
group by l_returnflag, l_linestatus;"
     Time (mean ± σ):     985.9 ms ±  11.2 ms    [User: 11979.8 ms, System: 
621.6 ms]
     Range (min … max):   970.4 ms … 1002.0 ms    10 runs
   
   andrewlamb@Andrews-MacBook-Pro-3:~/Downloads$ hyperfine --warmup 3 " 
./datafusion-cli-no-buffers-opt  -c \"select l_returnflag,l_linestatus, 
count(*) as count_order from 'lineitem.parquet' group by l_returnflag, 
l_linestatus;\" "
   Benchmark 1:  ./datafusion-cli-no-buffers-opt  -c "select 
l_returnflag,l_linestatus, count(*) as count_order from 'lineitem.parquet' 
group by l_returnflag, l_linestatus;"
     Time (mean ± σ):     995.5 ms ±  17.8 ms    [User: 12140.3 ms, System: 
627.2 ms]
     Range (min … max):   964.1 ms … 1023.3 ms    10 runs
   ```


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