Pull requests
validate `extend_from_array` in all builders
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com> 0%
format
Signed-off-by: Robert Kruszewski <github@robertk.io> 0%
chore(deps): update rust crate pyo3 to 0.25.0 0%
chore: rudimentary Python benchmarks & support more Polars types
I had to patch a hole in Polars type conversion as well.
I do not understand why duckdb is so slow. Maybe Arrow conversion is very expensive?
Ideally there should be no gap between `test_scan_XXX` and each engine's XXX benchmark because
all of these queries are simple O(N) scans.
```
------------------------------------------------------------------------------------------------ benchmark: 15 tests -------------------------------------------------------------------------------------------------
Name (time in us) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
test_repeated_scan_scalar_at 1.0829 (1.0) 12.7910 (1.0) 1.9084 (1.0) 0.5208 (1.0) 1.7919 (1.0) 0.6661 (1.0) 8534;503 523,994.6207 (1.0) 36811 1
test_scan_scalar_at 32.4170 (29.94) 212.0000 (16.57) 40.4745 (21.21) 4.1199 (7.91) 40.1658 (22.42) 4.1660 (6.25) 1217;209 24,706.9329 (0.05) 7470 1
test_repeated_scan 122.7499 (113.35) 237.9999 (18.61) 140.3071 (73.52) 5.5270 (10.61) 141.7079 (79.08) 2.9160 (4.38) 445;426 7,127.2225 (0.01) 2293 1
test_scan 148.0419 (136.71) 555.2911 (43.41) 172.1939 (90.23) 30.2790 (58.14) 166.6665 (93.01) 7.2501 (10.88) 22;81 5,807.4083 (0.01) 810 1
test_polars_scalar_at 161.6669 (149.29) 451.8752 (35.33) 216.6078 (113.50) 23.6843 (45.48) 214.8750 (119.92) 24.1671 (36.28) 811;107 4,616.6396 (0.01) 3865 1
test_duckdb_scalar_at 183.4580 (169.41) 1,157.4170 (90.49) 266.8048 (139.80) 56.7218 (108.92) 258.9581 (144.52) 64.0000 (96.08) 556;120 3,748.0582 (0.01) 2596 1
test_polars 188.6250 (174.19) 497.0001 (38.86) 252.7230 (132.43) 43.1075 (82.78) 242.3751 (135.26) 33.5106 (50.31) 193;100 3,956.9012 (0.01) 1277 1
test_polars_streaming_scalar_at 213.6659 (197.31) 822.5001 (64.30) 282.8750 (148.22) 38.8552 (74.61) 275.7079 (153.87) 25.8966 (38.88) 366;230 3,535.1300 (0.01) 3096 1
test_scan_filter 360.1250 (332.56) 527.9169 (41.27) 408.9275 (214.28) 26.6184 (51.11) 403.7919 (225.35) 28.4789 (42.75) 263;68 2,445.4213 (0.00) 1109 1
test_repeated_scan_filter 378.2089 (349.26) 475.5841 (37.18) 410.9510 (215.34) 16.5570 (31.79) 412.9999 (230.49) 10.5419 (15.83) 484;450 2,433.3800 (0.00) 1709 1
test_polars_filter 397.4999 (367.07) 957.6660 (74.87) 479.0831 (251.04) 43.1060 (82.77) 468.7500 (261.60) 40.5819 (60.92) 182;40 2,087.3206 (0.00) 1006 1
test_polars_streaming 435.4171 (402.09) 1,088.7499 (85.12) 556.2495 (291.47) 51.5738 (99.03) 548.3751 (306.04) 38.2287 (57.39) 79;43 1,797.7544 (0.00) 571 1
test_polars_streaming_filter 621.7081 (574.12) 1,215.5001 (95.03) 712.6453 (373.42) 55.5044 (106.58) 699.2079 (390.21) 68.1449 (102.30) 217;14 1,403.2226 (0.00) 1001 1
test_duckdb_filter 909.5829 (839.95) 2,197.5001 (171.80) 1,169.5916 (612.86) 148.8653 (285.86) 1,147.1671 (640.21) 220.3751 (330.83) 181;2 854.9993 (0.00) 563 1
test_duckdb 920.4999 (850.04) 1,703.5829 (133.19) 1,262.7979 (661.70) 182.6230 (350.68) 1,228.4580 (685.58) 335.4165 (503.53) 266;0 791.8923 (0.00) 644 1
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
```
Signed-off-by: Daniel King <dan@spiraldb.com> 0%
Ā© 2025 CodSpeed Technology