yjshen edited a comment on pull request #2132:
URL:
https://github.com/apache/arrow-datafusion/pull/2132#issuecomment-1085966913
On my Linux Desktop:
```
H/W path Device Class Description
====================================================================
system MS-7D53 (To be
filled by O.E.M.)
/0 bus MPG X570S EDGE MAX
WIFI (MS-7D53)
/0/0 memory 64KiB BIOS
/0/11 memory 32GiB System Memory
/0/11/0 memory 3600 MHz (0.3 ns)
[empty]
/0/11/1 memory 16GiB DIMM DDR4
Synchronous Unbuffered (Unregistered) 3600 MHz (0.3
/0/11/2 memory 3600 MHz (0.3 ns)
[empty]
/0/11/3 memory 16GiB DIMM DDR4
Synchronous Unbuffered (Unregistered) 3600 MHz (0.3
/0/14 memory 1MiB L1 cache
/0/15 memory 8MiB L2 cache
/0/16 memory 64MiB L3 cache
/0/17 processor AMD Ryzen 9 5950X
16-Core Processor
```
## A modified version of TPC-H q1:
```sql
select
l_returnflag,
l_linestatus,
l_quantity,
l_extendedprice,
l_discount,
l_tax
from
lineitem
order by
l_extendedprice,
l_discount;
```
```
cargo run --release --features "mimalloc" --bin tpch -- benchmark datafusion
--iterations 3 --path ../../tpch-parquet/ --format parquet --query 1
--batch-size 4096
```
Without this PR:
```
Running benchmarks with the following options: DataFusionBenchmarkOpt {
query: 1, debug: false, iterations: 3, partitions: 2, batch_size: 4096, path:
"../../tpch-parquet/", file_format: "parquet", mem_table: false, output_path:
None }
Query 1 iteration 0 took 2851.7 ms and returned 6001214 rows
Query 1 iteration 1 took 2817.7 ms and returned 6001214 rows
Query 1 iteration 2 took 2735.9 ms and returned 6001214 rows
Query 1 avg time: 2801.75 ms
```
With this PR:
```
Running benchmarks with the following options: DataFusionBenchmarkOpt {
query: 1, debug: false, iterations: 3, partitions: 2, batch_size: 4096, path:
"../../tpch-parquet/", file_format: "parquet", mem_table: false, output_path:
None }
Query 1 iteration 0 took 2843.6 ms and returned 6001214 rows
Query 1 iteration 1 took 2824.4 ms and returned 6001214 rows
Query 1 iteration 2 took 2753.0 ms and returned 6001214 rows
Query 1 avg time: 2807.00 ms
```
Performances are similar.
## cargo criterion --bench sort_limit_query_sql
Without this PR:
```
sort_and_limit_by_int time: [869.27 us 870.72 us 872.19 us]
sort_and_limit_by_float time: [845.95 us 847.36 us 848.77 us]
sort_and_limit_lex_by_int
time: [875.07 us 876.80 us 878.59 us]
sort_and_limit_lex_by_string
time: [878.78 us 880.40 us 882.06 us]
```
With this PR:
```
sort_and_limit_by_int time: [856.71 us 858.58 us 860.41 us]
sort_and_limit_by_float time: [836.55 us 838.40 us 840.29 us]
sort_and_limit_lex_by_int
time: [864.83 us 866.33 us 867.83 us]
sort_and_limit_lex_by_string
time: [866.89 us 868.25 us 869.62 us]
```
Similar performance as well.
--
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]