feat(buffer): add allocator-backed storage - #9668
Conversation
0f5a07e to
4911c36
Compare
Merging this PR will regress 28 benchmarks
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | bitwise_and_vortex_buffer[1024] |
5.1 µs | 9.9 µs | -48.41% |
| ❌ | Simulation | bitwise_and_vortex_buffer[2048] |
5.5 µs | 10.1 µs | -45.52% |
| ❌ | Simulation | execute_scalar_struct_simple |
111.4 µs | 167.6 µs | -33.53% |
| ❌ | Simulation | bitwise_or_vortex_buffer[128] |
6.3 µs | 9.4 µs | -33.28% |
| ❌ | Simulation | bitwise_not_vortex_buffer[128] |
6.8 µs | 9.9 µs | -30.92% |
| ❌ | Simulation | bitwise_and_vortex_buffer[128] |
6.3 µs | 8.8 µs | -28.72% |
| ❌ | Simulation | collect_bool_u32_gt[1024] |
11.5 µs | 15.3 µs | -25.2% |
| ❌ | WallTime | mul_u64_nonnull_neon |
15.2 µs | 19.7 µs | -23.02% |
| ❌ | Simulation | runend_compress_u32 |
397.7 µs | 500.5 µs | -20.55% |
| ❌ | Simulation | compress[(10000, 4)] |
496.6 µs | 614.5 µs | -19.18% |
| ❌ | Simulation | non_nullable[256] |
257.6 µs | 313.5 µs | -17.83% |
| ❌ | Simulation | non_nullable[32] |
262.3 µs | 319 µs | -17.76% |
| ❌ | Simulation | nullable[256] |
258.8 µs | 314.5 µs | -17.71% |
| ❌ | Simulation | nullable[32] |
264 µs | 320.6 µs | -17.66% |
| ❌ | WallTime | mul_i64_nonnull_neon |
17.2 µs | 20.8 µs | -17.24% |
| ❌ | Simulation | bitwise_or_vortex_buffer[16384] |
12.2 µs | 14.4 µs | -15.41% |
| ❌ | Simulation | preverify_advancing_ptr_unchecked[1000] |
11.8 µs | 13.8 µs | -14.65% |
| ❌ | WallTime | multiply_shapes_neon[(16384, PerRowPerRow)] |
17.3 µs | 20.2 µs | -14.52% |
| ❌ | Simulation | take_search[(0.005, 0.05)] |
19.5 µs | 22.5 µs | -13.27% |
| ❌ | Simulation | canonicalize[256, 8] |
37.8 µs | 43.5 µs | -13.22% |
| ... | ... | ... | ... | ... | ... |
ℹ️ Only the first 20 benchmarks are displayed. Go to the app to view all benchmarks.
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing ngates/buffer-allocator-core (94c47cb) with develop (68e2aee)
Footnotes
-
106 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩
-
4 benchmarks were run, but are now archived. If they were deleted in another branch, consider rebasing to remove them from the report. Instead if they were added back, click here to restore them. ↩
Signed-off-by: Nicholas Gates <nick@nickgates.com>
4911c36 to
85d55a8
Compare
Signed-off-by: Nicholas Gates <nick@nickgates.com>
85d55a8 to
94c47cb
Compare
Summary
Add allocator-backed storage to
vortex-buffer.Design: vortex-data/rfcs#65
Changes
allocator_api2for owned buffers.bytes/Arrow interop.API Changes
Owned buffers no longer use
bytes::Bytesas storage. Thebytescrate remains for interop.