perf: add fast path for simple projections
This should improve the performance of take operations.
Closes https://github.com/lance-format/lance/issues/5069
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. Credits must be used to enable repository wide code reviews.
Codecov Report
:x: Patch coverage is 98.10427% with 4 lines in your changes missing coverage. Please review.
| Files with missing lines | Patch % | Lines |
|---|---|---|
| rust/lance-datafusion/src/projection.rs | 98.10% | 3 Missing and 1 partial :warning: |
:loudspeaker: Thoughts on this report? Let us know!
Benchmark Results for PR #5532
Commit: ec69ed2
Baseline: Up to 20 most recent historical results per benchmark
Summary
- Total benchmarks: 221
- ๐ Improvements: 1
- โ ๏ธ Regressions: 1
- โ Stable: 219
- โ Insufficient data: 0
Flagged Benchmarks (|z-score| > 2.0)
| Benchmark | PR Result | Baseline Mean | Baseline Std Dev | Z-Score | Status |
|---|---|---|---|---|---|
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-string-BTREE-5M] | 2.14 s | 1.95 s | 80.76 ms | +2.38 | โ ๏ธ Likely Regressed |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[1-mem-tpch] | 201.14 ยตs | 321.25 ยตs | 53.32 ยตs | -2.25 | ๐ Likely Improved |
All Results
View all 221 benchmark results
| Benchmark | PR Result | Baseline Mean | Baseline N | Z-Score | Status |
|---|---|---|---|---|---|
| Cosine(f32, auto-vectorized) | 105.09 ms | 153.39 ms | 20 | -1.14 | โ |
| Cosine(f32, scalar) | 657.82 ms | 820.47 ms | 20 | -0.93 | โ |
| Cosine(f64, auto-vectorized) | 270.64 ms | 404.36 ms | 20 | -1.19 | โ |
| Cosine(f64, scalar) | 649.42 ms | 836.72 ms | 20 | -1.01 | โ |
| Cosine(half::bfloat::bf16, auto-vectorized) | 250.48 ms | 362.38 ms | 20 | -1.02 | โ |
| Cosine(half::bfloat::bf16, scalar) | 6.83 s | 9.15 s | 20 | -1.05 | โ |
| Cosine(half::binary16::f16, auto-vectorized) | 123.03 ms | 154.34 ms | 20 | -0.93 | โ |
| Cosine(half::binary16::f16, scalar) | 5.86 s | 7.79 s | 20 | -1.02 | โ |
| Cosine(simd,f32x8) rng seed | 2.76 ms | 3.73 ms | 20 | -0.98 | โ |
| Dot(bf16, auto-vectorization) | 377.51 ms | 546.63 ms | 20 | -1.03 | โ |
| Dot(f16, SIMD) | 69.32 ms | 91.43 ms | 20 | -1.00 | โ |
| Dot(f32, SIMD) | 97.27 ms | 144.37 ms | 20 | -1.24 | โ |
| Dot(f32, arrow_artiy) | 607.49 ms | 792.48 ms | 20 | -1.09 | โ |
| Dot(f32, auto-vectorization) | 98.15 ms | 150.78 ms | 20 | -1.41 | โ |
| Dot(f64, arrow_artiy) | 617.78 ms | 797.02 ms | 20 | -1.01 | โ |
| Dot(f64, auto-vectorization) | 196.13 ms | 287.17 ms | 20 | -1.13 | โ |
| Dot(half::binary16::f16, arrow_artiy) | 688.39 ms | 870.45 ms | 20 | -1.15 | โ |
| Dot(half::binary16::f16, auto-vectorization) | 63.77 ms | 92.24 ms | 20 | -1.39 | โ |
| L2(f32, auto-vectorization) | 101.90 ms | 149.21 ms | 20 | -1.09 | โ |
| L2(f32, scalar) | 620.67 ms | 804.28 ms | 20 | -1.07 | โ |
| L2(f32, simd) | 100.08 ms | 146.38 ms | 20 | -1.10 | โ |
| L2(f64, auto-vectorization) | 196.12 ms | 297.23 ms | 20 | -1.24 | โ |
| L2(f64, scalar) | 658.99 ms | 815.34 ms | 20 | -0.88 | โ |
| L2(half::binary16::f16, auto-vectorization) | 68.96 ms | 94.50 ms | 20 | -1.23 | โ |
| L2(half::binary16::f16, scalar) | 2.81 s | 3.56 s | 20 | -0.87 | โ |
| L2(simd,f32x8) | 4.60 ms | 5.62 ms | 20 | -0.84 | โ |
| L2(uint8, auto-vectorization) | 52.24 ms | 66.65 ms | 20 | -1.14 | โ |
| L2(uint8, scalar) | 49.34 ms | 61.07 ms | 20 | -1.19 | โ |
| NormL2(f32, SIMD) | 94.09 ms | 142.88 ms | 20 | -1.19 | โ |
| NormL2(f32, auto-vectorization) | 98.02 ms | 142.08 ms | 20 | -1.10 | โ |
| NormL2(f32, scalar) | 609.11 ms | 787.33 ms | 20 | -1.02 | โ |
| NormL2(f64, auto-vectorization) | 177.01 ms | 296.55 ms | 20 | -1.27 | โ |
| NormL2(f64, scalar) | 627.33 ms | 807.86 ms | 20 | -0.98 | โ |
| NormL2(half::bfloat::bf16, auto-vectorization) | 240.86 ms | 339.64 ms | 20 | -1.00 | โ |
| NormL2(half::bfloat::bf16, scalar) | 2.60 s | 3.32 s | 20 | -1.04 | โ |
| NormL2(half::binary16::f16, SIMD) | 61.13 ms | 84.97 ms | 20 | -1.03 | โ |
| NormL2(half::binary16::f16, auto-vectorization) | 58.35 ms | 84.56 ms | 20 | -1.12 | โ |
| NormL2(half::binary16::f16, scalar) | 638.19 ms | 810.05 ms | 20 | -0.96 | โ |
| argmin(arrow) | 4.77 ms | 4.64 ms | 20 | +0.65 | โ |
| decode_fsl/float32_128_v2.0_nullfalse | 30.13 ms | 48.35 ms | 20 | -0.94 | โ |
| decode_fsl/float32_128_v2.1_nullfalse | 11.44 ms | 15.65 ms | 20 | -1.68 | โ |
| decode_fsl/float32_128_v2.1_nulltrue | 22.64 ms | 32.22 ms | 20 | -1.53 | โ |
| decode_fsl/float32_16_v2.0_nullfalse | 31.36 ms | 48.20 ms | 20 | -0.86 | โ |
| decode_fsl/float32_16_v2.1_nullfalse | 18.71 ms | 24.29 ms | 20 | -0.95 | โ |
| decode_fsl/float32_16_v2.1_nulltrue | 29.08 ms | 37.70 ms | 20 | -0.94 | โ |
| decode_fsl/float32_32_v2.0_nullfalse | 31.10 ms | 48.07 ms | 20 | -0.86 | โ |
| decode_fsl/float32_32_v2.1_nullfalse | 18.53 ms | 24.28 ms | 20 | -0.99 | โ |
| decode_fsl/float32_32_v2.1_nulltrue | 27.36 ms | 34.03 ms | 20 | -0.82 | โ |
| decode_fsl/float32_4_v2.0_nullfalse | 29.73 ms | 48.43 ms | 20 | -0.96 | โ |
| decode_fsl/float32_4_v2.1_nullfalse | 24.88 ms | 25.27 ms | 20 | -0.07 | โ |
| decode_fsl/float32_4_v2.1_nulltrue | 49.74 ms | 63.80 ms | 20 | -0.94 | โ |
| decode_fsl/float32_64_v2.0_nullfalse | 30.37 ms | 48.08 ms | 20 | -0.92 | โ |
| decode_fsl/float32_64_v2.1_nullfalse | 11.49 ms | 16.29 ms | 20 | -1.28 | โ |
| decode_fsl/float32_64_v2.1_nulltrue | 26.58 ms | 33.65 ms | 20 | -1.12 | โ |
| decode_fsl/int8_128_v2.0_nullfalse | 30.16 ms | 48.36 ms | 20 | -0.93 | โ |
| decode_fsl/int8_128_v2.1_nullfalse | 17.77 ms | 25.29 ms | 20 | -1.42 | โ |
| decode_fsl/int8_128_v2.1_nulltrue | 25.32 ms | 33.89 ms | 20 | -1.05 | โ |
| decode_fsl/int8_16_v2.0_nullfalse | 29.61 ms | 48.20 ms | 20 | -0.96 | โ |
| decode_fsl/int8_16_v2.1_nullfalse | 18.52 ms | 25.00 ms | 20 | -1.19 | โ |
| decode_fsl/int8_16_v2.1_nulltrue | 50.89 ms | 63.93 ms | 20 | -0.91 | โ |
| decode_fsl/int8_32_v2.0_nullfalse | 30.09 ms | 48.15 ms | 20 | -0.93 | โ |
| decode_fsl/int8_32_v2.1_nullfalse | 20.22 ms | 24.92 ms | 20 | -0.87 | โ |
| decode_fsl/int8_32_v2.1_nulltrue | 36.57 ms | 47.09 ms | 20 | -0.95 | โ |
| decode_fsl/int8_4_v2.0_nullfalse | 29.37 ms | 48.17 ms | 20 | -0.97 | โ |
| decode_fsl/int8_4_v2.1_nullfalse | 20.60 ms | 26.52 ms | 20 | -1.03 | โ |
| decode_fsl/int8_4_v2.1_nulltrue | 139.08 ms | 174.89 ms | 20 | -0.90 | โ |
| decode_fsl/int8_64_v2.0_nullfalse | 30.12 ms | 48.54 ms | 20 | -0.94 | โ |
| decode_fsl/int8_64_v2.1_nullfalse | 24.56 ms | 24.32 ms | 20 | +0.04 | โ |
| decode_fsl/int8_64_v2.1_nulltrue | 36.04 ms | 37.85 ms | 20 | -0.20 | โ |
| decode_primitive/date32 | 14.05 ms | 15.89 ms | 20 | -0.65 | โ |
| decode_primitive/date64 | 13.09 ms | 15.97 ms | 20 | -1.00 | โ |
| decode_primitive/decimal128(10, 10) | 13.73 ms | 16.43 ms | 20 | -1.01 | โ |
| decode_primitive/decimal256(10, 10) | 29.28 ms | 34.60 ms | 20 | -1.13 | โ |
| decode_primitive/duration(second) | 12.24 ms | 16.97 ms | 20 | -1.13 | โ |
| decode_primitive/fixed-utf8 | 83.66 ยตs | 95.95 ยตs | 20 | -0.49 | โ |
| decode_primitive/float16 | 13.96 ms | 16.00 ms | 20 | -0.76 | โ |
| decode_primitive/float32 | 12.96 ms | 16.34 ms | 20 | -1.13 | โ |
| decode_primitive/float64 | 13.23 ms | 16.49 ms | 20 | -0.91 | โ |
| decode_primitive/int16 | 14.26 ms | 15.82 ms | 20 | -0.53 | โ |
| decode_primitive/int32 | 11.57 ms | 15.91 ms | 20 | -1.48 | โ |
| decode_primitive/int64 | 13.45 ms | 16.24 ms | 20 | -0.90 | โ |
| decode_primitive/int8 | 12.77 ms | 15.99 ms | 20 | -1.11 | โ |
| decode_primitive/struct | 139.56 ยตs | 186.10 ยตs | 20 | -1.29 | โ |
| decode_primitive/time32(second) | 11.59 ms | 16.39 ms | 20 | -1.83 | โ |
| decode_primitive/time64(nanosecond) | 11.91 ms | 16.37 ms | 20 | -1.63 | โ |
| decode_primitive/timestamp(nanosecond, none) | 14.40 ms | 16.25 ms | 20 | -0.62 | โ |
| decode_primitive/uint16 | 11.80 ms | 16.22 ms | 20 | -1.17 | โ |
| decode_primitive/uint32 | 13.46 ms | 16.31 ms | 20 | -0.94 | โ |
| decode_primitive/uint64 | 11.56 ms | 16.30 ms | 20 | -1.33 | โ |
| decode_primitive/uint8 | 13.52 ms | 15.65 ms | 20 | -0.71 | โ |
| decode_primitive/utf8 | 760.94 ยตs | 954.59 ยตs | 20 | -0.93 | โ |
| from_elem/full_read,parallel=1,read_size=1048576 | 38.81 ms | 165.77 ms | 20 | -0.86 | โ |
| from_elem/full_read,parallel=1,read_size=16384 | 247.04 ms | 326.30 ms | 20 | -0.81 | โ |
| from_elem/full_read,parallel=1,read_size=4096 | 807.49 ms | 1.15 s | 20 | -0.91 | โ |
| from_elem/full_read,parallel=16,read_size=1048576 | 38.54 ms | 165.92 ms | 20 | -0.86 | โ |
| from_elem/full_read,parallel=16,read_size=16384 | 239.82 ms | 318.14 ms | 20 | -0.89 | โ |
| from_elem/full_read,parallel=16,read_size=4096 | 797.62 ms | 1.14 s | 20 | -0.94 | โ |
| from_elem/full_read,parallel=32,read_size=1048576 | 36.12 ms | 165.97 ms | 20 | -0.88 | โ |
| from_elem/full_read,parallel=32,read_size=16384 | 243.49 ms | 318.46 ms | 20 | -0.89 | โ |
| from_elem/full_read,parallel=32,read_size=4096 | 765.32 ms | 1.14 s | 20 | -1.01 | โ |
| from_elem/full_read,parallel=64,read_size=1048576 | 34.36 ms | 166.02 ms | 20 | -0.89 | โ |
| from_elem/full_read,parallel=64,read_size=16384 | 254.78 ms | 317.58 ms | 20 | -0.73 | โ |
| from_elem/full_read,parallel=64,read_size=4096 | 833.05 ms | 1.15 s | 20 | -0.87 | โ |
| from_elem/random_read,parallel=1,item_size=1024 | 3.37 ms | 4.16 ms | 20 | -0.98 | โ |
| from_elem/random_read,parallel=1,item_size=4096 | 4.79 ms | 6.95 ms | 20 | -0.79 | โ |
| from_elem/random_read,parallel=1,item_size=8 | 1.64 ms | 1.85 ms | 20 | -0.71 | โ |
| from_elem/random_read,parallel=16,item_size=1024 | 3.36 ms | 4.11 ms | 20 | -0.97 | โ |
| from_elem/random_read,parallel=16,item_size=4096 | 4.59 ms | 6.94 ms | 20 | -0.84 | โ |
| from_elem/random_read,parallel=16,item_size=8 | 1.69 ms | 1.84 ms | 20 | -0.52 | โ |
| from_elem/random_read,parallel=32,item_size=1024 | 3.50 ms | 4.10 ms | 20 | -0.76 | โ |
| from_elem/random_read,parallel=32,item_size=4096 | 4.37 ms | 6.93 ms | 20 | -0.91 | โ |
| from_elem/random_read,parallel=32,item_size=8 | 1.69 ms | 1.85 ms | 20 | -0.54 | โ |
| from_elem/random_read,parallel=64,item_size=1024 | 3.38 ms | 4.10 ms | 20 | -0.93 | โ |
| from_elem/random_read,parallel=64,item_size=4096 | 4.42 ms | 6.91 ms | 20 | -0.88 | โ |
| from_elem/random_read,parallel=64,item_size=8 | 1.66 ms | 1.84 ms | 20 | -0.58 | โ |
| hamming,auto_vec | 70.96 ms | 96.16 ms | 20 | -1.05 | โ |
| hamming,scalar | 117.86 ms | 160.09 ms | 20 | -0.89 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-float-BITMAP-10M] | 13.52 s | 14.90 s | 7 | -0.88 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-float-BITMAP-1M] | 1.08 s | 1.20 s | 7 | -1.46 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-float-BITMAP-5M] | 6.24 s | 7.02 s | 7 | -1.30 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-float-BTREE-10M] | 1.41 s | 1.44 s | 7 | -0.20 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-float-BTREE-1M] | 116.30 ms | 126.97 ms | 7 | -0.72 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-float-BTREE-5M] | 662.20 ms | 701.94 ms | 7 | -1.15 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-string-BITMAP-10M] | 20.06 s | 23.26 s | 7 | -0.78 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-string-BITMAP-1M] | 1.76 s | 1.83 s | 7 | -0.43 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-string-BITMAP-5M] | 9.21 s | 10.30 s | 7 | -0.80 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-string-BTREE-10M] | 3.99 s | 3.93 s | 7 | +0.28 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-string-BTREE-1M] | 347.21 ms | 349.37 ms | 7 | -0.17 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[high-string-BTREE-5M] | 2.14 s | 1.95 s | 7 | +2.38 | โ ๏ธ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-float-BITMAP-10M] | 735.28 ms | 753.56 ms | 7 | -0.69 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-float-BITMAP-1M] | 80.81 ms | 83.77 ms | 7 | -0.97 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-float-BITMAP-5M] | 371.55 ms | 377.46 ms | 7 | -0.36 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-float-BTREE-10M] | 887.64 ms | 905.03 ms | 7 | -0.76 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-float-BTREE-1M] | 63.06 ms | 64.76 ms | 7 | -0.48 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-float-BTREE-5M] | 457.06 ms | 439.16 ms | 7 | +0.89 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-string-BITMAP-10M] | 2.50 s | 2.53 s | 7 | -0.37 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-string-BITMAP-1M] | 329.20 ms | 333.28 ms | 7 | -0.40 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-string-BITMAP-5M] | 1.25 s | 1.27 s | 7 | -0.47 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-string-BTREE-10M] | 3.96 s | 3.97 s | 7 | -0.05 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-string-BTREE-1M] | 446.68 ms | 454.47 ms | 7 | -0.60 | โ |
| python/ci_benchmarks/benchmarks/test_index_training.py::test_index_training[low-string-BTREE-5M] | 1.97 s | 1.91 s | 7 | +0.85 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[1-mem-tpch-2.1] | 10.99 ms | 14.07 ms | 7 | -1.35 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[1-mem-tpch] | 10.81 ms | 12.90 ms | 7 | -1.11 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[1-tpch-2.1] | 13.16 ms | 16.60 ms | 7 | -1.23 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[1-tpch] | 13.22 ms | 16.42 ms | 7 | -1.12 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[10-mem-tpch-2.1] | 28.01 ms | 33.87 ms | 7 | -0.99 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[10-mem-tpch] | 24.60 ms | 29.95 ms | 7 | -0.85 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[10-tpch-2.1] | 68.21 ms | 83.61 ms | 7 | -0.98 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[10-tpch] | 73.79 ms | 90.56 ms | 7 | -0.80 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[100-mem-tpch-2.1] | 97.85 ms | 124.65 ms | 7 | -1.08 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[100-mem-tpch] | 81.76 ms | 103.88 ms | 7 | -0.74 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[100-tpch-2.1] | 507.44 ms | 647.42 ms | 7 | -0.98 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_parallel_random_access[100-tpch] | 513.12 ms | 635.92 ms | 7 | -0.70 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[1-mem-tpch-2.1] | 359.46 ยตs | 399.50 ยตs | 7 | -0.81 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[1-mem-tpch] | 201.14 ยตs | 321.25 ยตs | 7 | -2.25 | ๐ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[1-tpch-2.1] | 1.04 ms | 1.15 ms | 7 | -1.23 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[1-tpch] | 385.23 ยตs | 465.90 ยตs | 7 | -1.12 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[10-mem-tpch-2.1] | 595.42 ยตs | 754.47 ยตs | 7 | -1.00 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[10-mem-tpch] | 462.54 ยตs | 593.08 ยตs | 7 | -1.03 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[10-tpch-2.1] | 1.78 ms | 1.99 ms | 7 | -0.70 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[10-tpch] | 1.20 ms | 1.46 ms | 7 | -0.77 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[100-mem-tpch-2.1] | 1.69 ms | 2.10 ms | 7 | -0.91 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[100-mem-tpch] | 1.07 ms | 1.33 ms | 7 | -0.81 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[100-tpch-2.1] | 6.86 ms | 8.36 ms | 7 | -0.71 | โ |
| python/ci_benchmarks/benchmarks/test_random_access.py::test_simple_random_access[100-tpch] | 6.41 ms | 7.76 ms | 7 | -0.66 | โ |
| python/ci_benchmarks/benchmarks/test_scan.py::test_full_scan[tpch] | 2.51 s | 2.91 s | 7 | -0.65 | โ |
| python/ci_benchmarks/benchmarks/test_scan.py::test_scan_slice[tpch] | 1.57 ms | 2.90 ms | 7 | -1.13 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-None-equal] | 657.11 ยตs | 705.65 ยตs | 7 | -0.57 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-None-none] | 10.78 ms | 13.01 ms | 7 | -1.36 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-None-not_equal] | 54.95 ms | 59.00 ms | 7 | -1.00 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-integers-equal] | 790.35 ยตs | 844.52 ยตs | 7 | -0.67 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-integers-none] | 17.82 ms | 20.49 ms | 7 | -0.98 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-integers-not_equal] | 62.47 ms | 68.85 ms | 7 | -1.02 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-small_strings-equal] | 849.07 ยตs | 859.66 ยตs | 7 | -0.16 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-small_strings-none] | 44.63 ms | 48.22 ms | 7 | -0.31 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[cache-small_strings-not_equal] | 83.07 ms | 90.60 ms | 7 | -0.98 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-None-equal] | 5.62 s | 6.80 s | 7 | -0.94 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-None-none] | 12.22 ms | 14.88 ms | 7 | -0.64 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-None-not_equal] | 5.49 s | 7.04 s | 7 | -0.91 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-integers-equal] | 5.57 s | 6.97 s | 7 | -1.11 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-integers-none] | 30.05 ms | 31.17 ms | 7 | -0.42 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-integers-not_equal] | 5.66 s | 6.92 s | 7 | -1.07 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-small_strings-equal] | 5.42 s | 7.18 s | 7 | -1.00 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-small_strings-none] | 57.29 ms | 63.11 ms | 7 | -0.53 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_bitmap_search[no_cache-small_strings-not_equal] | 5.65 s | 6.96 s | 7 | -0.94 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-None-equal] | 631.11 ยตs | 674.64 ยตs | 7 | -1.51 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-None-large_in] | 837.56 ยตs | 861.18 ยตs | 7 | -0.50 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-None-none] | 11.16 ms | 13.59 ms | 7 | -0.98 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-None-not_equal] | 55.19 ms | 60.67 ms | 7 | -1.22 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-None-small_range] | 652.35 ยตs | 860.41 ยตs | 7 | -0.61 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-integers-equal] | 752.91 ยตs | 821.60 ยตs | 7 | -0.76 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-integers-large_in] | 937.56 ยตs | 993.29 ยตs | 7 | -1.75 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-integers-none] | 17.19 ms | 21.10 ms | 7 | -1.30 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-integers-not_equal] | 61.61 ms | 67.80 ms | 7 | -1.28 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-integers-small_range] | 742.29 ยตs | 788.86 ยตs | 7 | -1.73 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-small_strings-equal] | 791.88 ยตs | 853.37 ยตs | 7 | -0.66 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-small_strings-large_in] | 975.04 ยตs | 1.10 ms | 7 | -1.01 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-small_strings-none] | 40.57 ms | 50.11 ms | 7 | -0.60 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-small_strings-not_equal] | 84.23 ms | 95.01 ms | 7 | -0.81 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[cache-small_strings-small_range] | 817.61 ยตs | 859.92 ยตs | 7 | -0.44 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-None-equal] | 2.79 ms | 2.94 ms | 7 | -0.29 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-None-large_in] | 2.97 ms | 2.95 ms | 7 | +0.04 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-None-none] | 11.22 ms | 14.12 ms | 7 | -1.20 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-None-not_equal] | 58.13 ms | 62.82 ms | 7 | -0.90 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-None-small_range] | 2.84 ms | 2.84 ms | 7 | -0.00 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-integers-equal] | 3.26 ms | 3.50 ms | 7 | -0.35 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-integers-large_in] | 3.39 ms | 3.52 ms | 7 | -0.22 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-integers-none] | 30.38 ms | 31.18 ms | 7 | -0.17 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-integers-not_equal] | 75.94 ms | 78.83 ms | 7 | -0.48 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-integers-small_range] | 3.30 ms | 3.39 ms | 7 | -0.16 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-small_strings-equal] | 3.50 ms | 3.79 ms | 7 | -0.34 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-small_strings-large_in] | 3.57 ms | 3.83 ms | 7 | -0.32 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-small_strings-none] | 56.96 ms | 66.08 ms | 7 | -0.58 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-small_strings-not_equal] | 102.94 ms | 114.95 ms | 7 | -0.69 | โ |
| python/ci_benchmarks/benchmarks/test_search.py::test_basic_btree_search[no_cache-small_strings-small_range] | 3.48 ms | 3.74 ms | 7 | -0.33 | โ |
| zip_1024Ki/2_2_2_zip_into_6 | 5.45 ms | 7.98 ms | 20 | -1.18 | โ |
| zip_1024Ki/2_4_zip_into_6 | 4.63 ms | 5.65 ms | 20 | -0.83 | โ |
| zip_32Ki/2_2_2_zip_into_6 | 186.78 ยตs | 254.99 ยตs | 20 | -0.96 | โ |
| zip_32Ki/2_4_zip_into_6 | 145.80 ยตs | 178.00 ยตs | 20 | -0.89 | โ |
| zip_8Ki/2_2_2_zip_into_6 | 44.07 ยตs | 67.75 ยตs | 20 | -1.34 | โ |
| zip_8Ki/2_4_zip_into_6 | 36.72 ยตs | 45.52 ยตs | 20 | -0.87 | โ |
Generated by bench-bot ๐ค
I was using this PR to test out bench-bot but those results aren't the really interesting ones. The random take benchmark in the lance repo is the main one I've been using and it hasn't been added to the regression set yet. Let me get some runs.