Decouple optional features from pulling vortex-file features for top crate#8642
Conversation
Signed-off-by: Adam Gutglick <adam@spiraldb.com>
vortex-file features for top crate
Signed-off-by: Adam Gutglick <adam@spiraldb.com>
Merging this PR will not alter performance
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | chunked_bool_canonical_into[(1000, 10)] |
22.6 µs | 26.8 µs | -15.84% |
| ❌ | Simulation | chunked_varbinview_into_canonical[(100, 100)] |
271.6 µs | 306.4 µs | -11.36% |
| ⚡ | Simulation | chunked_varbinview_opt_canonical_into[(1000, 10)] |
206.3 µs | 169.6 µs | +21.59% |
| ⚡ | Simulation | chunked_varbinview_into_canonical[(1000, 10)] |
205.5 µs | 169.3 µs | +21.39% |
| ⚡ | Simulation | chunked_varbinview_opt_into_canonical[(1000, 10)] |
219.6 µs | 183.4 µs | +19.73% |
| ⚡ | WallTime | cuda/bitpacked_u8/unpack/3bw[100M] |
353.2 µs | 300 µs | +17.72% |
| ⚡ | Simulation | compact_sliced[(4096, 90)] |
866.7 ns | 779.2 ns | +11.23% |
| ⚡ | Simulation | encode_varbin[(1000, 2)] |
152.9 µs | 138.7 µs | +10.19% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing adamg/decouple-tokio-and-file-feature (8ebcf6a) with develop (b7b1408)
Footnotes
-
4 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. ↩
Rationale for this change
vortex-filespull a lot of encodings which makes it a very big dependency.Some systems only need the core APIs, but enabling "tokio", "zstd" or "object-store" currently pulls in the full
vortex-file.What changes are included in this PR?
Make the features of "vortex" use a weak link to "vortex-file", so it doesn't pull it in by default.
What APIs are changed? Are there any user-facing changes?
Some feature configurations will require adjustment.