Avatar for the vortex-data user
vortex-data
vortex
BlogDocsChangelog

Performance History

Latest Results

refactor(vortex-geo): namespace spatial scalar functions Signed-off-by: Nemo Yu <zyu379@wisc.edu>
nemo/geo-bbox-short-circuit
18 seconds ago
perf(vortex-geo): short-circuit predicates with bounding boxes (#9076) ## Rationale for this change Constant-vs-column geometry predicates currently run the exact spatial predicate for every valid row, even when the constant and row bounding rectangles already prove that the result is false. For complex constant geometries and spatially selective queries, this repeats substantially more work than necessary. ## What changes are included in this PR? - Add an optional bounding-rectangle pre-check to the shared null-propagating binary geometry executor. - Short-circuit `vortex.geo.intersects` when operand rectangles are disjoint. - Short-circuit `vortex.geo.contains` when the container rectangle cannot cover the contained rectangle, preserving operand order. - Keep `vortex.geo.distance` on exact evaluation because rectangles cannot determine the result. - Preserve null propagation and fall back to exact evaluation for empty geometries or overlapping rectangles. - Add regression coverage for short-circuiting, nulls, operand order, empty geometries, exact-result equivalence, containment, and distance. - Add the `predicate_bbox` Divan microbenchmark. ### Microbenchmark Command: ```bash cargo bench -p vortex-geo --bench predicate_bbox -- --min-time 0.1 --sample-count 10 ``` The benchmark evaluates 8,192 points against a 128-vertex constant polygon. Median results: | Predicate / workload | Exact | Bounding-box pre-check | Change | | --- | ---: | ---: | ---: | | `contains`, disjoint | 689.0 us | 16.87 us | 40.8x faster | | `contains`, candidate | 674.4 us | 667.4 us | 1.0% faster | | `intersects`, disjoint | 670.5 us | 16.79 us | 39.9x faster | | `intersects`, candidate | 653.5 us | 670.4 us | 2.6% slower | --------- Signed-off-by: Nemo Yu <zyu379@wisc.edu>
develop
16 minutes ago
perf(onpair): adopt onpair 0.2 storage-backed dictionary and safety-only validation (#9117) ## Rationale for this change `onpair` 0.2 allows to build a `CompactDictionary` over caller-owned buffers, and `validate_safety`, which checks only the safety invariants rather than full semantic well-formedness. Adopting both makes OnPair file reads **1.25x faster**. ## What changes are included in this PR? - Bump `onpair` 0.1.1 → 0.2.0. - `OnPairData` memoizes a `CompactDictionary<OnPairDictionaryStorage>` over the existing Vortex buffers (no copying), and validates it with `validate_safety`. - New `OnPair::try_new_with_data` lets `OnPairScheme::compress` carry that cache through the child-compression rebuild instead of discarding it. - Replaces the local `DEFAULT_DICT12_CONFIG` with the re-exported `onpair::DEFAULT_CONFIG` (identical values), and drops the redundant `OnPairData::len`. `string-bench` `vortex` suite, median of 3 interleaved runs, FSST as an untouched control: | `read` (ms) | develop | this PR | Change | | --- | --- | --- | ---: | | `clickbench/URL/shard-0` `onpair-12` | 12.95 | 10.36 | **−20.0%** | | `tpch/l_comment` `onpair-12` | 32.96 | 26.29 | **−20.2%** | | `clickbench/URL/shard-0` `fsst` | 17.41 | 17.35 | −0.3% | | `tpch/l_comment` `fsst` | 26.63 | 26.32 | −1.2% | Encoded size is byte-identical; write times are unchanged. ## What APIs are changed? Are there any user-facing changes? None. The on-disk format is unchanged (golden tests pass unmodified), and `vortex-onpair` is gated behind `unstable_encodings` with `vortex-btrblocks` as its only in-tree consumer. Within that crate, `OnPairData::new` loses its `len` parameter, `OnPairData::len` / `is_empty` are removed, and `OnPair::try_new_with_data` is new. --------- Signed-off-by: Francesco Gargiulo <gargiulo.fr@gmail.com> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
develop
39 minutes ago
Merge branch 'develop' into nemo/geo-bbox-short-circuit
nemo/geo-bbox-short-circuit
41 minutes ago

Latest Branches

CodSpeed Performance Gauge
+34%
Better fixed-width buffer filtering#8723
23 minutes ago
316f5b4
rk/filterbuffer
CodSpeed Performance Gauge
+12%
33 minutes ago
5bd1630
ct/benchmark-labels
CodSpeed Performance Gauge
0%
2 days ago
8f10bf2
ct/scalar-fn-factory-ext
© 2026 CodSpeed Technology
Home Terms Privacy Docs