Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
166 commits
Select commit Hold shift + click to select a range
fef191d
Add the RowFn scalar function framework
connortsui20 Aug 7, 2026
ae099e8
Benchmark the row executor and the null strategies
connortsui20 Aug 7, 2026
b324f3e
Port the numeric binary kernels to RowFn
connortsui20 Aug 7, 2026
aebe3ca
Port the tensor scalar functions to RowFn
connortsui20 Aug 7, 2026
6c13e85
Port the geo predicates to RowFn
connortsui20 Aug 7, 2026
b541d4b
Record the row scalar function research and handoff notes
connortsui20 Aug 7, 2026
ea58061
Fix RowFn documentation checks
connortsui20 Aug 7, 2026
66b8742
Record RowFn regression and landing plan
connortsui20 Aug 7, 2026
02beb2d
Port owned RowFn numeric execution
connortsui20 Aug 7, 2026
ecb3826
Record RowFn x86 vectorization research
connortsui20 Aug 7, 2026
d0a3186
Clarify RowFn compiler ablation evidence
connortsui20 Aug 7, 2026
53fff33
Record completed RowFn Copy ablation
connortsui20 Aug 7, 2026
0a0ad0d
Add the RowFn scalar function framework
connortsui20 Aug 8, 2026
89fd28b
Execute primitive numeric operators with RowFn
connortsui20 Aug 8, 2026
59c4578
Add focused RowFn executor benchmarks
connortsui20 Aug 8, 2026
5c02036
Refine RowFn execution contracts
connortsui20 Aug 8, 2026
a236e0b
Make RowFn kernel arguments self-contained
connortsui20 Aug 8, 2026
f4617a2
Merge the cleaned RowFn API
connortsui20 Aug 8, 2026
69607ed
Elide validated RowFn input bounds checks
connortsui20 Aug 8, 2026
892717f
Optimize RowFn tensor and spatial row access
connortsui20 Aug 8, 2026
4c93644
Restore mixed-constant RowFn performance
connortsui20 Aug 9, 2026
bdf95a7
Document RowFn design and performance handoff
connortsui20 Aug 9, 2026
61410ef
Avoid RowFn overhead when resetting list offsets
connortsui20 Aug 9, 2026
f9dfde7
perf: reuse binary scalar function ID
connortsui20 Aug 9, 2026
7baa9fa
perf: decode masked tensor values directly
connortsui20 Aug 9, 2026
7908685
docs: record validated RowFn performance fixes
connortsui20 Aug 9, 2026
309039f
docs: record native RowFn codegen findings
connortsui20 Aug 9, 2026
6b76c2e
docs: validate the offsets fix on native x86
connortsui20 Aug 9, 2026
8946803
docs: compare RowFn with native CPU codegen
connortsui20 Aug 9, 2026
7bfbdde
docs: separate RowFn setup from loop throughput
connortsui20 Aug 9, 2026
2b2079d
docs: record current list offset benchmark
connortsui20 Aug 9, 2026
ec44dbd
docs: validate native RowFn throughput
connortsui20 Aug 9, 2026
07dbbf1
docs: record rejected validity fast path
connortsui20 Aug 9, 2026
001d893
docs: update focused ablation branch state
connortsui20 Aug 9, 2026
232b514
docs: focus remaining work on native evidence
connortsui20 Aug 9, 2026
13afa1d
docs: isolate the native u8 multiply gap
connortsui20 Aug 9, 2026
1f822e7
Address RowFn review findings
connortsui20 Aug 9, 2026
065a727
docs: update RowFn review handoff
connortsui20 Aug 9, 2026
3dbe279
Benchmark primitive comparison shapes
connortsui20 Aug 9, 2026
8128137
Execute primitive comparisons with RowFn
connortsui20 Aug 9, 2026
f9b223d
Document primitive comparison RowFn results
connortsui20 Aug 9, 2026
9bed9c9
Fix RowFn research spell check
connortsui20 Aug 9, 2026
ef3fc1c
Document comparison benchmark simulation results
connortsui20 Aug 9, 2026
443aed0
Make uninitialized RowFn writes explicit
connortsui20 Aug 10, 2026
833632a
Update RowFn session handoff
connortsui20 Aug 10, 2026
44457b7
Harden RowFn element and sink contracts
connortsui20 Aug 10, 2026
5204fb2
Fix RowFn batch boundary and retry behavior
connortsui20 Aug 10, 2026
38814c7
Document RowFn review follow-up
connortsui20 Aug 10, 2026
e85d65c
Polish RowFn contracts and tests
connortsui20 Aug 10, 2026
a2709dc
Restore early RowFn sink decline
connortsui20 Aug 10, 2026
1993f22
Tighten RowFn batch fast paths
connortsui20 Aug 10, 2026
7814a2a
Defer encoded RowFn errors through valid rows
connortsui20 Aug 10, 2026
6714a42
Cover RowFn batch strategy contracts
connortsui20 Aug 10, 2026
443ef2d
Clarify the RowFn sink finish proof
connortsui20 Aug 10, 2026
d20e898
Document RowFn target branch gate
connortsui20 Aug 10, 2026
1ce3f1e
Remove unreachable deferred sink results
connortsui20 Aug 10, 2026
d209fcf
Record RowFn upstream gate results
connortsui20 Aug 10, 2026
562109b
Preserve RowFn performance evidence
connortsui20 Aug 11, 2026
b45e9d7
Add RowFn boundary regression tests
connortsui20 Aug 11, 2026
6fc726a
Validate RowFn kernel outputs at the boundary
connortsui20 Aug 11, 2026
c027963
Finalize RowFn API decisions
connortsui20 Aug 11, 2026
18c7093
Harden RowFn sink and adapter contracts
connortsui20 Aug 11, 2026
ee83291
Generalize indexed RowFn tuple sources
connortsui20 Aug 11, 2026
33f9c34
Automate RowFn benchmark comparisons
connortsui20 Aug 11, 2026
b1dcb83
Handle changing benchmark inventories
connortsui20 Aug 11, 2026
dfd1d4c
Cover invalid encoded RowFn reductions
connortsui20 Aug 11, 2026
eb4e035
Validate encoded RowFn output validity
connortsui20 Aug 11, 2026
90a97b3
Clarify explicit RowFn adoption
connortsui20 Aug 11, 2026
878d22f
Tighten checked arithmetic contracts
connortsui20 Aug 11, 2026
45aa5a3
Preserve containment with non-finite bounds
connortsui20 Aug 11, 2026
54f8efd
Share the RowFn vtable adapter
connortsui20 Aug 11, 2026
e7c8977
Document primitive comparison paths
connortsui20 Aug 11, 2026
b1ec2f3
Validate tensor row storage at runtime
connortsui20 Aug 11, 2026
a50f375
Use the shared RowFn vtable in benchmarks
connortsui20 Aug 11, 2026
2d3cf47
Avoid allocating numeric execution arguments
connortsui20 Aug 11, 2026
ee0c12b
Polish the RowFn vtable adapter
connortsui20 Aug 11, 2026
882160b
Enforce LaneZip length equality in release builds
connortsui20 Aug 11, 2026
e2f4a2b
Repair RowFn benchmark revision comparisons
connortsui20 Aug 11, 2026
2029bef
Explain signed multiplication overflow probes
connortsui20 Aug 11, 2026
8d3357a
Polish primitive comparison execution
connortsui20 Aug 11, 2026
409dd4f
fixup! Execute tensor L2 norm with RowFn
connortsui20 Aug 11, 2026
9354a25
fixup! Execute tensor product functions with RowFn
connortsui20 Aug 11, 2026
10977c4
fixup! Execute tensor L2 norm with RowFn
connortsui20 Aug 11, 2026
15fef92
fixup! Exercise both primitive comparison paths
connortsui20 Aug 11, 2026
b05b965
fixup! Execute spatial predicates with RowFn
connortsui20 Aug 11, 2026
3857096
Merge remote-tracking branch 'origin/develop' into ct/row-fn
connortsui20 Aug 11, 2026
0650a3f
Merge remote-tracking branch 'origin/develop' into ct/row-fn
connortsui20 Aug 11, 2026
7c1851d
Merge remote-tracking branch 'origin/develop' into ct/row-fn
connortsui20 Aug 11, 2026
4c7c4b9
Simplify the RowFn public API
connortsui20 Aug 11, 2026
83037fe
Avoid cloning primitive comparison constants
connortsui20 Aug 11, 2026
da911cd
Update tensor L2 for the RowFn API
connortsui20 Aug 11, 2026
de47545
Update tensor products for the RowFn API
connortsui20 Aug 11, 2026
f56bf93
Update spatial distance for RowFn views
connortsui20 Aug 11, 2026
bae08f6
Use the blanket RowFn vtable for spatial predicates
connortsui20 Aug 11, 2026
1d9fba6
Use the blanket RowFn vtable in benchmarks
connortsui20 Aug 11, 2026
7b3c404
Finish the RowFn umbrella cleanup
connortsui20 Aug 11, 2026
f7abcba
Define experimental RowFn contracts
connortsui20 Aug 12, 2026
4552c18
Clarify RowFn retry preparation
connortsui20 Aug 12, 2026
ca222dc
Tighten experimental RowFn documentation
connortsui20 Aug 12, 2026
1e8455d
Address RowFn API review feedback
connortsui20 Aug 13, 2026
209767d
Expose sink row counts
connortsui20 Aug 13, 2026
e35d968
Polish experimental RowFn internals
connortsui20 Aug 13, 2026
35f7453
Make null-tolerant decoding opt in
connortsui20 Aug 13, 2026
56ca4a8
Polish RowFn visitor API
connortsui20 Aug 13, 2026
06a86d9
Clarify RowFn length validation docs
connortsui20 Aug 13, 2026
a061da6
Implement RowFn batch execution
connortsui20 Aug 12, 2026
edab9a7
Clarify RowFn kernel invocation docs
connortsui20 Aug 12, 2026
893a1cf
Harden RowFn execution edge cases
connortsui20 Aug 12, 2026
76c5988
Tighten RowFn executor documentation
connortsui20 Aug 12, 2026
83355ff
Adapt RowFn framework to explicit contracts
connortsui20 Aug 13, 2026
05fa94b
Use sink row counts directly
connortsui20 Aug 13, 2026
d5499fb
Simplify RowFn internal visibility
connortsui20 Aug 13, 2026
11ce2c4
Restore decoded-length regression coverage
connortsui20 Aug 13, 2026
219e00a
Remove unused RowFn batch array access
connortsui20 Aug 13, 2026
8be707f
Execute primitive numeric operators with RowFn
connortsui20 Aug 10, 2026
f957847
Tighten checked arithmetic contracts
connortsui20 Aug 11, 2026
8c203cf
Benchmark primitive RowFn execution shapes
connortsui20 Aug 11, 2026
09f9721
Use generic execution arguments for numeric rows
connortsui20 Aug 11, 2026
6f891c2
Use per-row terminology in numeric benchmarks
connortsui20 Aug 11, 2026
b7eb750
Opt numeric operators into unstable RowFn
connortsui20 Aug 12, 2026
f6780e2
Execute primitive comparisons with RowFn
connortsui20 Aug 10, 2026
0728082
Exercise both primitive comparison paths
connortsui20 Aug 11, 2026
415deb1
Benchmark primitive comparison shapes
connortsui20 Aug 9, 2026
507d0bd
Document primitive comparison dispatch contracts
connortsui20 Aug 11, 2026
29a01b5
Use generic execution arguments for comparisons
connortsui20 Aug 11, 2026
f4feded
Avoid cloning primitive comparison constants
connortsui20 Aug 11, 2026
30e02d3
Document primitive RowFn dispatch policy
connortsui20 Aug 12, 2026
67e1328
Declare primitive comparison fallibility
connortsui20 Aug 13, 2026
8c215b8
Compile columnar comparison policy only on x86
connortsui20 Aug 13, 2026
a2b4dc0
Add encoding-aware RowFn reductions
connortsui20 Aug 13, 2026
7eb1078
Execute tensor L2 norm with RowFn
connortsui20 Aug 11, 2026
8d707ad
Update tensor L2 for the RowFn API
connortsui20 Aug 11, 2026
0beffe0
Opt tensor L2 into unstable RowFn
connortsui20 Aug 12, 2026
35e9945
Declare tensor norm fallibility
connortsui20 Aug 13, 2026
6c84e6e
Opt tensor rows into null-tolerant decoding
connortsui20 Aug 13, 2026
4ddec3c
Execute tensor product functions with RowFn
connortsui20 Aug 11, 2026
87bd382
Update tensor products for the RowFn API
connortsui20 Aug 11, 2026
659aa97
Opt tensor products into unstable RowFn
connortsui20 Aug 12, 2026
c3ed052
Declare tensor product fallibility
connortsui20 Aug 13, 2026
324fb6b
Execute spatial distance with RowFn
connortsui20 Aug 11, 2026
365392e
Update spatial distance for RowFn views
connortsui20 Aug 11, 2026
2c24de4
Opt spatial distance into unstable RowFn
connortsui20 Aug 12, 2026
d86f86f
Preflight null-tolerant geometry decoding
connortsui20 Aug 13, 2026
7c571ca
Execute spatial predicates with RowFn
connortsui20 Aug 11, 2026
4774ba5
Use the blanket RowFn vtable for spatial predicates
connortsui20 Aug 11, 2026
c0f5e8e
Benchmark prepared contains reuse
connortsui20 Aug 12, 2026
0ceaf7d
Automate RowFn benchmark comparisons
connortsui20 Aug 11, 2026
e24d2a8
Add focused RowFn framework benchmarks
connortsui20 Aug 11, 2026
5c211e1
Reuse RowFn benchmark builds safely
connortsui20 Aug 11, 2026
9850c89
Use the blanket RowFn vtable in benchmarks
connortsui20 Aug 11, 2026
5ad8fb8
Cover repository RowFn benchmark paths
connortsui20 Aug 12, 2026
b416a1f
Adapt RowFn benchmarks to explicit contracts
connortsui20 Aug 13, 2026
9c0dac2
Use sink row counts in benchmarks
connortsui20 Aug 13, 2026
071a9fd
Sync the RowFn umbrella with the focused stack
connortsui20 Aug 13, 2026
479a06f
Implement the RowFn execution backend
connortsui20 Aug 14, 2026
b76cf19
Refine RowFn row execution
connortsui20 Aug 14, 2026
8d7edf3
Split RowFn batch execution by strategy
connortsui20 Aug 14, 2026
413796d
Execute primitive numeric operators with RowFn
connortsui20 Aug 14, 2026
c057706
Execute primitive comparisons with RowFn
connortsui20 Aug 14, 2026
b655d61
Execute tensor L2 norm with RowFn
connortsui20 Aug 14, 2026
2f55638
Execute tensor product functions with RowFn
connortsui20 Aug 14, 2026
2a2d8ae
Execute spatial distance with RowFn
connortsui20 Aug 14, 2026
b37103b
Execute spatial predicates with RowFn
connortsui20 Aug 14, 2026
97b5a99
Automate RowFn benchmark comparisons
connortsui20 Aug 14, 2026
5c302bc
Record the final RowFn framework investigation
connortsui20 Aug 14, 2026
3232b8a
Sync the RowFn umbrella with the focused stack
connortsui20 Aug 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,13 @@ flatbuffers = "25.2.10"
fsst-rs = "0.6.0"
futures = { version = "0.3.31", default-features = false }
fuzzy-matcher = "0.3"
geo = "0.31.0"
# `vortex-spatial`'s `contains_route` transcribes geo's `impl_contains_from_relate!` dispatch
# table, so any bump that moves a row silently changes containment verdicts. The tests stay green
# wherever relate and the direct algorithm agree. Pinned exactly so that taking any new geo,
# patch releases included, is a deliberate edit of this line that re-verifies the table; a caret
# requirement would let `cargo update` (or automated lockfile maintenance) take 0.31.x with no diff
# to review. See `vortex-spatial/src/scalar_fn/contains.rs`.
geo = "=0.31.0"
geo-traits = "0.3.0"
geo-types = "0.7.19"
geoarrow = "0.8.0"
Expand Down
8 changes: 8 additions & 0 deletions encodings/runend/src/trace_tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,14 @@ fn trace_compare_on_runend() -> VortexResult<()> {
iter 0 current=vortex.runend(bool, len=9) builder_active=false
execute_until target=AnyCanonical root=vortex.binary(bool, len=3)
iter 0 current=vortex.binary(bool, len=3) builder_active=false
optimize root=vortex.slice(i32, len=1) session=false
reduce_parent static:SliceReduceAdaptor(Constant) slot=0 parent=vortex.slice(i32, len=1) child=vortex.constant(i32, len=3) -> vortex.constant(i32, len=1)
done output=vortex.constant(i32, len=1)
execute_until target=AnyCanonical root=vortex.constant(i32, len=1)
iter 0 current=vortex.constant(i32, len=1) builder_active=false
Done array=vortex.primitive(i32, len=1)
iter 1 current=vortex.primitive(i32, len=1) builder_active=false
return output=vortex.primitive(i32, len=1)
Done array=vortex.bool(bool, len=3)
iter 1 current=vortex.bool(bool, len=3) builder_active=false
return output=vortex.bool(bool, len=3)
Expand Down
Loading
Loading