sqlbenchmark commented on PR #3140:
URL:
https://github.com/apache/datafusion-comet/pull/3140#issuecomment-3751846949
## Comet Microbenchmark Results: CometHashExpressionBenchmark
**Commit:** `a11e0ae` - Dedup code a bit.
### Benchmark Results
```
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
xxhash64_single: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 89 91
1 11.8 84.9 1.0X
Comet (Scan) 70 73
2 15.0 66.5 1.3X
Comet (Scan + Exec) 67 68
1 15.7 63.7 1.3X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
xxhash64_multi: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 99 100
1 10.6 94.5 1.0X
Comet (Scan) 81 84
6 13.0 76.8 1.2X
Comet (Scan + Exec) 74 76
1 14.2 70.6 1.3X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
murmur3_hash_single: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 87 88
1 12.1 82.5 1.0X
Comet (Scan) 69 70
1 15.1 66.1 1.2X
Comet (Scan + Exec) 65 66
1 16.2 61.9 1.3X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
murmur3_hash_multi: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 105 105
0 10.0 99.9 1.0X
Comet (Scan) 84 87
6 12.5 79.9 1.3X
Comet (Scan + Exec) 76 77
2 13.8 72.2 1.4X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
sha1: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 183 199
31 5.7 174.4 1.0X
Comet (Scan) 157 161
10 6.7 149.7 1.2X
Comet (Scan + Exec) 337 339
1 3.1 321.1 0.5X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
sha2_224: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 187 187
1 5.6 178.3 1.0X
Comet (Scan) 167 168
1 6.3 159.7 1.1X
Comet (Scan + Exec) 427 431
3 2.5 407.4 0.4X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
sha2_256: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 187 188
1 5.6 177.9 1.0X
Comet (Scan) 167 168
1 6.3 159.5 1.1X
Comet (Scan + Exec) 472 474
1 2.2 450.1 0.4X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
sha2_384: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 300 301
1 3.5 286.0 1.0X
Comet (Scan) 275 280
4 3.8 262.4 1.1X
Comet (Scan + Exec) 743 744
1 1.4 708.2 0.4X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
sha2_512: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 304 305
1 3.5 289.7 1.0X
Comet (Scan) 283 285
3 3.7 270.2 1.1X
Comet (Scan + Exec) 904 907
3 1.2 862.2 0.3X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_boolean: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 22 24
1 47.1 21.2 1.0X
Comet (Scan) 27 29
1 38.4 26.0 0.8X
Comet (Scan + Exec) 33 34
1 32.1 31.1 0.7X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_byte: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 24 25
1 44.6 22.4 1.0X
Comet (Scan) 23 24
1 46.0 21.7 1.0X
Comet (Scan + Exec) 25 26
1 41.9 23.8 0.9X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_short: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 22 24
1 46.8 21.4 1.0X
Comet (Scan) 23 24
1 45.6 21.9 1.0X
Comet (Scan + Exec) 25 27
1 41.3 24.2 0.9X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_int: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 22 24
3 46.7 21.4 1.0X
Comet (Scan) 23 24
1 45.6 21.9 1.0X
Comet (Scan + Exec) 25 26
1 42.1 23.8 0.9X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_long: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 25 26
1 42.3 23.6 1.0X
Comet (Scan) 25 26
1 41.7 24.0 1.0X
Comet (Scan + Exec) 27 28
1 38.5 26.0 0.9X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_float: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 22 23
5 48.3 20.7 1.0X
Comet (Scan) 23 24
1 45.7 21.9 0.9X
Comet (Scan + Exec) 25 26
1 42.1 23.7 0.9X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_double: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 25 26
1 42.5 23.5 1.0X
Comet (Scan) 25 26
1 41.8 23.9 1.0X
Comet (Scan + Exec) 27 27
1 39.5 25.3 0.9X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_string: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 77 78
1 13.6 73.8 1.0X
Comet (Scan) 61 62
1 17.3 57.9 1.3X
Comet (Scan + Exec) 57 58
1 18.4 54.2 1.4X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_binary: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 81 83
1 12.9 77.4 1.0X
Comet (Scan) 68 69
1 15.5 64.6 1.2X
Comet (Scan + Exec) 56 57
1 18.6 53.8 1.4X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_date: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 23 24
1 44.7 22.4 1.0X
Comet (Scan) 23 24
1 45.3 22.1 1.0X
Comet (Scan + Exec) 25 25
1 42.5 23.5 1.0X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_decimal: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 17 19
2 60.3 16.6 1.0X
Comet (Scan) 19 21
2 54.4 18.4 0.9X
Comet (Scan + Exec) 22 23
1 47.1 21.2 0.8X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_array_int: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 54 55
1 19.4 51.6 1.0X
Comet (Scan) 50 51
1 21.1 47.4 1.1X
Comet (Scan + Exec) 48 50
1 21.7 46.2 1.1X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_array_string: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 133 134
2 7.9 126.6 1.0X
Comet (Scan) 104 106
1 10.1 99.3 1.3X
Comet (Scan + Exec) 94 95
1 11.2 89.3 1.4X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_array_double: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 55 57
1 19.0 52.8 1.0X
Comet (Scan) 50 52
2 20.9 47.7 1.1X
Comet (Scan + Exec) 49 50
1 21.3 46.9 1.1X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_struct: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 85 88
8 12.4 81.0 1.0X
Comet (Scan) 79 83
8 13.3 75.5 1.1X
Comet (Scan + Exec) 67 68
2 15.7 63.6 1.3X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_struct_multi_fields: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 38 39
1 27.7 36.1 1.0X
Comet (Scan) 56 58
1 18.8 53.3 0.7X
Comet (Scan + Exec) 52 53
1 20.3 49.3 0.7X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_nested_array: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 73 75
2 14.4 69.7 1.0X
Comet (Scan) 67 68
1 15.6 63.9 1.1X
Comet (Scan + Exec) 130 133
3 8.1 123.7 0.6X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_nested_struct: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 94 95
1 11.2 89.7 1.0X
Comet (Scan) 97 98
1 10.8 93.0 1.0X
Comet (Scan + Exec) 77 78
3 13.6 73.4 1.2X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_struct_with_array: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 142 144
2 7.4 135.1 1.0X
Comet (Scan) 120 122
1 8.7 114.8 1.2X
Comet (Scan + Exec) 101 102
1 10.4 96.2 1.4X
OpenJDK 64-Bit Server VM 17.0.17+10 on Linux 6.8.0-57-generic
AMD Ryzen 9 7950X 16-Core Processor
hash_array_of_struct: Best Time(ms) Avg Time(ms)
Stdev(ms) Rate(M/s) Per Row(ns) Relative
------------------------------------------------------------------------------------------------------------------------
Spark 174 175
1 6.0 165.6 1.0X
Comet (Scan) 136 138
3 7.7 129.9 1.3X
Comet (Scan + Exec) 351 358
5 3.0 334.6 0.5X
```
---
*Automated benchmark run by dfbench*
--
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]