Pass execution context through list view rebuild#8274
Conversation
9514a28 to
d85c62e
Compare
Merging this PR will not alter performance
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | decompress_rd[f64, (100000, 0.1)] |
669.2 µs | 1,023.4 µs | -34.62% |
| ❌ | Simulation | decompress_rd[f64, (100000, 0.01)] |
669.2 µs | 1,023.4 µs | -34.61% |
| ❌ | Simulation | chunked_bool_canonical_into[(1000, 10)] |
31.6 µs | 46.6 µs | -32.13% |
| ❌ | Simulation | decompress_rd[f32, (100000, 0.1)] |
413.4 µs | 585.6 µs | -29.41% |
| ❌ | Simulation | decompress_rd[f32, (100000, 0.01)] |
413.4 µs | 585.6 µs | -29.41% |
| ❌ | Simulation | i32_small_overlapping |
42.5 µs | 57.8 µs | -26.44% |
| ❌ | Simulation | varbinview_zip_block_mask |
2.9 ms | 3.7 ms | -21.58% |
| ❌ | Simulation | chunked_varbinview_into_canonical[(1000, 10)] |
177.2 µs | 213.6 µs | -17.04% |
| ❌ | Simulation | chunked_varbinview_canonical_into[(100, 100)] |
274.5 µs | 309.9 µs | -11.41% |
| ❌ | Simulation | varbinview_zip_fragmented_mask |
6.1 ms | 6.9 ms | -11.31% |
| ❌ | Simulation | decompress_rd[f64, (10000, 0.01)] |
125.6 µs | 141.5 µs | -11.22% |
| ❌ | Simulation | decompress_rd[f64, (10000, 0.0)] |
125.6 µs | 141.5 µs | -11.18% |
| ❌ | Simulation | decompress_rd[f64, (10000, 0.1)] |
126 µs | 141.9 µs | -11.16% |
| ⚡ | Simulation | bitwise_not_vortex_buffer_mut[128] |
275.3 ns | 216.9 ns | +26.89% |
| ⚡ | Simulation | bitwise_not_vortex_buffer_mut[1024] |
336.9 ns | 278.6 ns | +20.94% |
| ⚡ | Simulation | take_10k_first_chunk_only |
272.3 µs | 227.4 µs | +19.77% |
| ⚡ | Simulation | take_10k_dispersed |
285.8 µs | 240.9 µs | +18.67% |
| ⚡ | Simulation | bitwise_not_vortex_buffer_mut[2048] |
400.6 ns | 342.2 ns | +17.05% |
| ⚡ | Simulation | patched_take_10k_adversarial |
260.4 µs | 230 µs | +13.23% |
| ⚡ | Simulation | patched_take_10k_first_chunk_only |
303.9 µs | 273.5 µs | +11.12% |
| ... | ... | ... | ... | ... | ... |
ℹ️ 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 ct/rebuild-execute (03c6d2f) with develop (e06d80b)
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
d85c62e to
03c6d2f
Compare
Polar Signals Profiling ResultsLatest Run
Powered by Polar Signals Cloud |
Benchmarks: PolarSignals ProfilingVortex (geomean): 1.102x ❌ How to read Verdict and Engines
datafusion / vortex-file-compressed (1.102x ❌, 0↑ 6↓)
No file size changes detected. |
Benchmarks: FineWeb NVMeVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.993x ➖, 0↑ 0↓)
datafusion / vortex-compact (1.006x ➖, 0↑ 0↓)
datafusion / parquet (0.997x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (0.973x ➖, 1↑ 0↓)
duckdb / vortex-compact (1.013x ➖, 0↑ 0↓)
duckdb / parquet (1.018x ➖, 0↑ 0↓)
File Size Changes (1 files changed, -0.0% overall, 0↑ 1↓)
Totals:
|
Benchmarks: TPC-H SF=1 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.178x ❌, 0↑ 22↓)
datafusion / vortex-compact (1.154x ❌, 0↑ 21↓)
datafusion / parquet (1.088x ➖, 0↑ 10↓)
datafusion / arrow (1.172x ❌, 0↑ 18↓)
duckdb / vortex-file-compressed (1.117x ❌, 0↑ 18↓)
duckdb / vortex-compact (1.106x ❌, 0↑ 14↓)
duckdb / parquet (1.071x ➖, 0↑ 5↓)
duckdb / duckdb (1.077x ➖, 0↑ 5↓)
File Size Changes (9 files changed, +0.0% overall, 5↑ 4↓)
Totals:
|
Benchmarks: TPC-DS SF=1 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.995x ➖, 0↑ 1↓)
datafusion / vortex-compact (0.997x ➖, 1↑ 1↓)
datafusion / parquet (1.002x ➖, 1↑ 1↓)
duckdb / vortex-file-compressed (1.001x ➖, 1↑ 2↓)
duckdb / vortex-compact (1.000x ➖, 1↑ 0↓)
duckdb / parquet (1.004x ➖, 1↑ 1↓)
duckdb / duckdb (0.994x ➖, 0↑ 0↓)
File Size Changes (5 files changed, -0.0% overall, 1↑ 4↓)
Totals:
|
Benchmarks: FineWeb S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.183x ➖, 0↑ 1↓)
datafusion / vortex-compact (1.077x ➖, 0↑ 1↓)
datafusion / parquet (1.288x ➖, 0↑ 4↓)
duckdb / vortex-file-compressed (1.071x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.056x ➖, 0↑ 0↓)
duckdb / parquet (1.090x ➖, 0↑ 0↓)
|
Benchmarks: Statistical and Population GeneticsVerdict: No clear signal (low confidence) How to read Verdict and Engines
duckdb / vortex-file-compressed (0.997x ➖, 0↑ 1↓)
duckdb / vortex-compact (1.008x ➖, 0↑ 0↓)
duckdb / parquet (1.000x ➖, 0↑ 0↓)
File Size Changes (1 files changed, -0.0% overall, 0↑ 1↓)
Totals:
|
Benchmarks: Random AccessVortex (geomean): 0.931x ➖ How to read Verdict and Engines
unknown / unknown (1.002x ➖, 12↑ 4↓)
|
Benchmarks: TPC-H SF=10 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.000x ➖, 0↑ 0↓)
datafusion / vortex-compact (0.992x ➖, 0↑ 0↓)
datafusion / parquet (0.995x ➖, 1↑ 0↓)
datafusion / arrow (0.999x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (0.991x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.999x ➖, 0↑ 0↓)
duckdb / parquet (0.998x ➖, 1↑ 0↓)
duckdb / duckdb (0.998x ➖, 0↑ 0↓)
File Size Changes (26 files changed, +0.0% overall, 14↑ 12↓)
Totals:
|
Benchmarks: Clickbench on NVMEVerdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.029x ➖, 2↑ 4↓)
datafusion / parquet (1.036x ➖, 1↑ 1↓)
duckdb / vortex-file-compressed (1.063x ➖, 1↑ 8↓)
duckdb / parquet (1.002x ➖, 1↑ 0↓)
duckdb / duckdb (1.014x ➖, 1↑ 0↓)
File Size Changes (104 files changed, +0.0% overall, 53↑ 51↓)
Totals:
|
|
I dont trust codspeed here |
Benchmarks: Appian on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.092x ➖, 0↑ 2↓)
datafusion / parquet (1.079x ➖, 0↑ 2↓)
duckdb / vortex-file-compressed (1.063x ➖, 0↑ 1↓)
duckdb / parquet (1.051x ➖, 0↑ 0↓)
duckdb / duckdb (1.048x ➖, 0↑ 0↓)
File Size Changes (4 files changed, -0.0% overall, 0↑ 4↓)
Totals:
|
Benchmarks: TPC-H SF=1 on S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.151x ➖, 0↑ 4↓)
datafusion / vortex-compact (1.102x ➖, 0↑ 3↓)
datafusion / parquet (1.083x ➖, 0↑ 3↓)
duckdb / vortex-file-compressed (1.133x ➖, 0↑ 3↓)
duckdb / vortex-compact (1.105x ➖, 0↑ 1↓)
duckdb / parquet (1.070x ➖, 0↑ 0↓)
|
Benchmarks: CompressionVortex (geomean): 1.000x ➖ How to read Verdict and Engines
unknown / unknown (1.011x ➖, 0↑ 1↓)
|
Benchmarks: TPC-H SF=10 on S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.084x ➖, 0↑ 4↓)
datafusion / vortex-compact (1.158x ➖, 0↑ 2↓)
datafusion / parquet (1.035x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (1.105x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.165x ➖, 0↑ 4↓)
duckdb / parquet (1.118x ➖, 0↑ 1↓)
|
| bencher.with_inputs(|| &list_view).bench_refs(|list_view| { | ||
| list_view.rebuild( | ||
| ListViewRebuildMode::MakeZeroCopyToList, | ||
| &mut SESSION.create_execution_ctx(), |
There was a problem hiding this comment.
you will bench creating this
| .reset_offsets(false, ctx) | ||
| .vortex_expect("This can't fail"); |
There was a problem hiding this comment.
it used to be the case that it couldnt fail, but now that there is execution in it I guess it can fail
Summary
TODO is there a tracking issue for deprecating the old to_canonical path?
Threads the
ExecutionCtxthroughListView::rebuildand rewrites a bunch of tests to not useLEGACY_SESSION.API Changes
A few places that now get an
ExecutionCtxpassed through them.Testing
There's no semantic change so the existing tests should be fine.