Skip to content

Plan and execute common RowFn batches in one dispatch - #10675

Draft
connortsui20 wants to merge 11 commits into
developfrom
ct/row-fn-cleanup/fused-execution
Draft

connortsui20 wants to merge 11 commits into
developfrom
ct/row-fn-cleanup/fused-execution

Conversation

@connortsui20

@connortsui20 connortsui20 commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

Tracking Issue: #9128

Summary

Combines planning and execution for eligible RowFn batches in one type dispatch. This is the shared framework layer for #10676, which contains the primitive comparison migration.

Changes

  • Borrows input arrays and available dtypes so internal callers can avoid constructing owned argument lists.
  • Classifies every input before decoding, so a later null literal can skip an earlier fallible expression or device transfer. Fallible decoders keep valid-row execution, and validity conjunction stays lazy.
  • Constructs Boolean output with its validity in the shared executor. Primitive-specific CPU and lane-width packing policies stay out of this layer.

Adds five regression cases covering invalid payloads, null short circuits, lazy division, device-backed validity, and device-backed primitive input. Rebased onto develop at a5f574e69bbf9010029f0e62ca59d56cd0c4aa6e.

Performance

Still draft. The revised framework has no fresh native performance result. Earlier EC2 experiments found compiler and layout sensitivity, including regressions, rather than a consistent framework speedup. The numbers below belong to an older framework replay and do not establish the performance of this revision.

Historical EC2 framework measurements

Ratios are the median of 21 paired candidate/baseline elapsed-time ratios. Below 1 is faster. This compares the framework alone, F 94be28140d5bd7e6b654af5e462253add2e49044, with D 0291778db36809f77ce0219bf9850506d3cba3b6.

Workload C7g NEON C6a AVX2 C7i AVX2 build C7i AVX-512 build
u64 multiply, 8,192 rows 1.732 0.979 0.992 0.998
Nullable i64 add, 32,768 rows 1.006 1.004 1.154 1.005

The actual framework pair order was imbalanced: D ran before F in 16 blocks and after it in five. Treat these figures as diagnostic observations, not reliable causal effect sizes. No speedup or regression claim for the current head follows from this table.

EC2 C7g (Neoverse V1), C6a (EPYC 7R13), and C7i (Xeon Platinum 8488C). Rust 1.99.1 / LLVM 23.1.1, bench profile with 16 CGUs and no LTO, MiMalloc, CPU 2 pinned. The same 455-case public-path microbenchmark suite ran serially across hosts, with 21 paired blocks, 10 ms per case, A/A calibration, and a separate control executable. These are microbenchmarks, not query results. C7i can dispatch to AVX-512 at runtime even in its AVX2 build.

Saved evidence is in the local investigation archive row-fn-evaluation-20261026: manifest.json, *-matrix-*-medians.csv, *-matrix-*-summary.json, and results/<host>/results/matrix-*.json.

The separately confirmed NEON comparison gains were published in #10843, which has merged. They do not measure this framework.

Prior validation at 5cf73d78f3: 241 RowFn tests and all-target, all-feature Clippy with warnings denied passed. This rebase was reviewed from source, including range-diff. Tests, builds, and benchmarks have not been rerun on the rebased head.

@connortsui20
connortsui20 added this pull request to stack #10677 October 21, 2026 15:10
@codspeed

codspeed Bot commented Oct 21, 2026 •

Copy link
Copy Markdown

Merging this PR will regress 3 benchmarks

2 warnings

⚠️ Walltime results may be unreliable

Some benchmarks used the Walltime instrument outside CodSpeed Macro Runners, which can make the results inconsistent.

Learn more about Macro Runners

See affected benchmarks

⚠️ Base and head ran on different runner types

Some benchmarks with significant performance changes were compared across different runner types, so the changes might not come from the code. Run base and head on the same runner type, or use CodSpeed Macro Runners for more stable results.

Learn more about Macro Runners

Open the report in CodSpeed to investigate

⚡ 13 improved benchmarks
❌ 3 regressed benchmarks
✅ 2188 untouched benchmarks
⏩ 370 skipped benchmarks1
🗄️ 30 archived benchmarks run2

Warning

Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
❌ Walltime deferred_bool_avx512[16384, (ConstantLhs, PartialAccepted)] 32 µs 45.4 µs -29.42%
❌ Walltime deferred_bool_avx512[16384, (Columns, PartialAccepted)] 37.6 µs 43.7 µs -13.85%
❌ Walltime starts_with_avx512[8, VarBinView] 68.4 µs 76.2 µs -10.22%
⚡ CPU Simulation bench_compare_varbin[(50000, 2)] 164.3 µs 134.2 µs +22.4%
⚡ CPU Simulation bench_compare_varbin[(50000, 64)] 166.1 µs 136.2 µs +21.95%
⚡ CPU Simulation bench_compare_sliced_dict_varbinview[(7500, 10000)] 229.7 µs 195.4 µs +17.56%
⚡ Walltime threshold_avx2[80] 3 µs 2.6 µs +15.18%
⚡ CPU Simulation bench_compare_sliced_dict_varbinview[(10000, 10000)] 235.8 µs 207.5 µs +13.66%
⚡ CPU Simulation bench_compare_sliced_dict_varbinview[(1000, 10000)] 91.5 µs 80.9 µs +13.01%
⚡ CPU Simulation filter_powerlaw_by_mostly_true[250000] 201.1 µs 179.3 µs +12.16%
⚡ CPU Simulation filter_powerlaw_by_mostly_true[100000] 79.1 µs 70.8 µs +11.7%
⚡ Walltime starts_with_neon[8, VarBin] 47.1 µs 42.2 µs +11.59%
⚡ CPU Simulation density_sweep_dense_runs[0.9] 78.4 µs 70.5 µs +11.18%
⚡ CPU Simulation filter_random_by_mostly_true[250000] 226.7 µs 204.4 µs +10.93%
⚡ CPU Simulation null_count_run_end[(10000, 1024, 0.01)] 7.2 µs 6.5 µs +10.11%
⚡ CPU Simulation null_count_run_end[(10000, 256, 0.01)] 7.2 µs 6.5 µs +10.11%

Tip

Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.


Comparing ct/row-fn-cleanup/fused-execution (7dc8a2f) with develop (9d0b790)

Open in CodSpeed

Footnotes

  1. 370 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. ↩

  2. 30 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. ↩

@connortsui20
connortsui20 force-pushed the ct/row-fn-cleanup/fused-execution branch from 55d9af7 to 178dcd8 Compare October 22, 2026 14:09
@connortsui20
connortsui20 removed this pull request from stack #10677 October 22, 2026 14:10
@connortsui20
connortsui20 changed the base branch from ct/row-fn-cleanup/output-validity to develop October 22, 2026 14:10
@connortsui20
connortsui20 force-pushed the ct/row-fn-cleanup/fused-execution branch from 178dcd8 to 5cbf00a Compare October 22, 2026 14:18
@connortsui20 connortsui20 added the changelog/performance A performance improvement label Oct 22, 2026
@connortsui20
connortsui20 added this pull request to stack #10697 October 22, 2026 15:13
@connortsui20 connortsui20 added action/bench-sql Run SQL benchmarks without Vortex Compact on this PR action/bench-spatial Run only SpatialBench SQL benchmarks on this PR labels Oct 23, 2026
@github-actions github-actions Bot removed the action/bench-sql Run SQL benchmarks without Vortex Compact on this PR label Oct 23, 2026
@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Polar Signals Profiling Results

Latest Run

Status Commit Job Attempt Link
🟢 Done 5cf73d7 clickbench-nvme 1 Explore Profiling Data
🟢 Done 5cf73d7 fineweb 1 Explore Profiling Data
🟢 Done 5cf73d7 polarsignals 1 Explore Profiling Data
🟢 Done 5cf73d7 tpch-nvme-10 1 Explore Profiling Data
🟢 Done 5cf73d7 tpch-s3 1 Explore Profiling Data
🟢 Done 5cf73d7 tpch-nvme 1 Explore Profiling Data
🟢 Done 5cf73d7 tpcds-nvme 1 Explore Profiling Data
Previous Runs (7)
Status Commit Job Attempt Link
🟢 Done 5cbf00a tpch-s3 1 Explore Profiling Data
🟢 Done 5cbf00a tpcds-nvme 1 Explore Profiling Data
🟢 Done 5cbf00a tpch-nvme-10 1 Explore Profiling Data
🟢 Done 5cbf00a polarsignals 1 Explore Profiling Data
🟢 Done 5cbf00a clickbench-nvme 1 Explore Profiling Data
🟢 Done 5cbf00a fineweb 1 Explore Profiling Data
🟢 Done 5cbf00a tpch-nvme 1 Explore Profiling Data

Powered by Polar Signals Cloud

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Benchmarks: FineWeb NVMe 📖

Commits: PR 5cf73d78 vs base a59294e3
Verdict: No clear signal (low confidence)
Attributed Vortex impact: -0.2%
Engines: DataFusion No clear signal (-2.3%, low confidence) · DuckDB No clear signal (+2.0%, low confidence)
Vortex (geomean): hot 1.000x ➖ · cold 1.036x ➖
Parquet (geomean): hot 1.001x ➖ · cold 1.006x ➖
Shifts: Parquet (control) +0.1% · Median polish +0.2%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.
  • Hot vs cold: Every measurement is run several times. The first run is reported as the cold run, and the median of the runs after it is reported as the hot run. The verdict and significance use hot runs; each target's geomean reports hot and cold beside each other where the individual runs were recorded and hot alone where they were not, the cold column shows first-run cost per row, and hot/cold is how much of each run the warm path saves. Rows whose results predate per-run reporting show only one value, taken from the value the runner reported.
  • Table cells: Each cell reads PR / base / %diff. The hot and cold columns mark a change as 🔴 slower or 🟢 faster once it clears this suite's threshold; anything smaller is noise here and is left unmarked, as is hot/cold, because a shift in the warm-up ratio is not a win or a loss by itself.

datafusion / vortex-file-compressed / ns (0.977x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
fineweb_q00/datafusion:vortex-file-compressed 7071752 / 6904037 / +2.4% 16539572 / 17293393 / -4.4% 0.43 / 0.40 / +7.1%
fineweb_q01/datafusion:vortex-file-compressed 7375130 / 8055758 / -8.4% 46146251 / 45881798 / +0.6% 0.16 / 0.18 / -9.0%
fineweb_q02/datafusion:vortex-file-compressed 9043411 / 9256510 / -2.3% 50025675 / 49871020 / +0.3% 0.18 / 0.19 / -2.6%
fineweb_q03/datafusion:vortex-file-compressed 20243162 / 20307072 / -0.3% 110358985 / 114517256 / -3.6% 0.18 / 0.18 / +3.4%
fineweb_q04/datafusion:vortex-file-compressed 66304078 / 67140125 / -1.2% 150426004 / 153437230 / -2.0% 0.44 / 0.44 / +0.7%
fineweb_q05/datafusion:vortex-file-compressed 66986274 / 67748338 / -1.1% 149883319 / 151452004 / -1.0% 0.45 / 0.45 / -0.1%
fineweb_q06/datafusion:vortex-file-compressed 19351647 / 19558984 / -1.1% 111437675 / 113185998 / -1.5% 0.17 / 0.17 / +0.5%
fineweb_q07/datafusion:vortex-file-compressed 18237013 / 18002360 / +1.3% 109497405 / 108104254 / +1.3% 0.17 / 0.17 / +0.0%
fineweb_q08/datafusion:vortex-file-compressed 9555200 / 10483864 / -8.9% 48050441 / 41646475 / +15.4% 🔴 0.20 / 0.25 / -21.0%
datafusion / parquet / ns (1.001x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
fineweb_q00/datafusion:parquet 9390778 / 9227758 / +1.8% 32439852 / 32498359 / -0.2% 0.29 / 0.28 / +2.0%
fineweb_q01/datafusion:parquet 74706882 / 73634542 / +1.5% 155972031 / 161111286 / -3.2% 0.48 / 0.46 / +4.8%
fineweb_q02/datafusion:parquet 75803530 / 74609638 / +1.6% 167651852 / 165242869 / +1.5% 0.45 / 0.45 / +0.1%
fineweb_q03/datafusion:parquet 74141812 / 75024748 / -1.2% 155879383 / 154449706 / +0.9% 0.48 / 0.49 / -2.1%
fineweb_q04/datafusion:parquet 81851604 / 82266572 / -0.5% 162914631 / 157989736 / +3.1% 0.50 / 0.52 / -3.5%
fineweb_q05/datafusion:parquet 80789260 / 81095445 / -0.4% 165907149 / 160313193 / +3.5% 0.49 / 0.51 / -3.7%
fineweb_q06/datafusion:parquet 75829359 / 76521018 / -0.9% 165464459 / 164018193 / +0.9% 0.46 / 0.47 / -1.8%
fineweb_q07/datafusion:parquet 75026308 / 74077756 / +1.3% 158329195 / 154114778 / +2.7% 0.47 / 0.48 / -1.4%
fineweb_q08/datafusion:parquet 72397406 / 74306141 / -2.6% 162684934 / 161521729 / +0.7% 0.45 / 0.46 / -3.3%
duckdb / vortex-file-compressed / ns (1.022x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
fineweb_q00/duckdb:vortex-file-compressed 2052848 / 2090224 / -1.8% 7135112 / 7045611 / +1.3% 0.29 / 0.30 / -3.0%
fineweb_q01/duckdb:vortex-file-compressed 9342215 / 9090878 / +2.8% 34857799 / 31710357 / +9.9% 0.27 / 0.29 / -6.5%
fineweb_q02/duckdb:vortex-file-compressed 10727352 / 10615704 / +1.1% 37323081 / 32955117 / +13.3% 🔴 0.29 / 0.32 / -10.8%
fineweb_q03/duckdb:vortex-file-compressed 19604097 / 19230332 / +1.9% 102734081 / 86906208 / +18.2% 🔴 0.19 / 0.22 / -13.8%
fineweb_q04/duckdb:vortex-file-compressed 67424954 / 66169736 / +1.9% 116492264 / 104174712 / +11.8% 🔴 0.58 / 0.64 / -8.9%
fineweb_q05/duckdb:vortex-file-compressed 67846012 / 65690638 / +3.3% 103598976 / 103368719 / +0.2% 0.65 / 0.64 / +3.1%
fineweb_q06/duckdb:vortex-file-compressed 19465858 / 19034616 / +2.3% 93250658 / 92464232 / +0.9% 0.21 / 0.21 / +1.4%
fineweb_q07/duckdb:vortex-file-compressed 19121620 / 18128907 / +5.5% 86760634 / 85530471 / +1.4% 0.22 / 0.21 / +4.0%
fineweb_q08/duckdb:vortex-file-compressed 5229052 / 5063812 / +3.3% 14936152 / 14046856 / +6.3% 0.35 / 0.36 / -2.9%
duckdb / parquet / ns (1.002x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
fineweb_q00/duckdb:parquet 24209066 / 23684770 / +2.2% 28071666 / 27767369 / +1.1% 0.86 / 0.85 / +1.1%
fineweb_q01/duckdb:parquet 55407212 / 54028828 / +2.6% 78297169 / 77850675 / +0.6% 0.71 / 0.69 / +2.0%
fineweb_q02/duckdb:parquet 60031682 / 60183341 / -0.3% 84104439 / 85107415 / -1.2% 0.71 / 0.71 / +0.9%
fineweb_q03/duckdb:parquet 118914964 / 119768847 / -0.7% 179617399 / 192807099 / -6.8% 0.66 / 0.62 / +6.6%
fineweb_q04/duckdb:parquet 161916804 / 160417964 / +0.9% 224179755 / 211682473 / +5.9% 0.72 / 0.76 / -4.7%
fineweb_q05/duckdb:parquet 159439208 / 163563388 / -2.5% 206438322 / 208122949 / -0.8% 0.77 / 0.79 / -1.7%
fineweb_q06/duckdb:parquet 91653060 / 89951770 / +1.9% 158143082 / 155073730 / +2.0% 0.58 / 0.58 / -0.1%
fineweb_q07/duckdb:parquet 90870925 / 93666274 / -3.0% 149154803 / 148144856 / +0.7% 0.61 / 0.63 / -3.6%
fineweb_q08/duckdb:parquet 29624003 / 29427784 / +0.7% 31457584 / 31237710 / +0.7% 0.94 / 0.94 / -0.0%

No file size changes detected.

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Benchmarks: PolarSignals Profiling 📖

Commits: PR 5cf73d78 vs base a59294e3
Vortex (geomean): hot 0.997x ➖ · cold 1.077x ➖


datafusion / vortex-file-compressed / ns (0.997x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
polarsignals_q00/datafusion:vortex-file-compressed 44615592 / 45011382 / -0.9% 89000931 / 88007719 / +1.1% 0.50 / 0.51 / -2.0%
polarsignals_q01/datafusion:vortex-file-compressed 50268804 / 50433898 / -0.3% 112574629 / 108330595 / +3.9% 0.45 / 0.47 / -4.1%
polarsignals_q02/datafusion:vortex-file-compressed 43317179 / 43567031 / -0.6% 91216377 / 84151315 / +8.4% 0.47 / 0.52 / -8.3%
polarsignals_q03/datafusion:vortex-file-compressed 54012462 / 54488600 / -0.9% 119208326 / 109979388 / +8.4% 0.45 / 0.50 / -8.5%
polarsignals_q04/datafusion:vortex-file-compressed 9129892 / 9238203 / -1.2% 50129521 / 41520899 / +20.7% 🔴 0.18 / 0.22 / -18.1%
polarsignals_q05/datafusion:vortex-file-compressed 11780602 / 11885060 / -0.9% 55698516 / 44900381 / +24.0% 🔴 0.21 / 0.26 / -20.1%
polarsignals_q06/datafusion:vortex-file-compressed 23271819 / 23257970 / +0.1% 63325580 / 56113443 / +12.9% 🔴 0.37 / 0.41 / -11.3%
polarsignals_q07/datafusion:vortex-file-compressed 11051220 / 11152574 / -0.9% 51173014 / 50312612 / +1.7% 0.22 / 0.22 / -2.6%
polarsignals_q08/datafusion:vortex-file-compressed 97427180 / 97486556 / -0.1% 164754650 / 161295449 / +2.1% 0.59 / 0.60 / -2.2%
polarsignals_q09/datafusion:vortex-file-compressed 9966431 / 9675708 / +3.0% 47904228 / 49625506 / -3.5% 0.21 / 0.19 / +6.7%

No file size changes detected.

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-H SF=1 on NVME 📖

Commits: PR 5cf73d78 vs base a59294e3
Verdict: No clear signal (low confidence)
Attributed Vortex impact: +0.2%
Engines: DataFusion No clear signal (+0.4%, low confidence) · DuckDB No clear signal (-0.1%, low confidence)
Vortex (geomean): hot 1.002x ➖ · cold 1.021x ➖
Parquet (geomean): hot 1.000x ➖ · cold 1.011x ➖
Shifts: Parquet (control) +0.0% · Median polish -0.2%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.
  • Hot vs cold: Every measurement is run several times. The first run is reported as the cold run, and the median of the runs after it is reported as the hot run. The verdict and significance use hot runs; each target's geomean reports hot and cold beside each other where the individual runs were recorded and hot alone where they were not, the cold column shows first-run cost per row, and hot/cold is how much of each run the warm path saves. Rows whose results predate per-run reporting show only one value, taken from the value the runner reported.
  • Table cells: Each cell reads PR / base / %diff. The hot and cold columns mark a change as 🔴 slower or 🟢 faster once it clears this suite's threshold; anything smaller is noise here and is left unmarked, as is hot/cold, because a shift in the warm-up ratio is not a win or a loss by itself.

datafusion / vortex-file-compressed / ns (1.003x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/datafusion:vortex-file-compressed 17469602 / 17239670 / +1.3% 42739124 / 45059292 / -5.1% 0.41 / 0.38 / +6.8%
tpch_q02/datafusion:vortex-file-compressed 17852072 / 18037313 / -1.0% 34496411 / 36095803 / -4.4% 0.52 / 0.50 / +3.6%
tpch_q03/datafusion:vortex-file-compressed 22009457 / 22544089 / -2.4% 48783034 / 47910427 / +1.8% 0.45 / 0.47 / -4.1%
tpch_q04/datafusion:vortex-file-compressed 13958716 / 13473966 / +3.6% 36807928 / 34128448 / +7.9% 0.38 / 0.39 / -3.9%
tpch_q05/datafusion:vortex-file-compressed 39836899 / 39414624 / +1.1% 67908738 / 68809902 / -1.3% 0.59 / 0.57 / +2.4%
tpch_q06/datafusion:vortex-file-compressed 9025876 / 8741713 / +3.3% 32757120 / 28308414 / +15.7% 🔴 0.28 / 0.31 / -10.8%
tpch_q07/datafusion:vortex-file-compressed 55212255 / 55336136 / -0.2% 83144482 / 77554064 / +7.2% 0.66 / 0.71 / -6.9%
tpch_q08/datafusion:vortex-file-compressed 54594910 / 54128283 / +0.9% 81880955 / 80969765 / +1.1% 0.67 / 0.67 / -0.3%
tpch_q09/datafusion:vortex-file-compressed 49253699 / 49446155 / -0.4% 79787668 / 85021416 / -6.2% 0.62 / 0.58 / +6.1%
tpch_q10/datafusion:vortex-file-compressed 20599360 / 20311979 / +1.4% 49520626 / 50836534 / -2.6% 0.42 / 0.40 / +4.1%
tpch_q11/datafusion:vortex-file-compressed 15486975 / 15609040 / -0.8% 33755639 / 33548930 / +0.6% 0.46 / 0.47 / -1.4%
tpch_q12/datafusion:vortex-file-compressed 24817435 / 25182379 / -1.4% 43890729 / 47890662 / -8.4% 0.57 / 0.53 / +7.5%
tpch_q13/datafusion:vortex-file-compressed 20627208 / 20365151 / +1.3% 41584348 / 40087673 / +3.7% 0.50 / 0.51 / -2.4%
tpch_q14/datafusion:vortex-file-compressed 15422311 / 15365403 / +0.4% 39958769 / 38079981 / +4.9% 0.39 / 0.40 / -4.3%
tpch_q15/datafusion:vortex-file-compressed 20716992 / 20817548 / -0.5% 46860124 / 47580259 / -1.5% 0.44 / 0.44 / +1.0%
tpch_q16/datafusion:vortex-file-compressed 18414520 / 18434712 / -0.1% 40970250 / 41119929 / -0.4% 0.45 / 0.45 / +0.3%
tpch_q17/datafusion:vortex-file-compressed 29656220 / 29615727 / +0.1% 59322669 / 58832361 / +0.8% 0.50 / 0.50 / -0.7%
tpch_q18/datafusion:vortex-file-compressed 37571490 / 37631104 / -0.2% 57504525 / 58168557 / -1.1% 0.65 / 0.65 / +1.0%
tpch_q19/datafusion:vortex-file-compressed 18427366 / 18701397 / -1.5% 38821435 / 40410581 / -3.9% 0.47 / 0.46 / +2.6%
tpch_q20/datafusion:vortex-file-compressed 22949989 / 22938405 / +0.1% 48603006 / 46702673 / +4.1% 0.47 / 0.49 / -3.9%
tpch_q21/datafusion:vortex-file-compressed 44192594 / 43192190 / +2.3% 74594352 / 74955652 / -0.5% 0.59 / 0.58 / +2.8%
tpch_q22/datafusion:vortex-file-compressed 11044350 / 11185959 / -1.3% 31514309 / 30048555 / +4.9% 0.35 / 0.37 / -5.9%
datafusion / parquet / ns (0.999x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/datafusion:parquet 72126867 / 71950523 / +0.2% 90510114 / 90887633 / -0.4% 0.80 / 0.79 / +0.7%
tpch_q02/datafusion:parquet 75881834 / 75918085 / -0.0% 94010456 / 92178163 / +2.0% 0.81 / 0.82 / -2.0%
tpch_q03/datafusion:parquet 83886578 / 84282890 / -0.5% 106218186 / 105895773 / +0.3% 0.79 / 0.80 / -0.8%
tpch_q04/datafusion:parquet 40939174 / 40528730 / +1.0% 59585274 / 58201706 / +2.4% 0.69 / 0.70 / -1.3%
tpch_q05/datafusion:parquet 112760589 / 112712319 / +0.0% 139739685 / 138727521 / +0.7% 0.81 / 0.81 / -0.7%
tpch_q06/datafusion:parquet 31887683 / 31995988 / -0.3% 49797099 / 49869582 / -0.1% 0.64 / 0.64 / -0.2%
tpch_q07/datafusion:parquet 114988089 / 115168669 / -0.2% 143385300 / 141942337 / +1.0% 0.80 / 0.81 / -1.2%
tpch_q08/datafusion:parquet 119358983 / 119953115 / -0.5% 148043232 / 146839207 / +0.8% 0.81 / 0.82 / -1.3%
tpch_q09/datafusion:parquet 139836247 / 141605759 / -1.2% 168270772 / 168125142 / +0.1% 0.83 / 0.84 / -1.3%
tpch_q10/datafusion:parquet 105970715 / 106348206 / -0.4% 132104031 / 131421247 / +0.5% 0.80 / 0.81 / -0.9%
tpch_q11/datafusion:parquet 60963438 / 61561183 / -1.0% 81984369 / 81266688 / +0.9% 0.74 / 0.76 / -1.8%
tpch_q12/datafusion:parquet 65677108 / 65370161 / +0.5% 85293257 / 82652763 / +3.2% 0.77 / 0.79 / -2.6%
tpch_q13/datafusion:parquet 147579481 / 147103482 / +0.3% 168493066 / 167390221 / +0.7% 0.88 / 0.88 / -0.3%
tpch_q14/datafusion:parquet 47828490 / 47782441 / +0.1% 72963998 / 71674810 / +1.8% 0.66 / 0.67 / -1.7%
tpch_q15/datafusion:parquet 74814728 / 75278308 / -0.6% 97849434 / 95006286 / +3.0% 0.76 / 0.79 / -3.5%
tpch_q16/datafusion:parquet 43798708 / 44158917 / -0.8% 61081205 / 60856181 / +0.4% 0.72 / 0.73 / -1.2%
tpch_q17/datafusion:parquet 124389698 / 123815188 / +0.5% 150223310 / 148002549 / +1.5% 0.83 / 0.84 / -1.0%
tpch_q18/datafusion:parquet 124395085 / 123897428 / +0.4% 145015711 / 145742173 / -0.5% 0.86 / 0.85 / +0.9%
tpch_q19/datafusion:parquet 57865902 / 58478981 / -1.0% 86387434 / 84343331 / +2.4% 0.67 / 0.69 / -3.4%
tpch_q20/datafusion:parquet 79825474 / 79914682 / -0.1% 105739014 / 102207993 / +3.5% 0.75 / 0.78 / -3.4%
tpch_q21/datafusion:parquet 117122688 / 116301828 / +0.7% 142104762 / 141991219 / +0.1% 0.82 / 0.82 / +0.6%
tpch_q22/datafusion:parquet 51782663 / 51881357 / -0.2% 68740256 / 67245251 / +2.2% 0.75 / 0.77 / -2.4%
duckdb / vortex-file-compressed / ns (1.001x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/duckdb:vortex-file-compressed 9427541 / 9288627 / +1.5% 21048742 / 18525566 / +13.6% 🔴 0.45 / 0.50 / -10.7%
tpch_q02/duckdb:vortex-file-compressed 14804697 / 15060375 / -1.7% 24001687 / 23266289 / +3.2% 0.62 / 0.65 / -4.7%
tpch_q03/duckdb:vortex-file-compressed 18114502 / 18036145 / +0.4% 33957051 / 32826437 / +3.4% 0.53 / 0.55 / -2.9%
tpch_q04/duckdb:vortex-file-compressed 12272727 / 12024552 / +2.1% 25216619 / 24822028 / +1.6% 0.49 / 0.48 / +0.5%
tpch_q05/duckdb:vortex-file-compressed 20151502 / 20278379 / -0.6% 32432965 / 31349460 / +3.5% 0.62 / 0.65 / -3.9%
tpch_q06/duckdb:vortex-file-compressed 4556239 / 4665711 / -2.3% 13960641 / 13259287 / +5.3% 0.33 / 0.35 / -7.3%
tpch_q07/duckdb:vortex-file-compressed 23701243 / 23567502 / +0.6% 39726634 / 38379680 / +3.5% 0.60 / 0.61 / -2.8%
tpch_q08/duckdb:vortex-file-compressed 20906527 / 20899596 / +0.0% 36591244 / 35424741 / +3.3% 0.57 / 0.59 / -3.2%
tpch_q09/duckdb:vortex-file-compressed 21133275 / 21016262 / +0.6% 37471515 / 35312089 / +6.1% 0.56 / 0.60 / -5.2%
tpch_q10/duckdb:vortex-file-compressed 27193110 / 27356938 / -0.6% 41505293 / 40767440 / +1.8% 0.66 / 0.67 / -2.4%
tpch_q11/duckdb:vortex-file-compressed 7978091 / 7941835 / +0.5% 16721002 / 14407621 / +16.1% 🔴 0.48 / 0.55 / -13.4%
tpch_q12/duckdb:vortex-file-compressed 13873506 / 13846784 / +0.2% 25893470 / 24999388 / +3.6% 0.54 / 0.55 / -3.3%
tpch_q13/duckdb:vortex-file-compressed 23102547 / 23282642 / -0.8% 32085062 / 32289369 / -0.6% 0.72 / 0.72 / -0.1%
tpch_q14/duckdb:vortex-file-compressed 11599317 / 11632485 / -0.3% 23821707 / 22803078 / +4.5% 0.49 / 0.51 / -4.5%
tpch_q15/duckdb:vortex-file-compressed 8404533 / 8323853 / +1.0% 20005338 / 20059281 / -0.3% 0.42 / 0.41 / +1.2%
tpch_q16/duckdb:vortex-file-compressed 16517835 / 16528401 / -0.1% 22800143 / 23777428 / -4.1% 0.72 / 0.70 / +4.2%
tpch_q17/duckdb:vortex-file-compressed 12183149 / 11786634 / +3.4% 25330018 / 25464267 / -0.5% 0.48 / 0.46 / +3.9%
tpch_q18/duckdb:vortex-file-compressed 23708341 / 23965867 / -1.1% 34359595 / 33579943 / +2.3% 0.69 / 0.71 / -3.3%
tpch_q19/duckdb:vortex-file-compressed 10262724 / 10289408 / -0.3% 22408012 / 21063085 / +6.4% 0.46 / 0.49 / -6.2%
tpch_q20/duckdb:vortex-file-compressed 13870706 / 13719473 / +1.1% 27841296 / 27647948 / +0.7% 0.50 / 0.50 / +0.4%
tpch_q21/duckdb:vortex-file-compressed 36765992 / 36819296 / -0.1% 53967334 / 54144274 / -0.3% 0.68 / 0.68 / +0.2%
tpch_q22/duckdb:vortex-file-compressed 19051566 / 19077361 / -0.1% 29483807 / 27866293 / +5.8% 0.65 / 0.68 / -5.6%
duckdb / parquet / ns (1.002x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/duckdb:parquet 48280464 / 48137470 / +0.3% 55223852 / 54739333 / +0.9% 0.87 / 0.88 / -0.6%
tpch_q02/duckdb:parquet 48992041 / 48995389 / -0.0% 55929619 / 55747395 / +0.3% 0.88 / 0.88 / -0.3%
tpch_q03/duckdb:parquet 60717596 / 60714197 / +0.0% 70441661 / 69094883 / +1.9% 0.86 / 0.88 / -1.9%
tpch_q04/duckdb:parquet 35118735 / 35145467 / -0.1% 44153567 / 45431191 / -2.8% 0.80 / 0.77 / +2.8%
tpch_q05/duckdb:parquet 67735514 / 67695743 / +0.1% 78615721 / 77753470 / +1.1% 0.86 / 0.87 / -1.0%
tpch_q06/duckdb:parquet 21809061 / 21995349 / -0.8% 28480114 / 27330155 / +4.2% 0.77 / 0.80 / -4.9%
tpch_q07/duckdb:parquet 64389967 / 64583247 / -0.3% 74046666 / 74223822 / -0.2% 0.87 / 0.87 / -0.1%
tpch_q08/duckdb:parquet 76298593 / 76374749 / -0.1% 88105460 / 86969226 / +1.3% 0.87 / 0.88 / -1.4%
tpch_q09/duckdb:parquet 108476885 / 108488747 / -0.0% 120083012 / 120209293 / -0.1% 0.90 / 0.90 / +0.1%
tpch_q10/duckdb:parquet 106555071 / 106747742 / -0.2% 119828152 / 118095944 / +1.5% 0.89 / 0.90 / -1.6%
tpch_q11/duckdb:parquet 29881290 / 29819836 / +0.2% 35694716 / 36212325 / -1.4% 0.84 / 0.82 / +1.7%
tpch_q12/duckdb:parquet 38048531 / 38032666 / +0.0% 45239050 / 44699831 / +1.2% 0.84 / 0.85 / -1.2%
tpch_q13/duckdb:parquet 175399883 / 175074624 / +0.2% 183781956 / 183059597 / +0.4% 0.95 / 0.96 / -0.2%
tpch_q14/duckdb:parquet 42764178 / 42809105 / -0.1% 52523401 / 51425075 / +2.1% 0.81 / 0.83 / -2.2%
tpch_q15/duckdb:parquet 32987777 / 33050488 / -0.2% 42191167 / 41410663 / +1.9% 0.78 / 0.80 / -2.0%
tpch_q16/duckdb:parquet 47773761 / 48141779 / -0.8% 52890960 / 53624496 / -1.4% 0.90 / 0.90 / +0.6%
tpch_q17/duckdb:parquet 48426677 / 48331948 / +0.2% 58570856 / 57681067 / +1.5% 0.83 / 0.84 / -1.3%
tpch_q18/duckdb:parquet 74726658 / 74944199 / -0.3% 81504513 / 81256471 / +0.3% 0.92 / 0.92 / -0.6%
tpch_q19/duckdb:parquet 50742388 / 47712928 / +6.3% 59810096 / 56921653 / +5.1% 0.85 / 0.84 / +1.2%
tpch_q20/duckdb:parquet 64048050 / 63888799 / +0.2% 74937804 / 73955104 / +1.3% 0.85 / 0.86 / -1.1%
tpch_q21/duckdb:parquet 107554093 / 107475083 / +0.1% 118201329 / 117129368 / +0.9% 0.91 / 0.92 / -0.8%
tpch_q22/duckdb:parquet 51017952 / 50916974 / +0.2% 59854661 / 59065604 / +1.3% 0.85 / 0.86 / -1.1%

No file size changes detected.

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Benchmarks: Clickbench on NVME 📖

Commits: PR 5cf73d78 vs base a59294e3
Verdict: No clear signal (low confidence)
Attributed Vortex impact: +0.4%
Engines: DataFusion No clear signal (+0.1%, low confidence) · DuckDB No clear signal (+0.7%, low confidence)
Vortex (geomean): hot 0.997x ➖ · cold 1.025x ➖
Parquet (geomean): hot 0.993x ➖ · cold 1.011x ➖
Shifts: Parquet (control) -0.7% · Median polish -0.2%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.
  • Hot vs cold: Every measurement is run several times. The first run is reported as the cold run, and the median of the runs after it is reported as the hot run. The verdict and significance use hot runs; each target's geomean reports hot and cold beside each other where the individual runs were recorded and hot alone where they were not, the cold column shows first-run cost per row, and hot/cold is how much of each run the warm path saves. Rows whose results predate per-run reporting show only one value, taken from the value the runner reported.
  • Table cells: Each cell reads PR / base / %diff. The hot and cold columns mark a change as 🔴 slower or 🟢 faster once it clears this suite's threshold; anything smaller is noise here and is left unmarked, as is hot/cold, because a shift in the warm-up ratio is not a win or a loss by itself.

datafusion / vortex-file-compressed / ns (0.995x ➖, 1↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
clickbench_q00/datafusion:vortex-file-compressed 1214474 / 1281075 / -5.2% 22667069 / 22114745 / +2.5% 0.05 / 0.06 / -7.5%
clickbench_q01/datafusion:vortex-file-compressed 5798831 / 5552493 / +4.4% 33884426 / 33364044 / +1.6% 0.17 / 0.17 / +2.8%
clickbench_q02/datafusion:vortex-file-compressed 9500111 / 9595292 / -1.0% 34292036 / 39192640 / -12.5% 🟢 0.28 / 0.24 / +13.2%
clickbench_q03/datafusion:vortex-file-compressed 11014484 / 12254576 / -10.1% 🟢 53215125 / 52102933 / +2.1% 0.21 / 0.24 / -12.0%
clickbench_q04/datafusion:vortex-file-compressed 56920211 / 55709435 / +2.2% 94099109 / 88872914 / +5.9% 0.60 / 0.63 / -3.5%
clickbench_q05/datafusion:vortex-file-compressed 74528782 / 76987760 / -3.2% 117141954 / 118897443 / -1.5% 0.64 / 0.65 / -1.7%
clickbench_q06/datafusion:vortex-file-compressed 1247128 / 1261820 / -1.2% 22217818 / 21927988 / +1.3% 0.06 / 0.06 / -2.5%
clickbench_q07/datafusion:vortex-file-compressed 9193161 / 9017869 / +1.9% 32949104 / 31621677 / +4.2% 0.28 / 0.29 / -2.2%
clickbench_q08/datafusion:vortex-file-compressed 74538167 / 74945576 / -0.5% 112406014 / 111755086 / +0.6% 0.66 / 0.67 / -1.1%
clickbench_q09/datafusion:vortex-file-compressed 171069768 / 166438758 / +2.8% 202034921 / 207218528 / -2.5% 0.85 / 0.80 / +5.4%
clickbench_q10/datafusion:vortex-file-compressed 22173188 / 22663542 / -2.2% 68167814 / 63042672 / +8.1% 0.33 / 0.36 / -9.5%
clickbench_q11/datafusion:vortex-file-compressed 25313270 / 24088220 / +5.1% 72002894 / 64811691 / +11.1% 🔴 0.35 / 0.37 / -5.4%
clickbench_q12/datafusion:vortex-file-compressed 71011456 / 72509834 / -2.1% 113824767 / 114643576 / -0.7% 0.62 / 0.63 / -1.4%
clickbench_q13/datafusion:vortex-file-compressed 116419014 / 120361205 / -3.3% 177416074 / 187281395 / -5.3% 0.66 / 0.64 / +2.1%
clickbench_q14/datafusion:vortex-file-compressed 73817530 / 74641554 / -1.1% 117609749 / 117510244 / +0.1% 0.63 / 0.64 / -1.2%
clickbench_q15/datafusion:vortex-file-compressed 60800034 / 59593045 / +2.0% 95209481 / 99788668 / -4.6% 0.64 / 0.60 / +6.9%
clickbench_q16/datafusion:vortex-file-compressed 149621560 / 147387973 / +1.5% 208099794 / 206971490 / +0.5% 0.72 / 0.71 / +1.0%
clickbench_q17/datafusion:vortex-file-compressed 147808042 / 147795668 / +0.0% 206904861 / 211843533 / -2.3% 0.71 / 0.70 / +2.4%
clickbench_q18/datafusion:vortex-file-compressed 295250944 / 287091988 / +2.8% 385216333 / 365907947 / +5.3% 0.77 / 0.78 / -2.3%
clickbench_q19/datafusion:vortex-file-compressed 7376872 / 7576981 / -2.6% 50600201 / 46794999 / +8.1% 0.15 / 0.16 / -10.0%
clickbench_q20/datafusion:vortex-file-compressed 60341907 / 62224132 / -3.0% 224829767 / 225118106 / -0.1% 0.27 / 0.28 / -2.9%
clickbench_q21/datafusion:vortex-file-compressed 88425668 / 88438306 / -0.0% 269522504 / 267382227 / +0.8% 0.33 / 0.33 / -0.8%
clickbench_q22/datafusion:vortex-file-compressed 97851309 / 97822461 / +0.0% 345269469 / 341945197 / +1.0% 0.28 / 0.29 / -0.9%
clickbench_q23/datafusion:vortex-file-compressed 201087942 / 194181530 / +3.6% 480518606 / 440027607 / +9.2% 0.42 / 0.44 / -5.2%
clickbench_q24/datafusion:vortex-file-compressed 14923294 / 15419234 / -3.2% 67922257 / 63156567 / +7.5% 0.22 / 0.24 / -10.0%
clickbench_q25/datafusion:vortex-file-compressed 17673880 / 17465037 / +1.2% 57007904 / 55481408 / +2.8% 0.31 / 0.31 / -1.5%
clickbench_q26/datafusion:vortex-file-compressed 15461266 / 16031158 / -3.6% 66876552 / 64799218 / +3.2% 0.23 / 0.25 / -6.6%
clickbench_q27/datafusion:vortex-file-compressed 94971330 / 93177063 / +1.9% 240386223 / 246117722 / -2.3% 0.40 / 0.38 / +4.4%
clickbench_q28/datafusion:vortex-file-compressed 550601568 / 551157494 / -0.1% 609488031 / 612219530 / -0.4% 0.90 / 0.90 / +0.3%
clickbench_q29/datafusion:vortex-file-compressed 22712618 / 23833740 / -4.7% 49164456 / 48065891 / +2.3% 0.46 / 0.50 / -6.8%
clickbench_q30/datafusion:vortex-file-compressed 58044362 / 56388595 / +2.9% 103510768 / 107249345 / -3.5% 0.56 / 0.53 / +6.7%
clickbench_q31/datafusion:vortex-file-compressed 67140242 / 66142682 / +1.5% 150292228 / 149955708 / +0.2% 0.45 / 0.44 / +1.3%
clickbench_q32/datafusion:vortex-file-compressed 281770384 / 284155610 / -0.8% 386144046 / 383688501 / +0.6% 0.73 / 0.74 / -1.5%
clickbench_q33/datafusion:vortex-file-compressed 316780217 / 316611081 / +0.1% 421692415 / 422332363 / -0.2% 0.75 / 0.75 / +0.2%
clickbench_q34/datafusion:vortex-file-compressed 317031870 / 316040135 / +0.3% 436552436 / 431613190 / +1.1% 0.73 / 0.73 / -0.8%
clickbench_q35/datafusion:vortex-file-compressed 55071042 / 55141879 / -0.1% 87868895 / 85228385 / +3.1% 0.63 / 0.65 / -3.1%
clickbench_q36/datafusion:vortex-file-compressed 37279184 / 37319171 / -0.1% 66556957 / 65500861 / +1.6% 0.56 / 0.57 / -1.7%
clickbench_q37/datafusion:vortex-file-compressed 21814841 / 21776770 / +0.2% 47561330 / 47554259 / +0.0% 0.46 / 0.46 / +0.2%
clickbench_q38/datafusion:vortex-file-compressed 11464516 / 11956484 / -4.1% 39703130 / 37638279 / +5.5% 0.29 / 0.32 / -9.1%
clickbench_q39/datafusion:vortex-file-compressed 76948096 / 77565918 / -0.8% 110971480 / 107967691 / +2.8% 0.69 / 0.72 / -3.5%
clickbench_q40/datafusion:vortex-file-compressed 10919575 / 11187904 / -2.4% 37538737 / 36134586 / +3.9% 0.29 / 0.31 / -6.0%
clickbench_q41/datafusion:vortex-file-compressed 10642525 / 10650550 / -0.1% 36080319 / 35577346 / +1.4% 0.29 / 0.30 / -1.5%
clickbench_q42/datafusion:vortex-file-compressed 11146952 / 11060506 / +0.8% 36147849 / 36654575 / -1.4% 0.31 / 0.30 / +2.2%
datafusion / parquet / ns (0.994x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
clickbench_q00/datafusion:parquet 1254162 / 1289504 / -2.7% 49234135 / 48408904 / +1.7% 0.03 / 0.03 / -4.4%
clickbench_q01/datafusion:parquet 15984419 / 15893654 / +0.6% 71259676 / 69496803 / +2.5% 0.22 / 0.23 / -1.9%
clickbench_q02/datafusion:parquet 19082367 / 18910922 / +0.9% 80492453 / 81992864 / -1.8% 0.24 / 0.23 / +2.8%
clickbench_q03/datafusion:parquet 17010483 / 17462512 / -2.6% 79323249 / 78062058 / +1.6% 0.21 / 0.22 / -4.1%
clickbench_q04/datafusion:parquet 60872452 / 63350254 / -3.9% 125343724 / 129197979 / -3.0% 0.49 / 0.49 / -1.0%
clickbench_q05/datafusion:parquet 87575109 / 88770802 / -1.3% 154110396 / 154127098 / -0.0% 0.57 / 0.58 / -1.3%
clickbench_q06/datafusion:parquet 1261808 / 1282830 / -1.6% 49596331 / 48484685 / +2.3% 0.03 / 0.03 / -3.8%
clickbench_q07/datafusion:parquet 16808632 / 16782372 / +0.2% 68477620 / 66362797 / +3.2% 0.25 / 0.25 / -2.9%
clickbench_q08/datafusion:parquet 86335787 / 88798216 / -2.8% 161480192 / 156289443 / +3.3% 0.53 / 0.57 / -5.9%
clickbench_q09/datafusion:parquet 190012534 / 185360202 / +2.5% 273339613 / 271418986 / +0.7% 0.70 / 0.68 / +1.8%
clickbench_q10/datafusion:parquet 35497120 / 36513794 / -2.8% 99581289 / 98869779 / +0.7% 0.36 / 0.37 / -3.5%
clickbench_q11/datafusion:parquet 42707604 / 42431898 / +0.6% 111995505 / 108042175 / +3.7% 0.38 / 0.39 / -2.9%
clickbench_q12/datafusion:parquet 95253357 / 96316629 / -1.1% 165216360 / 160189352 / +3.1% 0.58 / 0.60 / -4.1%
clickbench_q13/datafusion:parquet 148589682 / 147594245 / +0.7% 227832699 / 222936512 / +2.2% 0.65 / 0.66 / -1.5%
clickbench_q14/datafusion:parquet 101476931 / 102102064 / -0.6% 171277138 / 170337926 / +0.6% 0.59 / 0.60 / -1.2%
clickbench_q15/datafusion:parquet 73462948 / 70340250 / +4.4% 134254004 / 133081819 / +0.9% 0.55 / 0.53 / +3.5%
clickbench_q16/datafusion:parquet 155003527 / 157118644 / -1.3% 237183599 / 233853996 / +1.4% 0.65 / 0.67 / -2.7%
clickbench_q17/datafusion:parquet 154919638 / 157737014 / -1.8% 235143081 / 235826758 / -0.3% 0.66 / 0.67 / -1.5%
clickbench_q18/datafusion:parquet 308033687 / 307951725 / +0.0% 425866824 / 414555516 / +2.7% 0.72 / 0.74 / -2.6%
clickbench_q19/datafusion:parquet 19142336 / 19109764 / +0.2% 78101008 / 75983818 / +2.8% 0.25 / 0.25 / -2.5%
clickbench_q20/datafusion:parquet 179142786 / 180626259 / -0.8% 293566463 / 274131972 / +7.1% 0.61 / 0.66 / -7.4%
clickbench_q21/datafusion:parquet 171899256 / 172664215 / -0.4% 315648129 / 289476933 / +9.0% 0.54 / 0.60 / -8.7%
clickbench_q22/datafusion:parquet 257913116 / 259707815 / -0.7% 455996587 / 413408923 / +10.3% 🔴 0.57 / 0.63 / -10.0%
clickbench_q23/datafusion:parquet 1020515286 / 1022429167 / -0.2% 1205402240 / 1176058988 / +2.5% 0.85 / 0.87 / -2.6%
clickbench_q24/datafusion:parquet 29758862 / 30044666 / -1.0% 91822975 / 87383672 / +5.1% 0.32 / 0.34 / -5.7%
clickbench_q25/datafusion:parquet 37026857 / 37670514 / -1.7% 103299801 / 99219716 / +4.1% 0.36 / 0.38 / -5.6%
clickbench_q26/datafusion:parquet 30089736 / 31088665 / -3.2% 90549407 / 86098486 / +5.2% 0.33 / 0.36 / -8.0%
clickbench_q27/datafusion:parquet 194697580 / 193200886 / +0.8% 307149698 / 279785561 / +9.8% 0.63 / 0.69 / -8.2%
clickbench_q28/datafusion:parquet 613807986 / 614968633 / -0.2% 704778946 / 700467033 / +0.6% 0.87 / 0.88 / -0.8%
clickbench_q29/datafusion:parquet 29920983 / 28818777 / +3.8% 90972358 / 87900196 / +3.5% 0.33 / 0.33 / +0.3%
clickbench_q30/datafusion:parquet 90309317 / 90503284 / -0.2% 180672940 / 169106410 / +6.8% 0.50 / 0.54 / -6.6%
clickbench_q31/datafusion:parquet 102010864 / 103838082 / -1.8% 207698180 / 192088375 / +8.1% 0.49 / 0.54 / -9.1%
clickbench_q32/datafusion:parquet 310136384 / 304728959 / +1.8% 434964530 / 424969489 / +2.4% 0.71 / 0.72 / -0.6%
clickbench_q33/datafusion:parquet 375310250 / 376499000 / -0.3% 477899158 / 470006513 / +1.7% 0.79 / 0.80 / -2.0%
clickbench_q34/datafusion:parquet 376883899 / 378380562 / -0.4% 475091999 / 480520839 / -1.1% 0.79 / 0.79 / +0.7%
clickbench_q35/datafusion:parquet 64648086 / 65269300 / -1.0% 122595651 / 122129623 / +0.4% 0.53 / 0.53 / -1.3%
clickbench_q36/datafusion:parquet 73259768 / 73523429 / -0.4% 135545063 / 133158322 / +1.8% 0.54 / 0.55 / -2.1%
clickbench_q37/datafusion:parquet 35298288 / 35349286 / -0.1% 89745580 / 90691783 / -1.0% 0.39 / 0.39 / +0.9%
clickbench_q38/datafusion:parquet 47438592 / 47805046 / -0.8% 109435119 / 107887003 / +1.4% 0.43 / 0.44 / -2.2%
clickbench_q39/datafusion:parquet 142870493 / 143912859 / -0.7% 208352782 / 205819476 / +1.2% 0.69 / 0.70 / -1.9%
clickbench_q40/datafusion:parquet 19918482 / 20038738 / -0.6% 77317575 / 75034534 / +3.0% 0.26 / 0.27 / -3.5%
clickbench_q41/datafusion:parquet 18711926 / 18855535 / -0.8% 76512533 / 76008653 / +0.7% 0.24 / 0.25 / -1.4%
clickbench_q42/datafusion:parquet 18404097 / 19307819 / -4.7% 74201878 / 73797494 / +0.5% 0.25 / 0.26 / -5.2%
duckdb / vortex-file-compressed / ns (1.000x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
clickbench_q00/duckdb:vortex-file-compressed 2133876 / 2154750 / -1.0% 24785641 / 25114082 / -1.3% 0.09 / 0.09 / +0.3%
clickbench_q01/duckdb:vortex-file-compressed 7031539 / 7189330 / -2.2% 27700779 / 27468341 / +0.8% 0.25 / 0.26 / -3.0%
clickbench_q02/duckdb:vortex-file-compressed 8086605 / 8076634 / +0.1% 33725693 / 34104425 / -1.1% 0.24 / 0.24 / +1.2%
clickbench_q03/duckdb:vortex-file-compressed 13997564 / 14264485 / -1.9% 57698061 / 50963177 / +13.2% 🔴 0.24 / 0.28 / -13.3%
clickbench_q04/duckdb:vortex-file-compressed 55766075 / 55308602 / +0.8% 99931085 / 90429314 / +10.5% 🔴 0.56 / 0.61 / -8.8%
clickbench_q05/duckdb:vortex-file-compressed 64170526 / 63562222 / +1.0% 93482169 / 93638488 / -0.2% 0.69 / 0.68 / +1.1%
clickbench_q06/duckdb:vortex-file-compressed 2711707 / 2611214 / +3.8% 31230577 / 29415786 / +6.2% 0.09 / 0.09 / -2.2%
clickbench_q07/duckdb:vortex-file-compressed 8200992 / 8585906 / -4.5% 28658508 / 31763865 / -9.8% 0.29 / 0.27 / +5.9%
clickbench_q08/duckdb:vortex-file-compressed 67226140 / 67166464 / +0.1% 113136606 / 101166593 / +11.8% 🔴 0.59 / 0.66 / -10.5%
clickbench_q09/duckdb:vortex-file-compressed 88490276 / 89784717 / -1.4% 130407083 / 127007998 / +2.7% 0.68 / 0.71 / -4.0%
clickbench_q10/duckdb:vortex-file-compressed 26203607 / 26126168 / +0.3% 71393327 / 63180978 / +13.0% 🔴 0.37 / 0.41 / -11.2%
clickbench_q11/duckdb:vortex-file-compressed 28987040 / 28504876 / +1.7% 73628634 / 64414636 / +14.3% 🔴 0.39 / 0.44 / -11.0%
clickbench_q12/duckdb:vortex-file-compressed 69881324 / 70131346 / -0.4% 103036821 / 99654194 / +3.4% 0.68 / 0.70 / -3.6%
clickbench_q13/duckdb:vortex-file-compressed 123756632 / 122125994 / +1.3% 166606767 / 161161730 / +3.4% 0.74 / 0.76 / -2.0%
clickbench_q14/duckdb:vortex-file-compressed 74583817 / 74150508 / +0.6% 101071623 / 100901836 / +0.2% 0.74 / 0.73 / +0.4%
clickbench_q15/duckdb:vortex-file-compressed 75009222 / 74988022 / +0.0% 113822962 / 109341598 / +4.1% 0.66 / 0.69 / -3.9%
clickbench_q16/duckdb:vortex-file-compressed 139686375 / 136582434 / +2.3% 181260324 / 175992086 / +3.0% 0.77 / 0.78 / -0.7%
clickbench_q17/duckdb:vortex-file-compressed 140140236 / 143084438 / -2.1% 176256803 / 175139221 / +0.6% 0.80 / 0.82 / -2.7%
clickbench_q18/duckdb:vortex-file-compressed 258643620 / 257382554 / +0.5% 318242389 / 312574424 / +1.8% 0.81 / 0.82 / -1.3%
clickbench_q19/duckdb:vortex-file-compressed 9059154 / 9302108 / -2.6% 45842476 / 41866615 / +9.5% 0.20 / 0.22 / -11.1%
clickbench_q20/duckdb:vortex-file-compressed 64607408 / 64586118 / +0.0% 167263123 / 161560861 / +3.5% 0.39 / 0.40 / -3.4%
clickbench_q21/duckdb:vortex-file-compressed 95923686 / 96141861 / -0.2% 280496262 / 268381801 / +4.5% 0.34 / 0.36 / -4.5%
clickbench_q22/duckdb:vortex-file-compressed 173712026 / 173081060 / +0.4% 438238111 / 390391792 / +12.3% 🔴 0.40 / 0.44 / -10.6%
clickbench_q23/duckdb:vortex-file-compressed 32678284 / 33026536 / -1.1% 84587786 / 82768330 / +2.2% 0.39 / 0.40 / -3.2%
clickbench_q24/duckdb:vortex-file-compressed 13434734 / 13739446 / -2.2% 34027102 / 35380072 / -3.8% 0.39 / 0.39 / +1.7%
clickbench_q25/duckdb:vortex-file-compressed 18498262 / 18725836 / -1.2% 49618566 / 47423544 / +4.6% 0.37 / 0.39 / -5.6%
clickbench_q26/duckdb:vortex-file-compressed 11232639 / 11339533 / -0.9% 34924213 / 33858819 / +3.1% 0.32 / 0.33 / -4.0%
clickbench_q27/duckdb:vortex-file-compressed 53164522 / 53616611 / -0.8% 224253634 / 216508123 / +3.6% 0.24 / 0.25 / -4.3%
clickbench_q28/duckdb:vortex-file-compressed 509189792 / 512872780 / -0.7% 625435011 / 570191562 / +9.7% 0.81 / 0.90 / -9.5%
clickbench_q29/duckdb:vortex-file-compressed 17639104 / 17394166 / +1.4% 43598437 / 44168329 / -1.3% 0.40 / 0.39 / +2.7%
clickbench_q30/duckdb:vortex-file-compressed 59242654 / 58673847 / +1.0% 111816844 / 101662286 / +10.0% 0.53 / 0.58 / -8.2%
clickbench_q31/duckdb:vortex-file-compressed 109148344 / 109527666 / -0.3% 177578216 / 185226017 / -4.1% 0.61 / 0.59 / +3.9%
clickbench_q32/duckdb:vortex-file-compressed 379393918 / 366260390 / +3.6% 427700320 / 398194859 / +7.4% 0.89 / 0.92 / -3.6%
clickbench_q33/duckdb:vortex-file-compressed 344059846 / 346687527 / -0.8% 445587179 / 436107499 / +2.2% 0.77 / 0.79 / -2.9%
clickbench_q34/duckdb:vortex-file-compressed 360628408 / 358519890 / +0.6% 460181642 / 444861064 / +3.4% 0.78 / 0.81 / -2.8%
clickbench_q35/duckdb:vortex-file-compressed 56247644 / 57080322 / -1.5% 91779885 / 88696267 / +3.5% 0.61 / 0.64 / -4.8%
clickbench_q36/duckdb:vortex-file-compressed 12039068 / 11697876 / +2.9% 34889639 / 31805342 / +9.7% 0.35 / 0.37 / -6.2%
clickbench_q37/duckdb:vortex-file-compressed 7980932 / 7993682 / -0.2% 28611691 / 29303430 / -2.4% 0.28 / 0.27 / +2.3%
clickbench_q38/duckdb:vortex-file-compressed 8468600 / 8419136 / +0.6% 29409840 / 28897797 / +1.8% 0.29 / 0.29 / -1.2%
clickbench_q39/duckdb:vortex-file-compressed 19451546 / 19145964 / +1.6% 40569396 / 37951232 / +6.9% 0.48 / 0.50 / -5.0%
clickbench_q40/duckdb:vortex-file-compressed 6908376 / 6986888 / -1.1% 28998661 / 29026401 / -0.1% 0.24 / 0.24 / -1.0%
clickbench_q41/duckdb:vortex-file-compressed 7801394 / 7730446 / +0.9% 32273154 / 31678625 / +1.9% 0.24 / 0.24 / -0.9%
clickbench_q42/duckdb:vortex-file-compressed 7130448 / 6980544 / +2.1% 28799917 / 29663638 / -2.9% 0.25 / 0.24 / +5.2%
duckdb / parquet / ns (0.993x ➖, 2↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
clickbench_q00/duckdb:parquet 10756280 / 12497801 / -13.9% 🟢 18485240 / 18848103 / -1.9% 0.58 / 0.66 / -12.2%
clickbench_q01/duckdb:parquet 17306435 / 17543072 / -1.3% 23896456 / 24102809 / -0.9% 0.72 / 0.73 / -0.5%
clickbench_q02/duckdb:parquet 24261068 / 24180710 / +0.3% 34307272 / 37925377 / -9.5% 0.71 / 0.64 / +10.9%
clickbench_q03/duckdb:parquet 24747366 / 24432032 / +1.3% 38508079 / 41781586 / -7.8% 0.64 / 0.58 / +9.9%
clickbench_q04/duckdb:parquet 62931782 / 63469839 / -0.8% 77166129 / 77945855 / -1.0% 0.82 / 0.81 / +0.2%
clickbench_q05/duckdb:parquet 84326645 / 85609014 / -1.5% 98786715 / 100533367 / -1.7% 0.85 / 0.85 / +0.2%
clickbench_q06/duckdb:parquet 22842945 / 23056248 / -0.9% 34032346 / 29621066 / +14.9% 🔴 0.67 / 0.78 / -13.8%
clickbench_q07/duckdb:parquet 18561798 / 19181326 / -3.2% 27432366 / 25927766 / +5.8% 0.68 / 0.74 / -8.5%
clickbench_q08/duckdb:parquet 75622352 / 76660025 / -1.4% 89169929 / 93614026 / -4.7% 0.85 / 0.82 / +3.6%
clickbench_q09/duckdb:parquet 104082143 / 104516198 / -0.4% 123459387 / 123907878 / -0.4% 0.84 / 0.84 / -0.1%
clickbench_q10/duckdb:parquet 42437958 / 41846635 / +1.4% 60311677 / 59712387 / +1.0% 0.70 / 0.70 / +0.4%
clickbench_q11/duckdb:parquet 47463478 / 47068208 / +0.8% 66038877 / 66254136 / -0.3% 0.72 / 0.71 / +1.2%
clickbench_q12/duckdb:parquet 95514776 / 93473280 / +2.2% 112913819 / 114049544 / -1.0% 0.85 / 0.82 / +3.2%
clickbench_q13/duckdb:parquet 152271580 / 150607594 / +1.1% 173454627 / 172439603 / +0.6% 0.88 / 0.87 / +0.5%
clickbench_q14/duckdb:parquet 103602764 / 101712006 / +1.9% 127583350 / 126289095 / +1.0% 0.81 / 0.81 / +0.8%
clickbench_q15/duckdb:parquet 89065484 / 89936848 / -1.0% 103341150 / 107400073 / -3.8% 0.86 / 0.84 / +2.9%
clickbench_q16/duckdb:parquet 183317868 / 177732160 / +3.1% 187324599 / 190926032 / -1.9% 0.98 / 0.93 / +5.1%
clickbench_q17/duckdb:parquet 178105936 / 176224270 / +1.1% 187936872 / 185768026 / +1.2% 0.95 / 0.95 / -0.1%
clickbench_q18/duckdb:parquet 309313000 / 307985556 / +0.4% 341309655 / 333285419 / +2.4% 0.91 / 0.92 / -1.9%
clickbench_q19/duckdb:parquet 21326742 / 21788596 / -2.1% 30970590 / 30005780 / +3.2% 0.69 / 0.73 / -5.2%
clickbench_q20/duckdb:parquet 179366362 / 190048924 / -5.6% 228951049 / 227595744 / +0.6% 0.78 / 0.84 / -6.2%
clickbench_q21/duckdb:parquet 230533374 / 240772242 / -4.3% 266707694 / 273221489 / -2.4% 0.86 / 0.88 / -1.9%
clickbench_q22/duckdb:parquet 320291952 / 320652239 / -0.1% 360937544 / 371081105 / -2.7% 0.89 / 0.86 / +2.7%
clickbench_q23/duckdb:parquet 171468398 / 162995277 / +5.2% 208330830 / 239226423 / -12.9% 🟢 0.82 / 0.68 / +20.8%
clickbench_q24/duckdb:parquet 32288822 / 32848403 / -1.7% 46353302 / 47093759 / -1.6% 0.70 / 0.70 / -0.1%
clickbench_q25/duckdb:parquet 44082804 / 43218714 / +2.0% 60781466 / 59478742 / +2.2% 0.73 / 0.73 / -0.2%
clickbench_q26/duckdb:parquet 33232744 / 32849491 / +1.2% 52165657 / 45968849 / +13.5% 🔴 0.64 / 0.71 / -10.9%
clickbench_q27/duckdb:parquet 186424958 / 194174718 / -4.0% 226544441 / 235256831 / -3.7% 0.82 / 0.83 / -0.3%
clickbench_q28/duckdb:parquet 974672264 / 996387860 / -2.2% 972428731 / 974436974 / -0.2% 1.00 / 1.02 / -2.0%
clickbench_q29/duckdb:parquet 25737805 / 26148384 / -1.6% 35223778 / 35713024 / -1.4% 0.73 / 0.73 / -0.2%
clickbench_q30/duckdb:parquet 108231668 / 107273371 / +0.9% 137100509 / 135115257 / +1.5% 0.79 / 0.79 / -0.6%
clickbench_q31/duckdb:parquet 136843454 / 161577744 / -15.3% 🟢 184463891 / 208206451 / -11.4% 🟢 0.74 / 0.78 / -4.4%
clickbench_q32/duckdb:parquet 402481590 / 401031746 / +0.4% 425580506 / 421200634 / +1.0% 0.95 / 0.95 / -0.7%
clickbench_q33/duckdb:parquet 481670468 / 480740512 / +0.2% 463390435 / 453540611 / +2.2% 1.04 / 1.06 / -1.9%
clickbench_q34/duckdb:parquet 476071936 / 464853802 / +2.4% 475284323 / 461690390 / +2.9% 1.00 / 1.01 / -0.5%
clickbench_q35/duckdb:parquet 63403404 / 63112869 / +0.5% 79528905 / 81330898 / -2.2% 0.80 / 0.78 / +2.7%
clickbench_q36/duckdb:parquet 32919632 / 32564355 / +1.1% 41113556 / 40199025 / +2.3% 0.80 / 0.81 / -1.2%
clickbench_q37/duckdb:parquet 24467570 / 24946204 / -1.9% 34310937 / 33791866 / +1.5% 0.71 / 0.74 / -3.4%
clickbench_q38/duckdb:parquet 25876081 / 25540612 / +1.3% 34510017 / 34993525 / -1.4% 0.75 / 0.73 / +2.7%
clickbench_q39/duckdb:parquet 54950367 / 55037536 / -0.2% 64891153 / 63409578 / +2.3% 0.85 / 0.87 / -2.4%
clickbench_q40/duckdb:parquet 15851641 / 15559138 / +1.9% 24537776 / 24156523 / +1.6% 0.65 / 0.64 / +0.3%
clickbench_q41/duckdb:parquet 16918894 / 17003451 / -0.5% 26191825 / 24653505 / +6.2% 0.65 / 0.69 / -6.3%
clickbench_q42/duckdb:parquet 16400530 / 15435730 / +6.3% 24998927 / 24673534 / +1.3% 0.66 / 0.63 / +4.9%

No file size changes detected.

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-H SF=10 on NVME 📖

Commits: PR 5cf73d78 vs base a59294e3
Verdict: No clear signal (low confidence)
Attributed Vortex impact: -0.2%
Engines: DataFusion No clear signal (-0.7%, low confidence) · DuckDB No clear signal (+0.2%, low confidence)
Vortex (geomean): hot 0.997x ➖ · cold 1.008x ➖
Parquet (geomean): hot 0.999x ➖ · cold 1.008x ➖
Shifts: Parquet (control) -0.1% · Median polish -0.1%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.
  • Hot vs cold: Every measurement is run several times. The first run is reported as the cold run, and the median of the runs after it is reported as the hot run. The verdict and significance use hot runs; each target's geomean reports hot and cold beside each other where the individual runs were recorded and hot alone where they were not, the cold column shows first-run cost per row, and hot/cold is how much of each run the warm path saves. Rows whose results predate per-run reporting show only one value, taken from the value the runner reported.
  • Table cells: Each cell reads PR / base / %diff. The hot and cold columns mark a change as 🔴 slower or 🟢 faster once it clears this suite's threshold; anything smaller is noise here and is left unmarked, as is hot/cold, because a shift in the warm-up ratio is not a win or a loss by itself.

datafusion / vortex-file-compressed / ns (0.993x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/datafusion:vortex-file-compressed 89099258 / 91554008 / -2.7% 150343627 / 143333641 / +4.9% 0.59 / 0.64 / -7.2%
tpch_q02/datafusion:vortex-file-compressed 66334504 / 66863715 / -0.8% 101534432 / 103790004 / -2.2% 0.65 / 0.64 / +1.4%
tpch_q03/datafusion:vortex-file-compressed 67040374 / 66962785 / +0.1% 124599049 / 116377458 / +7.1% 0.54 / 0.58 / -6.5%
tpch_q04/datafusion:vortex-file-compressed 35991848 / 35610710 / +1.1% 71492391 / 72992887 / -2.1% 0.50 / 0.49 / +3.2%
tpch_q05/datafusion:vortex-file-compressed 121137974 / 120996931 / +0.1% 174422672 / 170863121 / +2.1% 0.69 / 0.71 / -1.9%
tpch_q06/datafusion:vortex-file-compressed 11030204 / 11770387 / -6.3% 56213662 / 56578665 / -0.6% 0.20 / 0.21 / -5.7%
tpch_q07/datafusion:vortex-file-compressed 135911923 / 137218777 / -1.0% 204433021 / 196598076 / +4.0% 0.66 / 0.70 / -4.7%
tpch_q08/datafusion:vortex-file-compressed 146421382 / 147884202 / -1.0% 273107579 / 210572589 / +29.7% 🔴 0.54 / 0.70 / -23.7%
tpch_q09/datafusion:vortex-file-compressed 186713700 / 186383331 / +0.2% 269268093 / 253411488 / +6.3% 0.69 / 0.74 / -5.7%
tpch_q10/datafusion:vortex-file-compressed 74564412 / 74199216 / +0.5% 138036025 / 137940013 / +0.1% 0.54 / 0.54 / +0.4%
tpch_q11/datafusion:vortex-file-compressed 45535692 / 45386912 / +0.3% 68107245 / 73364997 / -7.2% 0.67 / 0.62 / +8.1%
tpch_q12/datafusion:vortex-file-compressed 37566111 / 38500650 / -2.4% 75365096 / 81972778 / -8.1% 0.50 / 0.47 / +6.1%
tpch_q13/datafusion:vortex-file-compressed 42744632 / 43154299 / -0.9% 83537693 / 82729721 / +1.0% 0.51 / 0.52 / -1.9%
tpch_q14/datafusion:vortex-file-compressed 22474566 / 22778842 / -1.3% 86378266 / 89771289 / -3.8% 0.26 / 0.25 / +2.5%
tpch_q15/datafusion:vortex-file-compressed 35324954 / 35933488 / -1.7% 92983947 / 93559736 / -0.6% 0.38 / 0.38 / -1.1%
tpch_q16/datafusion:vortex-file-compressed 40019838 / 39947905 / +0.2% 69631153 / 69304049 / +0.5% 0.57 / 0.58 / -0.3%
tpch_q17/datafusion:vortex-file-compressed 179579531 / 178210920 / +0.8% 219042080 / 215744008 / +1.5% 0.82 / 0.83 / -0.7%
tpch_q18/datafusion:vortex-file-compressed 207927382 / 205808056 / +1.0% 276020297 / 273434832 / +0.9% 0.75 / 0.75 / +0.1%
tpch_q19/datafusion:vortex-file-compressed 35694603 / 35391419 / +0.9% 87553247 / 90040944 / -2.8% 0.41 / 0.39 / +3.7%
tpch_q20/datafusion:vortex-file-compressed 63053048 / 64232067 / -1.8% 114870458 / 118079102 / -2.7% 0.55 / 0.54 / +0.9%
tpch_q21/datafusion:vortex-file-compressed 182710713 / 184956196 / -1.2% 242131086 / 238696746 / +1.4% 0.75 / 0.77 / -2.6%
tpch_q22/datafusion:vortex-file-compressed 27616767 / 27657723 / -0.1% 54152552 / 53601430 / +1.0% 0.51 / 0.52 / -1.2%
datafusion / parquet / ns (0.999x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/datafusion:parquet 87578146 / 88204353 / -0.7% 136168215 / 130088911 / +4.7% 0.64 / 0.68 / -5.1%
tpch_q02/datafusion:parquet 174889116 / 174726336 / +0.1% 200990754 / 204625784 / -1.8% 0.87 / 0.85 / +1.9%
tpch_q03/datafusion:parquet 138096549 / 136926488 / +0.9% 193114488 / 186492437 / +3.6% 0.72 / 0.73 / -2.6%
tpch_q04/datafusion:parquet 58968129 / 59059610 / -0.2% 97974222 / 90627947 / +8.1% 0.60 / 0.65 / -7.6%
tpch_q05/datafusion:parquet 170837056 / 170828936 / +0.0% 230808437 / 233350655 / -1.1% 0.74 / 0.73 / +1.1%
tpch_q06/datafusion:parquet 37051302 / 37023580 / +0.1% 84117043 / 79182885 / +6.2% 0.44 / 0.47 / -5.8%
tpch_q07/datafusion:parquet 218385649 / 218646397 / -0.1% 275666388 / 273468464 / +0.8% 0.79 / 0.80 / -0.9%
tpch_q08/datafusion:parquet 221906844 / 221064822 / +0.4% 297328542 / 289056660 / +2.9% 0.75 / 0.76 / -2.4%
tpch_q09/datafusion:parquet 313908000 / 314906664 / -0.3% 397014946 / 382686958 / +3.7% 0.79 / 0.82 / -3.9%
tpch_q10/datafusion:parquet 321689483 / 321799257 / -0.0% 398304656 / 387060543 / +2.9% 0.81 / 0.83 / -2.9%
tpch_q11/datafusion:parquet 126404906 / 126953939 / -0.4% 150995809 / 150534751 / +0.3% 0.84 / 0.84 / -0.7%
tpch_q12/datafusion:parquet 83904228 / 84500730 / -0.7% 130832700 / 124392326 / +5.2% 0.64 / 0.68 / -5.6%
tpch_q13/datafusion:parquet 217074439 / 216952945 / +0.1% 249622800 / 248474997 / +0.5% 0.87 / 0.87 / -0.4%
tpch_q14/datafusion:parquet 87633663 / 86851349 / +0.9% 191232040 / 196086278 / -2.5% 0.46 / 0.44 / +3.5%
tpch_q15/datafusion:parquet 106954265 / 106984016 / -0.0% 158419650 / 156205326 / +1.4% 0.68 / 0.68 / -1.4%
tpch_q16/datafusion:parquet 96147967 / 97797080 / -1.7% 118720962 / 122211019 / -2.9% 0.81 / 0.80 / +1.2%
tpch_q17/datafusion:parquet 213796888 / 212288946 / +0.7% 257026897 / 263160651 / -2.3% 0.83 / 0.81 / +3.1%
tpch_q18/datafusion:parquet 270815602 / 272868516 / -0.8% 315712105 / 309985509 / +1.8% 0.86 / 0.88 / -2.6%
tpch_q19/datafusion:parquet 109252156 / 108496774 / +0.7% 170138896 / 170805911 / -0.4% 0.64 / 0.64 / +1.1%
tpch_q20/datafusion:parquet 189548376 / 189120972 / +0.2% 242646867 / 262204361 / -7.5% 0.78 / 0.72 / +8.3%
tpch_q21/datafusion:parquet 246665050 / 248691727 / -0.8% 315875739 / 314157219 / +0.5% 0.78 / 0.79 / -1.4%
tpch_q22/datafusion:parquet 153919652 / 153846074 / +0.0% 178984256 / 180111894 / -0.6% 0.86 / 0.85 / +0.7%
duckdb / vortex-file-compressed / ns (1.002x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/duckdb:vortex-file-compressed 32678904 / 33031566 / -1.1% 67818964 / 74102925 / -8.5% 0.48 / 0.45 / +8.1%
tpch_q02/duckdb:vortex-file-compressed 30857711 / 31080180 / -0.7% 44602526 / 44510767 / +0.2% 0.69 / 0.70 / -0.9%
tpch_q03/duckdb:vortex-file-compressed 52907769 / 52893273 / +0.0% 101918961 / 103094425 / -1.1% 0.52 / 0.51 / +1.2%
tpch_q04/duckdb:vortex-file-compressed 51409000 / 51610126 / -0.4% 87734650 / 89607068 / -2.1% 0.59 / 0.58 / +1.7%
tpch_q05/duckdb:vortex-file-compressed 68142119 / 67646100 / +0.7% 109009557 / 109224196 / -0.2% 0.63 / 0.62 / +0.9%
tpch_q06/duckdb:vortex-file-compressed 14343411 / 14391316 / -0.3% 54179233 / 53596583 / +1.1% 0.26 / 0.27 / -1.4%
tpch_q07/duckdb:vortex-file-compressed 55426711 / 54217905 / +2.2% 109318175 / 109846383 / -0.5% 0.51 / 0.49 / +2.7%
tpch_q08/duckdb:vortex-file-compressed 87024204 / 86981848 / +0.0% 130470806 / 132222649 / -1.3% 0.67 / 0.66 / +1.4%
tpch_q09/duckdb:vortex-file-compressed 97306609 / 96740613 / +0.6% 166008391 / 152875231 / +8.6% 0.59 / 0.63 / -7.4%
tpch_q10/duckdb:vortex-file-compressed 87769159 / 87725847 / +0.0% 143599388 / 140730500 / +2.0% 0.61 / 0.62 / -1.9%
tpch_q11/duckdb:vortex-file-compressed 13913514 / 13970042 / -0.4% 26923169 / 25247604 / +6.6% 0.52 / 0.55 / -6.6%
tpch_q12/duckdb:vortex-file-compressed 43237655 / 42817374 / +1.0% 82863105 / 83399590 / -0.6% 0.52 / 0.51 / +1.6%
tpch_q13/duckdb:vortex-file-compressed 66518721 / 67167074 / -1.0% 87702730 / 86520857 / +1.4% 0.76 / 0.78 / -2.3%
tpch_q14/duckdb:vortex-file-compressed 27928621 / 28247358 / -1.1% 71797749 / 72779837 / -1.3% 0.39 / 0.39 / +0.2%
tpch_q15/duckdb:vortex-file-compressed 24530505 / 24438956 / +0.4% 64686106 / 64063675 / +1.0% 0.38 / 0.38 / -0.6%
tpch_q16/duckdb:vortex-file-compressed 50267930 / 50309249 / -0.1% 59073548 / 58370993 / +1.2% 0.85 / 0.86 / -1.3%
tpch_q17/duckdb:vortex-file-compressed 34511483 / 33839919 / +2.0% 65968647 / 65524114 / +0.7% 0.52 / 0.52 / +1.3%
tpch_q18/duckdb:vortex-file-compressed 99459086 / 97366631 / +2.1% 118893433 / 120413006 / -1.3% 0.84 / 0.81 / +3.5%
tpch_q19/duckdb:vortex-file-compressed 24894111 / 24663760 / +0.9% 73616366 / 72791988 / +1.1% 0.34 / 0.34 / -0.2%
tpch_q20/duckdb:vortex-file-compressed 38867791 / 38852329 / +0.0% 90566278 / 91462815 / -1.0% 0.43 / 0.42 / +1.0%
tpch_q21/duckdb:vortex-file-compressed 94693461 / 95649542 / -1.0% 148179803 / 143886887 / +3.0% 0.64 / 0.66 / -3.9%
tpch_q22/duckdb:vortex-file-compressed 34902292 / 34886756 / +0.0% 52693446 / 51482041 / +2.4% 0.66 / 0.68 / -2.3%
duckdb / parquet / ns (0.999x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/duckdb:parquet 67894985 / 67925061 / -0.0% 92094644 / 90570817 / +1.7% 0.74 / 0.75 / -1.7%
tpch_q02/duckdb:parquet 87321606 / 87743811 / -0.5% 99805560 / 100504820 / -0.7% 0.87 / 0.87 / +0.2%
tpch_q03/duckdb:parquet 110986511 / 110940424 / +0.0% 148230159 / 148404661 / -0.1% 0.75 / 0.75 / +0.2%
tpch_q04/duckdb:parquet 76985347 / 77001363 / -0.0% 102221633 / 99864577 / +2.4% 0.75 / 0.77 / -2.3%
tpch_q05/duckdb:parquet 123838572 / 125025010 / -0.9% 158522063 / 160089903 / -1.0% 0.78 / 0.78 / +0.0%
tpch_q06/duckdb:parquet 35515923 / 35651214 / -0.4% 72369431 / 64451853 / +12.3% 🔴 0.49 / 0.55 / -11.3%
tpch_q07/duckdb:parquet 117539154 / 117921650 / -0.3% 156578904 / 157683609 / -0.7% 0.75 / 0.75 / +0.4%
tpch_q08/duckdb:parquet 148975904 / 149738329 / -0.5% 194779706 / 197052531 / -1.2% 0.76 / 0.76 / +0.7%
tpch_q09/duckdb:parquet 237702233 / 237374867 / +0.1% 283330258 / 281479592 / +0.7% 0.84 / 0.84 / -0.5%
tpch_q10/duckdb:parquet 317271488 / 318219759 / -0.3% 346374936 / 347022820 / -0.2% 0.92 / 0.92 / -0.1%
tpch_q11/duckdb:parquet 44068428 / 43892770 / +0.4% 51473880 / 51563259 / -0.2% 0.86 / 0.85 / +0.6%
tpch_q12/duckdb:parquet 72400094 / 72475242 / -0.1% 96080573 / 93025838 / +3.3% 0.75 / 0.78 / -3.3%
tpch_q13/duckdb:parquet 295673782 / 294289313 / +0.5% 309910129 / 309495459 / +0.1% 0.95 / 0.95 / +0.3%
tpch_q14/duckdb:parquet 102334292 / 103609582 / -1.2% 143940662 / 145226052 / -0.9% 0.71 / 0.71 / -0.3%
tpch_q15/duckdb:parquet 59018897 / 57362861 / +2.9% 88816127 / 88728426 / +0.1% 0.66 / 0.65 / +2.8%
tpch_q16/duckdb:parquet 101168001 / 101230938 / -0.1% 108961461 / 109731633 / -0.7% 0.93 / 0.92 / +0.6%
tpch_q17/duckdb:parquet 82594272 / 82873725 / -0.3% 122917561 / 120151745 / +2.3% 0.67 / 0.69 / -2.6%
tpch_q18/duckdb:parquet 158936107 / 158751085 / +0.1% 174624568 / 176303412 / -1.0% 0.91 / 0.90 / +1.1%
tpch_q19/duckdb:parquet 97874551 / 98304267 / -0.4% 141641487 / 144086616 / -1.7% 0.69 / 0.68 / +1.3%
tpch_q20/duckdb:parquet 147885476 / 147407915 / +0.3% 191950826 / 191342693 / +0.3% 0.77 / 0.77 / +0.0%
tpch_q21/duckdb:parquet 253907214 / 254804407 / -0.4% 283156594 / 281731874 / +0.5% 0.90 / 0.90 / -0.9%
tpch_q22/duckdb:parquet 168968349 / 169194420 / -0.1% 183960646 / 183949064 / +0.0% 0.92 / 0.92 / -0.1%

No file size changes detected.

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-DS SF=1 on NVME 📖

Commits: PR 5cf73d78 vs base 967e2f59
Verdict: No clear signal (low confidence)
Attributed Vortex impact: -0.1%
Engines: DataFusion No clear signal (-0.1%, low confidence) · DuckDB No clear signal (-0.2%, low confidence)
Vortex (geomean): hot 1.003x ➖ · cold 1.034x ➖
Parquet (geomean): hot 1.004x ➖ · cold 1.011x ➖
Shifts: Parquet (control) +0.4% · Median polish +0.4%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.
  • Hot vs cold: Every measurement is run several times. The first run is reported as the cold run, and the median of the runs after it is reported as the hot run. The verdict and significance use hot runs; each target's geomean reports hot and cold beside each other where the individual runs were recorded and hot alone where they were not, the cold column shows first-run cost per row, and hot/cold is how much of each run the warm path saves. Rows whose results predate per-run reporting show only one value, taken from the value the runner reported.
  • Table cells: Each cell reads PR / base / %diff. The hot and cold columns mark a change as 🔴 slower or 🟢 faster once it clears this suite's threshold; anything smaller is noise here and is left unmarked, as is hot/cold, because a shift in the warm-up ratio is not a win or a loss by itself.

datafusion / vortex-file-compressed / ns (0.998x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpcds_q01/datafusion:vortex-file-compressed 24620296 / 24765286 / -0.6% 41789029 / 40825124 / +2.4% 0.59 / 0.61 / -2.9%
tpcds_q02/datafusion:vortex-file-compressed 47728057 / 47632115 / +0.2% 63662775 / 62778191 / +1.4% 0.75 / 0.76 / -1.2%
tpcds_q03/datafusion:vortex-file-compressed 11977960 / 12040078 / -0.5% 27706775 / 25655358 / +8.0% 0.43 / 0.47 / -7.9%
tpcds_q04/datafusion:vortex-file-compressed 121763768 / 124763541 / -2.4% 152527721 / 151389179 / +0.8% 0.80 / 0.82 / -3.1%
tpcds_q05/datafusion:vortex-file-compressed 59928970 / 58959356 / +1.6% 81088287 / 80702462 / +0.5% 0.74 / 0.73 / +1.2%
tpcds_q06/datafusion:vortex-file-compressed 22764295 / 22827728 / -0.3% 43202537 / 41748679 / +3.5% 0.53 / 0.55 / -3.6%
tpcds_q07/datafusion:vortex-file-compressed 31066513 / 31535618 / -1.5% 53774404 / 51314414 / +4.8% 0.58 / 0.61 / -6.0%
tpcds_q08/datafusion:vortex-file-compressed 24692766 / 24730550 / -0.2% 39431157 / 39753423 / -0.8% 0.63 / 0.62 / +0.7%
tpcds_q09/datafusion:vortex-file-compressed 17509588 / 17694412 / -1.0% 31937002 / 30991096 / +3.1% 0.55 / 0.57 / -4.0%
tpcds_q10/datafusion:vortex-file-compressed 27456594 / 27292028 / +0.6% 49571181 / 46210844 / +7.3% 0.55 / 0.59 / -6.2%
tpcds_q11/datafusion:vortex-file-compressed 64298518 / 63601232 / +1.1% 91872460 / 90270202 / +1.8% 0.70 / 0.70 / -0.7%
tpcds_q12/datafusion:vortex-file-compressed 16404943 / 16529726 / -0.8% 32740213 / 32736591 / +0.0% 0.50 / 0.50 / -0.8%
tpcds_q13/datafusion:vortex-file-compressed 31659720 / 32366914 / -2.2% 51440382 / 50771302 / +1.3% 0.62 / 0.64 / -3.5%
tpcds_q14/datafusion:vortex-file-compressed 496659559 / 494914244 / +0.4% 550789435 / 546290108 / +0.8% 0.90 / 0.91 / -0.5%
tpcds_q15/datafusion:vortex-file-compressed 15778989 / 15427440 / +2.3% 34377681 / 31744777 / +8.3% 0.46 / 0.49 / -5.6%
tpcds_q16/datafusion:vortex-file-compressed 19933130 / 19895420 / +0.2% 36571346 / 35095586 / +4.2% 0.55 / 0.57 / -3.9%
tpcds_q17/datafusion:vortex-file-compressed 55565676 / 59599600 / -6.8% 84456858 / 80805734 / +4.5% 0.66 / 0.74 / -10.8%
tpcds_q18/datafusion:vortex-file-compressed 67598056 / 68296202 / -1.0% 89610247 / 88833715 / +0.9% 0.75 / 0.77 / -1.9%
tpcds_q19/datafusion:vortex-file-compressed 17079300 / 17059943 / +0.1% 37213871 / 35096402 / +6.0% 0.46 / 0.49 / -5.6%
tpcds_q20/datafusion:vortex-file-compressed 18157056 / 18137578 / +0.1% 36476745 / 33941674 / +7.5% 0.50 / 0.53 / -6.8%
tpcds_q21/datafusion:vortex-file-compressed 16262136 / 16390645 / -0.8% 35706881 / 36577279 / -2.4% 0.46 / 0.45 / +1.6%
tpcds_q22/datafusion:vortex-file-compressed 58073560 / 58321778 / -0.4% 81064812 / 80348051 / +0.9% 0.72 / 0.73 / -1.3%
tpcds_q23/datafusion:vortex-file-compressed 71754322 / 70968229 / +1.1% 100621017 / 96219723 / +4.6% 0.71 / 0.74 / -3.3%
tpcds_q24/datafusion:vortex-file-compressed 67501294 / 68077838 / -0.8% 87659949 / 91112978 / -3.8% 0.77 / 0.75 / +3.1%
tpcds_q25/datafusion:vortex-file-compressed 53685410 / 53155032 / +1.0% 77228134 / 67488520 / +14.4% 🔴 0.70 / 0.79 / -11.7%
tpcds_q26/datafusion:vortex-file-compressed 30788249 / 30745753 / +0.1% 50723069 / 48987605 / +3.5% 0.61 / 0.63 / -3.3%
tpcds_q27/datafusion:vortex-file-compressed 65055415 / 63101618 / +3.1% 89529361 / 84533326 / +5.9% 0.73 / 0.75 / -2.7%
tpcds_q28/datafusion:vortex-file-compressed 17824720 / 17864450 / -0.2% 33598899 / 33425488 / +0.5% 0.53 / 0.53 / -0.7%
tpcds_q29/datafusion:vortex-file-compressed 58784295 / 58927133 / -0.2% 80802555 / 81770669 / -1.2% 0.73 / 0.72 / +1.0%
tpcds_q30/datafusion:vortex-file-compressed 27038728 / 27389422 / -1.3% 46527000 / 42670860 / +9.0% 0.58 / 0.64 / -9.5%
tpcds_q31/datafusion:vortex-file-compressed 58488876 / 58614714 / -0.2% 80060988 / 80843671 / -1.0% 0.73 / 0.73 / +0.8%
tpcds_q32/datafusion:vortex-file-compressed 13825526 / 13670157 / +1.1% 29280401 / 28270284 / +3.6% 0.47 / 0.48 / -2.4%
tpcds_q33/datafusion:vortex-file-compressed 27345632 / 27192720 / +0.6% 52561405 / 46596888 / +12.8% 🔴 0.52 / 0.58 / -10.8%
tpcds_q34/datafusion:vortex-file-compressed 17353539 / 17348670 / +0.0% 35408026 / 34848845 / +1.6% 0.49 / 0.50 / -1.6%
tpcds_q35/datafusion:vortex-file-compressed 33866402 / 34062130 / -0.6% 55763063 / 54414996 / +2.5% 0.61 / 0.63 / -3.0%
tpcds_q36/datafusion:vortex-file-compressed 47802182 / 47827877 / -0.1% 74173003 / 68446358 / +8.4% 0.64 / 0.70 / -7.8%
tpcds_q37/datafusion:vortex-file-compressed 13111981 / 13024588 / +0.7% 32913297 / 30777837 / +6.9% 0.40 / 0.42 / -5.9%
tpcds_q38/datafusion:vortex-file-compressed 29365313 / 29912662 / -1.8% 50250608 / 48286117 / +4.1% 0.58 / 0.62 / -5.7%
tpcds_q39/datafusion:vortex-file-compressed 61736024 / 62095772 / -0.6% 89083653 / 86203810 / +3.3% 0.69 / 0.72 / -3.8%
tpcds_q40/datafusion:vortex-file-compressed 23842647 / 24096222 / -1.1% 44116316 / 42104615 / +4.8% 0.54 / 0.57 / -5.6%
tpcds_q41/datafusion:vortex-file-compressed 17059552 / 17669398 / -3.5% 30717801 / 30987750 / -0.9% 0.56 / 0.57 / -2.6%
tpcds_q42/datafusion:vortex-file-compressed 11161356 / 11286578 / -1.1% 26254796 / 25025573 / +4.9% 0.43 / 0.45 / -5.7%
tpcds_q43/datafusion:vortex-file-compressed 12701514 / 12800876 / -0.8% 28643508 / 27602665 / +3.8% 0.44 / 0.46 / -4.4%
tpcds_q44/datafusion:vortex-file-compressed 26253902 / 25934996 / +1.2% 47788168 / 46062387 / +3.7% 0.55 / 0.56 / -2.4%
tpcds_q45/datafusion:vortex-file-compressed 18168917 / 18161600 / +0.0% 37895219 / 36344061 / +4.3% 0.48 / 0.50 / -4.1%
tpcds_q46/datafusion:vortex-file-compressed 22895674 / 22746856 / +0.7% 47216071 / 44906032 / +5.1% 0.48 / 0.51 / -4.3%
tpcds_q47/datafusion:vortex-file-compressed 77474170 / 78535050 / -1.4% 105167574 / 104083181 / +1.0% 0.74 / 0.75 / -2.4%
tpcds_q48/datafusion:vortex-file-compressed 29496712 / 29606816 / -0.4% 48045577 / 45891016 / +4.7% 0.61 / 0.65 / -4.8%
tpcds_q49/datafusion:vortex-file-compressed 59990135 / 56842230 / +5.5% 77818804 / 78102635 / -0.4% 0.77 / 0.73 / +5.9%
tpcds_q50/datafusion:vortex-file-compressed 31968797 / 32173058 / -0.6% 50780601 / 51184664 / -0.8% 0.63 / 0.63 / +0.2%
tpcds_q51/datafusion:vortex-file-compressed 67533761 / 67305988 / +0.3% 88917671 / 86778009 / +2.5% 0.76 / 0.78 / -2.1%
tpcds_q52/datafusion:vortex-file-compressed 11796405 / 11792805 / +0.0% 27637624 / 26832332 / +3.0% 0.43 / 0.44 / -2.9%
tpcds_q53/datafusion:vortex-file-compressed 17737751 / 17537298 / +1.1% 38643541 / 36541216 / +5.8% 0.46 / 0.48 / -4.4%
tpcds_q54/datafusion:vortex-file-compressed 33243244 / 33194521 / +0.1% 54089119 / 53668210 / +0.8% 0.61 / 0.62 / -0.6%
tpcds_q55/datafusion:vortex-file-compressed 11432434 / 11325256 / +0.9% 25486159 / 25321428 / +0.7% 0.45 / 0.45 / +0.3%
tpcds_q56/datafusion:vortex-file-compressed 26535152 / 26466136 / +0.3% 48758776 / 46246220 / +5.4% 0.54 / 0.57 / -4.9%
tpcds_q57/datafusion:vortex-file-compressed 77599384 / 77349734 / +0.3% 100927526 / 102207780 / -1.3% 0.77 / 0.76 / +1.6%
tpcds_q58/datafusion:vortex-file-compressed 40834139 / 40476795 / +0.9% 67464251 / 64465267 / +4.7% 0.61 / 0.63 / -3.6%
tpcds_q59/datafusion:vortex-file-compressed 31227732 / 31258431 / -0.1% 52184368 / 50631776 / +3.1% 0.60 / 0.62 / -3.1%
tpcds_q60/datafusion:vortex-file-compressed 26270436 / 26680270 / -1.5% 45889873 / 45827969 / +0.1% 0.57 / 0.58 / -1.7%
tpcds_q61/datafusion:vortex-file-compressed 23204067 / 22952304 / +1.1% 44239504 / 42973962 / +2.9% 0.52 / 0.53 / -1.8%
tpcds_q62/datafusion:vortex-file-compressed 17863053 / 18255630 / -2.2% 32707841 / 32478773 / +0.7% 0.55 / 0.56 / -2.8%
tpcds_q63/datafusion:vortex-file-compressed 17714952 / 17731795 / -0.1% 38038582 / 37129981 / +2.4% 0.47 / 0.48 / -2.5%
tpcds_q64/datafusion:vortex-file-compressed 223584671 / 223628596 / -0.0% 259594444 / 261821758 / -0.9% 0.86 / 0.85 / +0.8%
tpcds_q65/datafusion:vortex-file-compressed 74910878 / 75324954 / -0.5% 95084611 / 93701579 / +1.5% 0.79 / 0.80 / -2.0%
tpcds_q66/datafusion:vortex-file-compressed 52573377 / 52401064 / +0.3% 71193951 / 70379700 / +1.2% 0.74 / 0.74 / -0.8%
tpcds_q67/datafusion:vortex-file-compressed 58093544 / 58063664 / +0.1% 87809517 / 85134055 / +3.1% 0.66 / 0.68 / -3.0%
tpcds_q68/datafusion:vortex-file-compressed 22210171 / 22085051 / +0.6% 45793582 / 45764202 / +0.1% 0.49 / 0.48 / +0.5%
tpcds_q69/datafusion:vortex-file-compressed 28014540 / 28201996 / -0.7% 47920509 / 46312790 / +3.5% 0.58 / 0.61 / -4.0%
tpcds_q70/datafusion:vortex-file-compressed 71021550 / 70557484 / +0.7% 89726657 / 88663508 / +1.2% 0.79 / 0.80 / -0.5%
tpcds_q71/datafusion:vortex-file-compressed 18379362 / 18844756 / -2.5% 35540294 / 35940268 / -1.1% 0.52 / 0.52 / -1.4%
tpcds_q72/datafusion:vortex-file-compressed 344704262 / 352630149 / -2.2% 390571030 / 402964821 / -3.1% 0.88 / 0.88 / +0.9%
tpcds_q73/datafusion:vortex-file-compressed 16339510 / 16736020 / -2.4% 35669584 / 34868673 / +2.3% 0.46 / 0.48 / -4.6%
tpcds_q74/datafusion:vortex-file-compressed 45637818 / 45967482 / -0.7% 71746488 / 70192707 / +2.2% 0.64 / 0.65 / -2.9%
tpcds_q75/datafusion:vortex-file-compressed 135160976 / 136327010 / -0.9% 166366544 / 163186206 / +1.9% 0.81 / 0.84 / -2.8%
tpcds_q76/datafusion:vortex-file-compressed 26830928 / 26324230 / +1.9% 44930482 / 43777449 / +2.6% 0.60 / 0.60 / -0.7%
tpcds_q77/datafusion:vortex-file-compressed 44719928 / 45565959 / -1.9% 67180649 / 65616056 / +2.4% 0.67 / 0.69 / -4.1%
tpcds_q78/datafusion:vortex-file-compressed 68034956 / 69577331 / -2.2% 97217979 / 94866066 / +2.5% 0.70 / 0.73 / -4.6%
tpcds_q79/datafusion:vortex-file-compressed 19655010 / 19611042 / +0.2% 40694611 / 38993699 / +4.4% 0.48 / 0.50 / -4.0%
tpcds_q80/datafusion:vortex-file-compressed 74165827 / 74999212 / -1.1% 103821043 / 102384363 / +1.4% 0.71 / 0.73 / -2.5%
tpcds_q81/datafusion:vortex-file-compressed 27312526 / 27640939 / -1.2% 43996599 / 44011481 / -0.0% 0.62 / 0.63 / -1.2%
tpcds_q82/datafusion:vortex-file-compressed 13052419 / 13453336 / -3.0% 33211598 / 29227442 / +13.6% 🔴 0.39 / 0.46 / -14.6%
tpcds_q83/datafusion:vortex-file-compressed 35074540 / 35834170 / -2.1% 52163577 / 54347155 / -4.0% 0.67 / 0.66 / +2.0%
tpcds_q84/datafusion:vortex-file-compressed 11879594 / 12267092 / -3.2% 25336805 / 25221336 / +0.5% 0.47 / 0.49 / -3.6%
tpcds_q85/datafusion:vortex-file-compressed 57637258 / 58318192 / -1.2% 80800483 / 79877776 / +1.2% 0.71 / 0.73 / -2.3%
tpcds_q86/datafusion:vortex-file-compressed 16688684 / 16637786 / +0.3% 33664418 / 31665993 / +6.3% 0.50 / 0.53 / -5.6%
tpcds_q87/datafusion:vortex-file-compressed 30342807 / 29888216 / +1.5% 49392662 / 48189285 / +2.5% 0.61 / 0.62 / -1.0%
tpcds_q88/datafusion:vortex-file-compressed 31868042 / 31577401 / +0.9% 63855158 / 59348594 / +7.6% 0.50 / 0.53 / -6.2%
tpcds_q89/datafusion:vortex-file-compressed 21129082 / 20511202 / +3.0% 39315940 / 38207389 / +2.9% 0.54 / 0.54 / +0.1%
tpcds_q90/datafusion:vortex-file-compressed 10525921 / 10504856 / +0.2% 24818266 / 23682825 / +4.8% 0.42 / 0.44 / -4.4%
tpcds_q91/datafusion:vortex-file-compressed 15650783 / 15706330 / -0.4% 34958647 / 32699695 / +6.9% 0.45 / 0.48 / -6.8%
tpcds_q92/datafusion:vortex-file-compressed 13595386 / 13684255 / -0.6% 28670517 / 27238562 / +5.3% 0.47 / 0.50 / -5.6%
tpcds_q93/datafusion:vortex-file-compressed 22328810 / 21999783 / +1.5% 42094256 / 39719161 / +6.0% 0.53 / 0.55 / -4.2%
tpcds_q94/datafusion:vortex-file-compressed 19594212 / 19580596 / +0.1% 36284357 / 33899366 / +7.0% 0.54 / 0.58 / -6.5%
tpcds_q95/datafusion:vortex-file-compressed 45154483 / 45080774 / +0.2% 65015117 / 62573696 / +3.9% 0.69 / 0.72 / -3.6%
tpcds_q96/datafusion:vortex-file-compressed 8635804 / 8333268 / +3.6% 21842072 / 21443442 / +1.9% 0.40 / 0.39 / +1.7%
tpcds_q97/datafusion:vortex-file-compressed 21052240 / 21061622 / -0.0% 41284285 / 40025965 / +3.1% 0.51 / 0.53 / -3.1%
tpcds_q98/datafusion:vortex-file-compressed 17030930 / 16844690 / +1.1% 36302596 / 35523598 / +2.2% 0.47 / 0.47 / -1.1%
tpcds_q99/datafusion:vortex-file-compressed 20956478 / 20762023 / +0.9% 35715888 / 34364218 / +3.9% 0.59 / 0.60 / -2.9%
datafusion / parquet / ns (0.999x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpcds_q01/datafusion:parquet 43119234 / 41237674 / +4.6% 62439268 / 61047508 / +2.3% 0.69 / 0.68 / +2.2%
tpcds_q02/datafusion:parquet 54918753 / 54683742 / +0.4% 71537540 / 71253627 / +0.4% 0.77 / 0.77 / +0.0%
tpcds_q03/datafusion:parquet 19199758 / 19232764 / -0.2% 33751985 / 29635415 / +13.9% 🔴 0.57 / 0.65 / -12.3%
tpcds_q04/datafusion:parquet 181794716 / 181216574 / +0.3% 209455834 / 205630668 / +1.9% 0.87 / 0.88 / -1.5%
tpcds_q05/datafusion:parquet 68731836 / 68804129 / -0.1% 89791405 / 91037707 / -1.4% 0.77 / 0.76 / +1.3%
tpcds_q06/datafusion:parquet 33444094 / 33028204 / +1.3% 47934030 / 46815413 / +2.4% 0.70 / 0.71 / -1.1%
tpcds_q07/datafusion:parquet 46962128 / 46974674 / -0.0% 67790173 / 66911046 / +1.3% 0.69 / 0.70 / -1.3%
tpcds_q08/datafusion:parquet 30668326 / 31174152 / -1.6% 46696414 / 45410028 / +2.8% 0.66 / 0.69 / -4.3%
tpcds_q09/datafusion:parquet 31756086 / 34168634 / -7.1% 42570256 / 44484745 / -4.3% 0.75 / 0.77 / -2.9%
tpcds_q10/datafusion:parquet 45264572 / 45112421 / +0.3% 59698240 / 57177631 / +4.4% 0.76 / 0.79 / -3.9%
tpcds_q11/datafusion:parquet 99932847 / 98752582 / +1.2% 120788214 / 120786339 / +0.0% 0.83 / 0.82 / +1.2%
tpcds_q12/datafusion:parquet 23817758 / 23985924 / -0.7% 37793191 / 35397978 / +6.8% 0.63 / 0.68 / -7.0%
tpcds_q13/datafusion:parquet 45808450 / 46839674 / -2.2% 67049316 / 66485215 / +0.8% 0.68 / 0.70 / -3.0%
tpcds_q14/datafusion:parquet 539062237 / 536512640 / +0.5% 591044280 / 587702283 / +0.6% 0.91 / 0.91 / -0.1%
tpcds_q15/datafusion:parquet 23830409 / 23594156 / +1.0% 38025116 / 38620929 / -1.5% 0.63 / 0.61 / +2.6%
tpcds_q16/datafusion:parquet 36959942 / 37035918 / -0.2% 49934421 / 52241859 / -4.4% 0.74 / 0.71 / +4.4%
tpcds_q17/datafusion:parquet 73808522 / 73740780 / +0.1% 99771576 / 95528016 / +4.4% 0.74 / 0.77 / -4.2%
tpcds_q18/datafusion:parquet 67405238 / 68419783 / -1.5% 90001506 / 84698704 / +6.3% 0.75 / 0.81 / -7.3%
tpcds_q19/datafusion:parquet 29752800 / 29567482 / +0.6% 43975661 / 43278686 / +1.6% 0.68 / 0.68 / -1.0%
tpcds_q20/datafusion:parquet 25854230 / 25945232 / -0.4% 37325160 / 39146651 / -4.7% 0.69 / 0.66 / +4.5%
tpcds_q21/datafusion:parquet 20475904 / 20584002 / -0.5% 31923028 / 32047115 / -0.4% 0.64 / 0.64 / -0.1%
tpcds_q22/datafusion:parquet 77925236 / 77279992 / +0.8% 90566199 / 88963446 / +1.8% 0.86 / 0.87 / -0.9%
tpcds_q23/datafusion:parquet 94280662 / 93307484 / +1.0% 112903727 / 116037018 / -2.7% 0.84 / 0.80 / +3.8%
tpcds_q24/datafusion:parquet 91162960 / 91648664 / -0.5% 116059507 / 116895366 / -0.7% 0.79 / 0.78 / +0.2%
tpcds_q25/datafusion:parquet 80454332 / 81363052 / -1.1% 103975739 / 98740077 / +5.3% 0.77 / 0.82 / -6.1%
tpcds_q26/datafusion:parquet 43980218 / 43157762 / +1.9% 62559330 / 57088043 / +9.6% 0.70 / 0.76 / -7.0%
tpcds_q27/datafusion:parquet 79540157 / 78277096 / +1.6% 96100890 / 97566435 / -1.5% 0.83 / 0.80 / +3.2%
tpcds_q28/datafusion:parquet 29321096 / 28642444 / +2.4% 44866100 / 41665779 / +7.7% 0.65 / 0.69 / -4.9%
tpcds_q29/datafusion:parquet 75187976 / 75772818 / -0.8% 97309062 / 96034981 / +1.3% 0.77 / 0.79 / -2.1%
tpcds_q30/datafusion:parquet 45902102 / 46667241 / -1.6% 59641089 / 57576198 / +3.6% 0.77 / 0.81 / -5.0%
tpcds_q31/datafusion:parquet 82148946 / 82776198 / -0.8% 99563942 / 99391007 / +0.2% 0.83 / 0.83 / -0.9%
tpcds_q32/datafusion:parquet 26223852 / 26711960 / -1.8% 39779094 / 40945733 / -2.8% 0.66 / 0.65 / +1.1%
tpcds_q33/datafusion:parquet 37817461 / 37390050 / +1.1% 52483153 / 53737761 / -2.3% 0.72 / 0.70 / +3.6%
tpcds_q34/datafusion:parquet 24712678 / 24165604 / +2.3% 36047856 / 36730319 / -1.9% 0.69 / 0.66 / +4.2%
tpcds_q35/datafusion:parquet 50717228 / 51476142 / -1.5% 63410385 / 61838723 / +2.5% 0.80 / 0.83 / -3.9%
tpcds_q36/datafusion:parquet 52811990 / 52379374 / +0.8% 73789277 / 70307770 / +5.0% 0.72 / 0.75 / -3.9%
tpcds_q37/datafusion:parquet 21578072 / 21267638 / +1.5% 33905067 / 32835003 / +3.3% 0.64 / 0.65 / -1.7%
tpcds_q38/datafusion:parquet 44660225 / 45012703 / -0.8% 60649721 / 61377978 / -1.2% 0.74 / 0.73 / +0.4%
tpcds_q39/datafusion:parquet 68427010 / 68519072 / -0.1% 84273556 / 82894307 / +1.7% 0.81 / 0.83 / -1.8%
tpcds_q40/datafusion:parquet 31579328 / 31142360 / +1.4% 50016282 / 48776440 / +2.5% 0.63 / 0.64 / -1.1%
tpcds_q41/datafusion:parquet 19705508 / 19877606 / -0.9% 31745090 / 31809658 / -0.2% 0.62 / 0.62 / -0.7%
tpcds_q42/datafusion:parquet 18187778 / 18375912 / -1.0% 30121893 / 30144584 / -0.1% 0.60 / 0.61 / -0.9%
tpcds_q43/datafusion:parquet 19569922 / 19689218 / -0.6% 33099696 / 32421935 / +2.1% 0.59 / 0.61 / -2.6%
tpcds_q44/datafusion:parquet 35941017 / 36352672 / -1.1% 51242005 / 51584336 / -0.7% 0.70 / 0.70 / -0.5%
tpcds_q45/datafusion:parquet 27070131 / 27914660 / -3.0% 40112550 / 41842907 / -4.1% 0.67 / 0.67 / +1.2%
tpcds_q46/datafusion:parquet 29628110 / 30118244 / -1.6% 46066694 / 45540435 / +1.2% 0.64 / 0.66 / -2.8%
tpcds_q47/datafusion:parquet 98902179 / 97984259 / +0.9% 119844358 / 120914670 / -0.9% 0.83 / 0.81 / +1.8%
tpcds_q48/datafusion:parquet 41519970 / 41389094 / +0.3% 58900443 / 59160672 / -0.4% 0.70 / 0.70 / +0.8%
tpcds_q49/datafusion:parquet 72460099 / 71845015 / +0.9% 94577407 / 95553020 / -1.0% 0.77 / 0.75 / +1.9%
tpcds_q50/datafusion:parquet 47625399 / 48801714 / -2.4% 70953136 / 67248170 / +5.5% 0.67 / 0.73 / -7.5%
tpcds_q51/datafusion:parquet 75487613 / 76400302 / -1.2% 96006600 / 95095329 / +1.0% 0.79 / 0.80 / -2.1%
tpcds_q52/datafusion:parquet 18762394 / 18905687 / -0.8% 31214818 / 30401187 / +2.7% 0.60 / 0.62 / -3.3%
tpcds_q53/datafusion:parquet 23659414 / 22784340 / +3.8% 38978812 / 37423006 / +4.2% 0.61 / 0.61 / -0.3%
tpcds_q54/datafusion:parquet 52310932 / 52214500 / +0.2% 67368023 / 63785965 / +5.6% 0.78 / 0.82 / -5.1%
tpcds_q55/datafusion:parquet 18453672 / 18506343 / -0.3% 32316249 / 28901473 / +11.8% 🔴 0.57 / 0.64 / -10.8%
tpcds_q56/datafusion:parquet 41045997 / 40666124 / +0.9% 55022944 / 54307184 / +1.3% 0.75 / 0.75 / -0.4%
tpcds_q57/datafusion:parquet 101144060 / 101983490 / -0.8% 115523491 / 113851886 / +1.5% 0.88 / 0.90 / -2.3%
tpcds_q58/datafusion:parquet 65494378 / 64951072 / +0.8% 83492794 / 83772691 / -0.3% 0.78 / 0.78 / +1.2%
tpcds_q59/datafusion:parquet 48263292 / 48725940 / -0.9% 64082815 / 65551177 / -2.2% 0.75 / 0.74 / +1.3%
tpcds_q60/datafusion:parquet 41726572 / 40824857 / +2.2% 54555906 / 54848493 / -0.5% 0.76 / 0.74 / +2.8%
tpcds_q61/datafusion:parquet 38156373 / 35875874 / +6.4% 51270620 / 50097483 / +2.3% 0.74 / 0.72 / +3.9%
tpcds_q62/datafusion:parquet 25063044 / 25386920 / -1.3% 37757927 / 37582608 / +0.5% 0.66 / 0.68 / -1.7%
tpcds_q63/datafusion:parquet 22340822 / 22474233 / -0.6% 38908397 / 38530180 / +1.0% 0.57 / 0.58 / -1.6%
tpcds_q64/datafusion:parquet 290702178 / 291474830 / -0.3% 332433016 / 329359841 / +0.9% 0.87 / 0.88 / -1.2%
tpcds_q65/datafusion:parquet 121301411 / 121202213 / +0.1% 132590247 / 139234236 / -4.8% 0.91 / 0.87 / +5.1%
tpcds_q66/datafusion:parquet 60555396 / 61059063 / -0.8% 77051741 / 77138722 / -0.1% 0.79 / 0.79 / -0.7%
tpcds_q67/datafusion:parquet 69670666 / 69429791 / +0.3% 92470989 / 91483174 / +1.1% 0.75 / 0.76 / -0.7%
tpcds_q68/datafusion:parquet 29212571 / 29894340 / -2.3% 48879092 / 47541370 / +2.8% 0.60 / 0.63 / -5.0%
tpcds_q69/datafusion:parquet 43900738 / 44100656 / -0.5% 58712075 / 58153803 / +1.0% 0.75 / 0.76 / -1.4%
tpcds_q70/datafusion:parquet 80904168 / 80699214 / +0.3% 97370152 / 101686923 / -4.2% 0.83 / 0.79 / +4.7%
tpcds_q71/datafusion:parquet 24598252 / 27053920 / -9.1% 36976954 / 38867178 / -4.9% 0.67 / 0.70 / -4.4%
tpcds_q72/datafusion:parquet 517864536 / 527548112 / -1.8% 545923271 / 545581897 / +0.1% 0.95 / 0.97 / -1.9%
tpcds_q73/datafusion:parquet 24011310 / 23916453 / +0.4% 35499773 / 36439971 / -2.6% 0.68 / 0.66 / +3.1%
tpcds_q74/datafusion:parquet 69418901 / 71771388 / -3.3% 87870773 / 90240806 / -2.6% 0.79 / 0.80 / -0.7%
tpcds_q75/datafusion:parquet 153704434 / 153086779 / +0.4% 179312839 / 179446999 / -0.1% 0.86 / 0.85 / +0.5%
tpcds_q76/datafusion:parquet 33386130 / 34782831 / -4.0% 47357174 / 46500554 / +1.8% 0.70 / 0.75 / -5.8%
tpcds_q77/datafusion:parquet 57200748 / 56987314 / +0.4% 74847445 / 77774384 / -3.8% 0.76 / 0.73 / +4.3%
tpcds_q78/datafusion:parquet 87246951 / 85150991 / +2.5% 117317424 / 117023342 / +0.3% 0.74 / 0.73 / +2.2%
tpcds_q79/datafusion:parquet 27790812 / 27413666 / +1.4% 42261043 / 41326635 / +2.3% 0.66 / 0.66 / -0.9%
tpcds_q80/datafusion:parquet 79578866 / 81861987 / -2.8% 112233053 / 109146990 / +2.8% 0.71 / 0.75 / -5.5%
tpcds_q81/datafusion:parquet 38969557 / 36445585 / +6.9% 50389985 / 53162669 / -5.2% 0.77 / 0.69 / +12.8%
tpcds_q82/datafusion:parquet 22803542 / 22631142 / +0.8% 36177391 / 35871289 / +0.9% 0.63 / 0.63 / -0.1%
tpcds_q83/datafusion:parquet 58919432 / 57647332 / +2.2% 71545745 / 74119934 / -3.5% 0.82 / 0.78 / +5.9%
tpcds_q84/datafusion:parquet 26144442 / 26036656 / +0.4% 38870602 / 42409010 / -8.3% 0.67 / 0.61 / +9.6%
tpcds_q85/datafusion:parquet 80224578 / 81239623 / -1.2% 102692209 / 102867523 / -0.2% 0.78 / 0.79 / -1.1%
tpcds_q86/datafusion:parquet 20763560 / 20845431 / -0.4% 32908760 / 33489705 / -1.7% 0.63 / 0.62 / +1.4%
tpcds_q87/datafusion:parquet 44715428 / 45013615 / -0.7% 64320081 / 61399131 / +4.8% 0.70 / 0.73 / -5.2%
tpcds_q88/datafusion:parquet 37553906 / 37664881 / -0.3% 50589853 / 51312700 / -1.4% 0.74 / 0.73 / +1.1%
tpcds_q89/datafusion:parquet 26041819 / 25994244 / +0.2% 41217099 / 41193575 / +0.1% 0.63 / 0.63 / +0.1%
tpcds_q90/datafusion:parquet 14782378 / 14579625 / +1.4% 26726847 / 25762001 / +3.7% 0.55 / 0.57 / -2.3%
tpcds_q91/datafusion:parquet 33196714 / 32208153 / +3.1% 45728104 / 49264834 / -7.2% 0.73 / 0.65 / +11.0%
tpcds_q92/datafusion:parquet 26908744 / 26677306 / +0.9% 41082863 / 41181581 / -0.2% 0.65 / 0.65 / +1.1%
tpcds_q93/datafusion:parquet 27196167 / 28552268 / -4.7% 47042775 / 46191950 / +1.8% 0.58 / 0.62 / -6.5%
tpcds_q94/datafusion:parquet 36024309 / 36193699 / -0.5% 48455223 / 47724743 / +1.5% 0.74 / 0.76 / -2.0%
tpcds_q95/datafusion:parquet 63656488 / 64984978 / -2.0% 78085112 / 76599000 / +1.9% 0.82 / 0.85 / -3.9%
tpcds_q96/datafusion:parquet 12787770 / 12539142 / +2.0% 24030193 / 23611996 / +1.8% 0.53 / 0.53 / +0.2%
tpcds_q97/datafusion:parquet 35793282 / 35897484 / -0.3% 50640561 / 51016025 / -0.7% 0.71 / 0.70 / +0.4%
tpcds_q98/datafusion:parquet 25004504 / 25398902 / -1.6% 40002665 / 39263662 / +1.9% 0.63 / 0.65 / -3.4%
tpcds_q99/datafusion:parquet 29898943 / 29766702 / +0.4% 42150624 / 42694391 / -1.3% 0.71 / 0.70 / +1.7%
duckdb / vortex-file-compressed / ns (1.008x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpcds_q01/duckdb:vortex-file-compressed 15913724 / 15802422 / +0.7% 25015147 / 24298052 / +3.0% 0.64 / 0.65 / -2.2%
tpcds_q02/duckdb:vortex-file-compressed 15427498 / 15305089 / +0.8% 23227769 / 22451786 / +3.5% 0.66 / 0.68 / -2.6%
tpcds_q03/duckdb:vortex-file-compressed 6879926 / 6801088 / +1.2% 16103679 / 14682399 / +9.7% 0.43 / 0.46 / -7.8%
tpcds_q04/duckdb:vortex-file-compressed 45328358 / 44949311 / +0.8% 54942010 / 54021477 / +1.7% 0.83 / 0.83 / -0.8%
tpcds_q05/duckdb:vortex-file-compressed 23109264 / 22631856 / +2.1% 31137868 / 30025929 / +3.7% 0.74 / 0.75 / -1.5%
tpcds_q06/duckdb:vortex-file-compressed 23577799 / 23763109 / -0.8% 37417072 / 36753487 / +1.8% 0.63 / 0.65 / -2.5%
tpcds_q07/duckdb:vortex-file-compressed 13817177 / 13699557 / +0.9% 24876242 / 24304154 / +2.4% 0.56 / 0.56 / -1.5%
tpcds_q08/duckdb:vortex-file-compressed 17148802 / 17085020 / +0.4% 25381821 / 25109459 / +1.1% 0.68 / 0.68 / -0.7%
tpcds_q09/duckdb:vortex-file-compressed 18538869 / 18220904 / +1.7% 29619945 / 27169800 / +9.0% 0.63 / 0.67 / -6.7%
tpcds_q10/duckdb:vortex-file-compressed 26860135 / 26801511 / +0.2% 39794767 / 39147460 / +1.7% 0.67 / 0.68 / -1.4%
tpcds_q11/duckdb:vortex-file-compressed 36841899 / 36281728 / +1.5% 44885821 / 44344059 / +1.2% 0.82 / 0.82 / +0.3%
tpcds_q12/duckdb:vortex-file-compressed 9816088 / 9981268 / -1.7% 16862799 / 16095986 / +4.8% 0.58 / 0.62 / -6.1%
tpcds_q13/duckdb:vortex-file-compressed 20555430 / 20824883 / -1.3% 34855045 / 32294824 / +7.9% 0.59 / 0.64 / -8.5%
tpcds_q14/duckdb:vortex-file-compressed 56551050 / 54953832 / +2.9% 66435488 / 64388389 / +3.2% 0.85 / 0.85 / -0.3%
tpcds_q15/duckdb:vortex-file-compressed 11060522 / 10796783 / +2.4% 18375441 / 17642644 / +4.2% 0.60 / 0.61 / -1.6%
tpcds_q16/duckdb:vortex-file-compressed 24158741 / 23952759 / +0.9% 34965159 / 34360553 / +1.8% 0.69 / 0.70 / -0.9%
tpcds_q17/duckdb:vortex-file-compressed 24999978 / 25491742 / -1.9% 38942713 / 37997711 / +2.5% 0.64 / 0.67 / -4.3%
tpcds_q18/duckdb:vortex-file-compressed 30986850 / 30985417 / +0.0% 41572162 / 39804911 / +4.4% 0.75 / 0.78 / -4.2%
tpcds_q19/duckdb:vortex-file-compressed 78281766 / 77678128 / +0.8% 90970069 / 88630918 / +2.6% 0.86 / 0.88 / -1.8%
tpcds_q20/duckdb:vortex-file-compressed 10553777 / 10469396 / +0.8% 17941352 / 17162569 / +4.5% 0.59 / 0.61 / -3.6%
tpcds_q21/duckdb:vortex-file-compressed 10321722 / 10469072 / -1.4% 22469970 / 22060763 / +1.9% 0.46 / 0.47 / -3.2%
tpcds_q22/duckdb:vortex-file-compressed 18301996 / 18247900 / +0.3% 28808681 / 28626706 / +0.6% 0.64 / 0.64 / -0.3%
tpcds_q23/duckdb:vortex-file-compressed 37943460 / 37388230 / +1.5% 48197305 / 47844431 / +0.7% 0.79 / 0.78 / +0.7%
tpcds_q24/duckdb:vortex-file-compressed 27178799 / 26953025 / +0.8% 38334206 / 37623069 / +1.9% 0.71 / 0.72 / -1.0%
tpcds_q25/duckdb:vortex-file-compressed 23430590 / 23263917 / +0.7% 37216303 / 35055325 / +6.2% 0.63 / 0.66 / -5.1%
tpcds_q26/duckdb:vortex-file-compressed 13092824 / 12846210 / +1.9% 21668335 / 20251460 / +7.0% 0.60 / 0.63 / -4.7%
tpcds_q27/duckdb:vortex-file-compressed 16204100 / 16295213 / -0.6% 27613519 / 26729320 / +3.3% 0.59 / 0.61 / -3.7%
tpcds_q28/duckdb:vortex-file-compressed 15007682 / 14988394 / +0.1% 24541987 / 23071968 / +6.4% 0.61 / 0.65 / -5.9%
tpcds_q29/duckdb:vortex-file-compressed 23606616 / 23087950 / +2.2% 37382470 / 35891438 / +4.2% 0.63 / 0.64 / -1.8%
tpcds_q30/duckdb:vortex-file-compressed 15796962 / 15688242 / +0.7% 24624050 / 22423346 / +9.8% 0.64 / 0.70 / -8.3%
tpcds_q31/duckdb:vortex-file-compressed 18120108 / 17762258 / +2.0% 26126754 / 25452879 / +2.6% 0.69 / 0.70 / -0.6%
tpcds_q32/duckdb:vortex-file-compressed 11931486 / 11546310 / +3.3% 20107365 / 20670282 / -2.7% 0.59 / 0.56 / +6.2%
tpcds_q33/duckdb:vortex-file-compressed 17497791 / 17384540 / +0.7% 26183486 / 26093960 / +0.3% 0.67 / 0.67 / +0.3%
tpcds_q34/duckdb:vortex-file-compressed 12507392 / 12152618 / +2.9% 22723266 / 21373333 / +6.3% 0.55 / 0.57 / -3.2%
tpcds_q35/duckdb:vortex-file-compressed 28121449 / 27448528 / +2.5% 38524810 / 37542216 / +2.6% 0.73 / 0.73 / -0.2%
tpcds_q36/duckdb:vortex-file-compressed 14648628 / 14396148 / +1.8% 25067849 / 23910207 / +4.8% 0.58 / 0.60 / -2.9%
tpcds_q37/duckdb:vortex-file-compressed 9093361 / 9017662 / +0.8% 22877893 / 22629144 / +1.1% 0.40 / 0.40 / -0.3%
tpcds_q38/duckdb:vortex-file-compressed 24242328 / 23877327 / +1.5% 29666820 / 29721070 / -0.2% 0.82 / 0.80 / +1.7%
tpcds_q39/duckdb:vortex-file-compressed 20161148 / 21390934 / -5.7% 31118658 / 31389335 / -0.9% 0.65 / 0.68 / -4.9%
tpcds_q40/duckdb:vortex-file-compressed 14389925 / 14037827 / +2.5% 21284018 / 20961932 / +1.5% 0.68 / 0.67 / +1.0%
tpcds_q41/duckdb:vortex-file-compressed 14176510 / 14290316 / -0.8% 21919551 / 21326306 / +2.8% 0.65 / 0.67 / -3.5%
tpcds_q42/duckdb:vortex-file-compressed 7096498 / 6978028 / +1.7% 16038522 / 15574302 / +3.0% 0.44 / 0.45 / -1.2%
tpcds_q43/duckdb:vortex-file-compressed 10082228 / 9842237 / +2.4% 20468949 / 17912536 / +14.3% 🔴 0.49 / 0.55 / -10.4%
tpcds_q44/duckdb:vortex-file-compressed 14844019 / 14844436 / -0.0% 26938126 / 24862647 / +8.3% 0.55 / 0.60 / -7.7%
tpcds_q45/duckdb:vortex-file-compressed 23434555 / 23503170 / -0.3% 31599536 / 29707812 / +6.4% 0.74 / 0.79 / -6.3%
tpcds_q46/duckdb:vortex-file-compressed 19168960 / 19151718 / +0.1% 26644432 / 26733870 / -0.3% 0.72 / 0.72 / +0.4%
tpcds_q47/duckdb:vortex-file-compressed 34169920 / 33851195 / +0.9% 43749619 / 43625037 / +0.3% 0.78 / 0.78 / +0.7%
tpcds_q48/duckdb:vortex-file-compressed 23320496 / 23636324 / -1.3% 37733152 / 34494794 / +9.4% 0.62 / 0.69 / -9.8%
tpcds_q49/duckdb:vortex-file-compressed 19681802 / 19740604 / -0.3% 33475355 / 31377618 / +6.7% 0.59 / 0.63 / -6.5%
tpcds_q50/duckdb:vortex-file-compressed 17289065 / 17314214 / -0.1% 29299426 / 28271029 / +3.6% 0.59 / 0.61 / -3.7%
tpcds_q51/duckdb:vortex-file-compressed 49481866 / 49103020 / +0.8% 57378756 / 59394524 / -3.4% 0.86 / 0.83 / +4.3%
tpcds_q52/duckdb:vortex-file-compressed 7120154 / 6913364 / +3.0% 16004204 / 15638787 / +2.3% 0.44 / 0.44 / +0.6%
tpcds_q53/duckdb:vortex-file-compressed 11333988 / 11369348 / -0.3% 19758976 / 18414644 / +7.3% 0.57 / 0.62 / -7.1%
tpcds_q54/duckdb:vortex-file-compressed 20172540 / 19674900 / +2.5% 29830823 / 29413634 / +1.4% 0.68 / 0.67 / +1.1%
tpcds_q55/duckdb:vortex-file-compressed 6773334 / 6869972 / -1.4% 15866058 / 14799017 / +7.2% 0.43 / 0.46 / -8.0%
tpcds_q56/duckdb:vortex-file-compressed 17849772 / 17652373 / +1.1% 26675784 / 26148002 / +2.0% 0.67 / 0.68 / -0.9%
tpcds_q57/duckdb:vortex-file-compressed 25537143 / 25294642 / +1.0% 34355759 / 33190036 / +3.5% 0.74 / 0.76 / -2.5%
tpcds_q58/duckdb:vortex-file-compressed 19965940 / 19545132 / +2.2% 29831533 / 28190594 / +5.8% 0.67 / 0.69 / -3.5%
tpcds_q59/duckdb:vortex-file-compressed 19904532 / 19578103 / +1.7% 27543014 / 26487631 / +4.0% 0.72 / 0.74 / -2.2%
tpcds_q60/duckdb:vortex-file-compressed 18545608 / 18509235 / +0.2% 28841768 / 27189873 / +6.1% 0.64 / 0.68 / -5.5%
tpcds_q61/duckdb:vortex-file-compressed 23691348 / 23351216 / +1.5% 33809133 / 33471701 / +1.0% 0.70 / 0.70 / +0.4%
tpcds_q62/duckdb:vortex-file-compressed 11739529 / 11678724 / +0.5% 19197750 / 18595309 / +3.2% 0.61 / 0.63 / -2.6%
tpcds_q63/duckdb:vortex-file-compressed 11151050 / 11019285 / +1.2% 18924301 / 18570153 / +1.9% 0.59 / 0.59 / -0.7%
tpcds_q64/duckdb:vortex-file-compressed 49582990 / 49515487 / +0.1% 67979210 / 67517919 / +0.7% 0.73 / 0.73 / -0.5%
tpcds_q65/duckdb:vortex-file-compressed 14935503 / 14970884 / -0.2% 25659985 / 23677969 / +8.4% 0.58 / 0.63 / -7.9%
tpcds_q66/duckdb:vortex-file-compressed 28768983 / 29835191 / -3.6% 38387105 / 38121024 / +0.7% 0.75 / 0.78 / -4.2%
tpcds_q67/duckdb:vortex-file-compressed 57782120 / 57911190 / -0.2% 67121413 / 65672432 / +2.2% 0.86 / 0.88 / -2.4%
tpcds_q68/duckdb:vortex-file-compressed 18712480 / 18853756 / -0.7% 26348191 / 26686844 / -1.3% 0.71 / 0.71 / +0.5%
tpcds_q69/duckdb:vortex-file-compressed 22086264 / 21737318 / +1.6% 36452921 / 35312712 / +3.2% 0.61 / 0.62 / -1.6%
tpcds_q70/duckdb:vortex-file-compressed 15486837 / 15214089 / +1.8% 24916249 / 25116282 / -0.8% 0.62 / 0.61 / +2.6%
tpcds_q71/duckdb:vortex-file-compressed 13086257 / 13176744 / -0.7% 22288832 / 21513426 / +3.6% 0.59 / 0.61 / -4.1%
tpcds_q72/duckdb:vortex-file-compressed 54616322 / 54918522 / -0.6% 68753660 / 68135509 / +0.9% 0.79 / 0.81 / -1.4%
tpcds_q73/duckdb:vortex-file-compressed 11431728 / 11306659 / +1.1% 20921287 / 19397154 / +7.9% 0.55 / 0.58 / -6.3%
tpcds_q74/duckdb:vortex-file-compressed 26035578 / 25697200 / +1.3% 33226472 / 32411223 / +2.5% 0.78 / 0.79 / -1.2%
tpcds_q75/duckdb:vortex-file-compressed 28683186 / 28192782 / +1.7% 39245136 / 37472123 / +4.7% 0.73 / 0.75 / -2.9%
tpcds_q76/duckdb:vortex-file-compressed 12914934 / 12874996 / +0.3% 23206235 / 21825489 / +6.3% 0.56 / 0.59 / -5.7%
tpcds_q77/duckdb:vortex-file-compressed 21123521 / 20149040 / +4.8% 31153474 / 29987292 / +3.9% 0.68 / 0.67 / +0.9%
tpcds_q78/duckdb:vortex-file-compressed 43968902 / 43560559 / +0.9% 53357106 / 52259904 / +2.1% 0.82 / 0.83 / -1.1%
tpcds_q79/duckdb:vortex-file-compressed 13225342 / 13198426 / +0.2% 22103084 / 20609413 / +7.2% 0.60 / 0.64 / -6.6%
tpcds_q80/duckdb:vortex-file-compressed 36601060 / 36833196 / -0.6% 49971403 / 48045158 / +4.0% 0.73 / 0.77 / -4.5%
tpcds_q81/duckdb:vortex-file-compressed 21721168 / 20992067 / +3.5% 28829718 / 27998591 / +3.0% 0.75 / 0.75 / +0.5%
tpcds_q82/duckdb:vortex-file-compressed 9410232 / 9552157 / -1.5% 22861245 / 22618428 / +1.1% 0.41 / 0.42 / -2.5%
tpcds_q83/duckdb:vortex-file-compressed 17400502 / 17112580 / +1.7% 24818826 / 22890466 / +8.4% 0.70 / 0.75 / -6.2%
tpcds_q84/duckdb:vortex-file-compressed 15658287 / 15741230 / -0.5% 23383625 / 21887681 / +6.8% 0.67 / 0.72 / -6.9%
tpcds_q85/duckdb:vortex-file-compressed 24265454 / 23880588 / +1.6% 38027356 / 35118704 / +8.3% 0.64 / 0.68 / -6.2%
tpcds_q86/duckdb:vortex-file-compressed 9488146 / 9501361 / -0.1% 16692823 / 16229321 / +2.9% 0.57 / 0.59 / -2.9%
tpcds_q87/duckdb:vortex-file-compressed 26008161 / 25750809 / +1.0% 32462133 / 31702468 / +2.4% 0.80 / 0.81 / -1.4%
tpcds_q88/duckdb:vortex-file-compressed 37321386 / 36913662 / +1.1% 47113631 / 46321419 / +1.7% 0.79 / 0.80 / -0.6%
tpcds_q89/duckdb:vortex-file-compressed 12170998 / 11919950 / +2.1% 21562848 / 19774979 / +9.0% 0.56 / 0.60 / -6.4%
tpcds_q90/duckdb:vortex-file-compressed 8767868 / 8760096 / +0.1% 15544180 / 14284295 / +8.8% 0.56 / 0.61 / -8.0%
tpcds_q91/duckdb:vortex-file-compressed 13898272 / 13962402 / -0.5% 23186858 / 20399433 / +13.7% 🔴 0.60 / 0.68 / -12.4%
tpcds_q92/duckdb:vortex-file-compressed 11977812 / 11802658 / +1.5% 19492579 / 19180502 / +1.6% 0.61 / 0.62 / -0.1%
tpcds_q93/duckdb:vortex-file-compressed 10549172 / 10275175 / +2.7% 26407379 / 23380715 / +12.9% 🔴 0.40 / 0.44 / -9.1%
tpcds_q94/duckdb:vortex-file-compressed 22300210 / 22109685 / +0.9% 32576347 / 30683629 / +6.2% 0.68 / 0.72 / -5.0%
tpcds_q95/duckdb:vortex-file-compressed 40805756 / 40478661 / +0.8% 51170721 / 51298092 / -0.2% 0.80 / 0.79 / +1.1%
tpcds_q96/duckdb:vortex-file-compressed 7270264 / 6663725 / +9.1% 15679407 / 14948764 / +4.9% 0.46 / 0.45 / +4.0%
tpcds_q97/duckdb:vortex-file-compressed 23248210 / 23136591 / +0.5% 30754140 / 31223092 / -1.5% 0.76 / 0.74 / +2.0%
tpcds_q98/duckdb:vortex-file-compressed 11077694 / 10991567 / +0.8% 19238080 / 18386188 / +4.6% 0.58 / 0.60 / -3.7%
tpcds_q99/duckdb:vortex-file-compressed 14748488 / 14867658 / -0.8% 22561733 / 22290310 / +1.2% 0.65 / 0.67 / -2.0%
duckdb / parquet / ns (1.010x ➖, 0↑ 1↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpcds_q01/duckdb:parquet 24513022 / 24382868 / +0.5% 31246165 / 30838129 / +1.3% 0.78 / 0.79 / -0.8%
tpcds_q02/duckdb:parquet 18584476 / 18342060 / +1.3% 25453817 / 24561276 / +3.6% 0.73 / 0.75 / -2.2%
tpcds_q03/duckdb:parquet 9963276 / 9849220 / +1.2% 15979103 / 15695983 / +1.8% 0.62 / 0.63 / -0.6%
tpcds_q04/duckdb:parquet 116756067 / 117815716 / -0.9% 124679346 / 125317614 / -0.5% 0.94 / 0.94 / -0.4%
tpcds_q05/duckdb:parquet 29354102 / 28869834 / +1.7% 33860340 / 33769732 / +0.3% 0.87 / 0.85 / +1.4%
tpcds_q06/duckdb:parquet 26983058 / 26703844 / +1.0% 36161952 / 35621173 / +1.5% 0.75 / 0.75 / -0.5%
tpcds_q07/duckdb:parquet 31700267 / 31832000 / -0.4% 41964135 / 38609895 / +8.7% 0.76 / 0.82 / -8.4%
tpcds_q08/duckdb:parquet 20380225 / 20231890 / +0.7% 26033622 / 26414683 / -1.4% 0.78 / 0.77 / +2.2%
tpcds_q09/duckdb:parquet 27828132 / 26976666 / +3.2% 31427092 / 30018042 / +4.7% 0.89 / 0.90 / -1.5%
tpcds_q10/duckdb:parquet 33213626 / 32992112 / +0.7% 41473219 / 40252062 / +3.0% 0.80 / 0.82 / -2.3%
tpcds_q11/duckdb:parquet 70068155 / 69132114 / +1.4% 77750895 / 75428611 / +3.1% 0.90 / 0.92 / -1.7%
tpcds_q12/duckdb:parquet 14403070 / 14270732 / +0.9% 19903971 / 19328071 / +3.0% 0.72 / 0.74 / -2.0%
tpcds_q13/duckdb:parquet 32104022 / 30678936 / +4.6% 39958593 / 40893576 / -2.3% 0.80 / 0.75 / +7.1%
tpcds_q14/duckdb:parquet 64894580 / 65694288 / -1.2% 71302887 / 70650661 / +0.9% 0.91 / 0.93 / -2.1%
tpcds_q15/duckdb:parquet 16937892 / 16690486 / +1.5% 23181744 / 22797292 / +1.7% 0.73 / 0.73 / -0.2%
tpcds_q16/duckdb:parquet 30764200 / 30682150 / +0.3% 38031231 / 37263109 / +2.1% 0.81 / 0.82 / -1.8%
tpcds_q17/duckdb:parquet 35538363 / 35150436 / +1.1% 41088453 / 40880571 / +0.5% 0.86 / 0.86 / +0.6%
tpcds_q18/duckdb:parquet 48612066 / 47690564 / +1.9% 56487865 / 56376389 / +0.2% 0.86 / 0.85 / +1.7%
tpcds_q19/duckdb:parquet 18997632 / 18840906 / +0.8% 26464162 / 25786093 / +2.6% 0.72 / 0.73 / -1.8%
tpcds_q20/duckdb:parquet 15187698 / 15011050 / +1.2% 20150775 / 19611998 / +2.7% 0.75 / 0.77 / -1.5%
tpcds_q21/duckdb:parquet 11022504 / 10692296 / +3.1% 17810366 / 17136997 / +3.9% 0.62 / 0.62 / -0.8%
tpcds_q22/duckdb:parquet 20919581 / 20844910 / +0.4% 27288334 / 26510262 / +2.9% 0.77 / 0.79 / -2.5%
tpcds_q23/duckdb:parquet 44640528 / 42278441 / +5.6% 48913251 / 53977816 / -9.4% 0.91 / 0.78 / +16.5%
tpcds_q24/duckdb:parquet 30717538 / 30779787 / -0.2% 37590841 / 37849701 / -0.7% 0.82 / 0.81 / +0.5%
tpcds_q25/duckdb:parquet 30977468 / 30801432 / +0.6% 37667116 / 37271181 / +1.1% 0.82 / 0.83 / -0.5%
tpcds_q26/duckdb:parquet 29358630 / 29419484 / -0.2% 36438927 / 35641186 / +2.2% 0.81 / 0.83 / -2.4%
tpcds_q27/duckdb:parquet 33639664 / 34425970 / -2.3% 42231469 / 41622422 / +1.5% 0.80 / 0.83 / -3.7%
tpcds_q28/duckdb:parquet 26446749 / 26682818 / -0.9% 35850847 / 33309630 / +7.6% 0.74 / 0.80 / -7.9%
tpcds_q29/duckdb:parquet 33215119 / 32558876 / +2.0% 40320896 / 39882524 / +1.1% 0.82 / 0.82 / +0.9%
tpcds_q30/duckdb:parquet 36569960 / 36208556 / +1.0% 45228338 / 44832238 / +0.9% 0.81 / 0.81 / +0.1%
tpcds_q31/duckdb:parquet 36638750 / 36111508 / +1.5% 43963912 / 43989898 / -0.1% 0.83 / 0.82 / +1.5%
tpcds_q32/duckdb:parquet 14827775 / 14626952 / +1.4% 21725735 / 21253053 / +2.2% 0.68 / 0.69 / -0.8%
tpcds_q33/duckdb:parquet 24919071 / 24405932 / +2.1% 29463419 / 29415980 / +0.2% 0.85 / 0.83 / +1.9%
tpcds_q34/duckdb:parquet 17383562 / 17122779 / +1.5% 24614272 / 24664505 / -0.2% 0.71 / 0.69 / +1.7%
tpcds_q35/duckdb:parquet 36066512 / 35440778 / +1.8% 45154889 / 44390137 / +1.7% 0.80 / 0.80 / +0.0%
tpcds_q36/duckdb:parquet 40914808 / 40058580 / +2.1% 48609315 / 48102330 / +1.1% 0.84 / 0.83 / +1.1%
tpcds_q37/duckdb:parquet 13252733 / 12905798 / +2.7% 20096517 / 19188113 / +4.7% 0.66 / 0.67 / -2.0%
tpcds_q38/duckdb:parquet 30112916 / 29946381 / +0.6% 35262724 / 34241138 / +3.0% 0.85 / 0.87 / -2.4%
tpcds_q39/duckdb:parquet 23666720 / 23443880 / +1.0% 30015636 / 29952193 / +0.2% 0.79 / 0.78 / +0.7%
tpcds_q40/duckdb:parquet 16606852 / 16469818 / +0.8% 22366717 / 21952767 / +1.9% 0.74 / 0.75 / -1.0%
tpcds_q41/duckdb:parquet 12341790 / 12152346 / +1.6% 18691053 / 19184561 / -2.6% 0.66 / 0.63 / +4.2%
tpcds_q42/duckdb:parquet 9687822 / 9519476 / +1.8% 15894461 / 15530547 / +2.3% 0.61 / 0.61 / -0.6%
tpcds_q43/duckdb:parquet 12614145 / 12581723 / +0.3% 18689222 / 18782455 / -0.5% 0.67 / 0.67 / +0.8%
tpcds_q44/duckdb:parquet 20923048 / 20887080 / +0.2% 27634889 / 28480036 / -3.0% 0.76 / 0.73 / +3.2%
tpcds_q45/duckdb:parquet 21383846 / 21233797 / +0.7% 28861802 / 27877433 / +3.5% 0.74 / 0.76 / -2.7%
tpcds_q46/duckdb:parquet 37432941 / 35833144 / +4.5% 44868079 / 43603981 / +2.9% 0.83 / 0.82 / +1.5%
tpcds_q47/duckdb:parquet 35084906 / 34501142 / +1.7% 41668448 / 41263136 / +1.0% 0.84 / 0.84 / +0.7%
tpcds_q48/duckdb:parquet 30338522 / 33173738 / -8.5% 38004660 / 37616903 / +1.0% 0.80 / 0.88 / -9.5%
tpcds_q49/duckdb:parquet 29837158 / 30020206 / -0.6% 38004130 / 35836898 / +6.0% 0.79 / 0.84 / -6.3%
tpcds_q50/duckdb:parquet 20123055 / 19829589 / +1.5% 26031867 / 25717448 / +1.2% 0.77 / 0.77 / +0.3%
tpcds_q51/duckdb:parquet 52183898 / 52208108 / -0.0% 60484291 / 60532829 / -0.1% 0.86 / 0.86 / +0.0%
tpcds_q52/duckdb:parquet 9834402 / 9752686 / +0.8% 15488491 / 16091844 / -3.7% 0.63 / 0.61 / +4.8%
tpcds_q53/duckdb:parquet 14108350 / 14322545 / -1.5% 21201974 / 20389339 / +4.0% 0.67 / 0.70 / -5.3%
tpcds_q54/duckdb:parquet 25471548 / 25180639 / +1.2% 32797695 / 32261066 / +1.7% 0.78 / 0.78 / -0.5%
tpcds_q55/duckdb:parquet 9780122 / 9632032 / +1.5% 15537172 / 15396276 / +0.9% 0.63 / 0.63 / +0.6%
tpcds_q56/duckdb:parquet 25292564 / 26522552 / -4.6% 32340670 / 30643740 / +5.5% 0.78 / 0.87 / -9.6%
tpcds_q57/duckdb:parquet 30937488 / 30758159 / +0.6% 37102343 / 36338559 / +2.1% 0.83 / 0.85 / -1.5%
tpcds_q58/duckdb:parquet 24706716 / 24228208 / +2.0% 30760135 / 31006220 / -0.8% 0.80 / 0.78 / +2.8%
tpcds_q59/duckdb:parquet 23512476 / 23377982 / +0.6% 29994443 / 29948469 / +0.2% 0.78 / 0.78 / +0.4%
tpcds_q60/duckdb:parquet 28167449 / 28156890 / +0.0% 33478487 / 32209507 / +3.9% 0.84 / 0.87 / -3.8%
tpcds_q61/duckdb:parquet 25751188 / 24941672 / +3.2% 29822175 / 29462197 / +1.2% 0.86 / 0.85 / +2.0%
tpcds_q62/duckdb:parquet 13323806 / 13304912 / +0.1% 18991154 / 18091888 / +5.0% 0.70 / 0.74 / -4.6%
tpcds_q63/duckdb:parquet 14232970 / 13370952 / +6.4% 20266034 / 19919427 / +1.7% 0.70 / 0.67 / +4.6%
tpcds_q64/duckdb:parquet 71778978 / 71791072 / -0.0% 83576134 / 81245168 / +2.9% 0.86 / 0.88 / -2.8%
tpcds_q65/duckdb:parquet 20447130 / 21070074 / -3.0% 25416309 / 28600423 / -11.1% 🟢 0.80 / 0.74 / +9.2%
tpcds_q66/duckdb:parquet 35848100 / 35825405 / +0.1% 42403690 / 42236658 / +0.4% 0.85 / 0.85 / -0.3%
tpcds_q67/duckdb:parquet 61236110 / 60637446 / +1.0% 67895302 / 67392751 / +0.7% 0.90 / 0.90 / +0.2%
tpcds_q68/duckdb:parquet 32770728 / 30060714 / +9.0% 37550964 / 38079366 / -1.4% 0.87 / 0.79 / +10.5%
tpcds_q69/duckdb:parquet 26423336 / 26218258 / +0.8% 34747315 / 34118833 / +1.8% 0.76 / 0.77 / -1.0%
tpcds_q70/duckdb:parquet 20183650 / 19492306 / +3.5% 26993187 / 26495081 / +1.9% 0.75 / 0.74 / +1.6%
tpcds_q71/duckdb:parquet 17220602 / 17158290 / +0.4% 24319147 / 23895400 / +1.8% 0.71 / 0.72 / -1.4%
tpcds_q72/duckdb:parquet 54646486 / 54727246 / -0.1% 63142744 / 61649773 / +2.4% 0.87 / 0.89 / -2.5%
tpcds_q73/duckdb:parquet 14983225 / 15839989 / -5.4% 22048950 / 21834051 / +1.0% 0.68 / 0.73 / -6.3%
tpcds_q74/duckdb:parquet 85124277 / 84638644 / +0.6% 91750913 / 91214184 / +0.6% 0.93 / 0.93 / -0.0%
tpcds_q75/duckdb:parquet 44137302 / 45776344 / -3.6% 52791568 / 50048090 / +5.5% 0.84 / 0.91 / -8.6%
tpcds_q76/duckdb:parquet 19003424 / 19026916 / -0.1% 24123205 / 23182989 / +4.1% 0.79 / 0.82 / -4.0%
tpcds_q77/duckdb:parquet 25390880 / 25079386 / +1.2% 32262036 / 31171183 / +3.5% 0.79 / 0.80 / -2.2%
tpcds_q78/duckdb:parquet 79643697 / 78651332 / +1.3% 86407123 / 87043467 / -0.7% 0.92 / 0.90 / +2.0%
tpcds_q79/duckdb:parquet 22052466 / 23406992 / -5.8% 29876891 / 29686460 / +0.6% 0.74 / 0.79 / -6.4%
tpcds_q80/duckdb:parquet 37107304 / 38908716 / -4.6% 44885613 / 43904238 / +2.2% 0.83 / 0.89 / -6.7%
tpcds_q81/duckdb:parquet 36979400 / 37113473 / -0.4% 45522929 / 45115709 / +0.9% 0.81 / 0.82 / -1.3%
tpcds_q82/duckdb:parquet 13979102 / 13701602 / +2.0% 21308163 / 20533043 / +3.8% 0.66 / 0.67 / -1.7%
tpcds_q83/duckdb:parquet 20737396 / 20434172 / +1.5% 26243773 / 25737394 / +2.0% 0.79 / 0.79 / -0.5%
tpcds_q84/duckdb:parquet 23480840 / 23226782 / +1.1% 29598299 / 28734674 / +3.0% 0.79 / 0.81 / -1.9%
tpcds_q85/duckdb:parquet 32958702 / 32799365 / +0.5% 40665004 / 40381388 / +0.7% 0.81 / 0.81 / -0.2%
tpcds_q86/duckdb:parquet 12229722 / 12119846 / +0.9% 17471031 / 16977967 / +2.9% 0.70 / 0.71 / -1.9%
tpcds_q87/duckdb:parquet 31866104 / 31613342 / +0.8% 35868476 / 36795025 / -2.5% 0.89 / 0.86 / +3.4%
tpcds_q88/duckdb:parquet 40669599 / 39281004 / +3.5% 47952715 / 44494477 / +7.8% 0.85 / 0.88 / -3.9%
tpcds_q89/duckdb:parquet 17246055 / 14448024 / +19.4% 🔴 21776842 / 21217601 / +2.6% 0.79 / 0.68 / +16.3%
tpcds_q90/duckdb:parquet 10651518 / 10395494 / +2.5% 15680490 / 15667447 / +0.1% 0.68 / 0.66 / +2.4%
tpcds_q91/duckdb:parquet 21951432 / 21328056 / +2.9% 29362652 / 28486172 / +3.1% 0.75 / 0.75 / -0.1%
tpcds_q92/duckdb:parquet 15987370 / 15777923 / +1.3% 22737547 / 22635717 / +0.4% 0.70 / 0.70 / +0.9%
tpcds_q93/duckdb:parquet 14408704 / 14266178 / +1.0% 20437017 / 20670385 / -1.1% 0.71 / 0.69 / +2.2%
tpcds_q94/duckdb:parquet 26176191 / 25868284 / +1.2% 33658274 / 32950959 / +2.1% 0.78 / 0.79 / -0.9%
tpcds_q95/duckdb:parquet 44218722 / 43916591 / +0.7% 50265535 / 50139884 / +0.3% 0.88 / 0.88 / +0.4%
tpcds_q96/duckdb:parquet 8406976 / 8359194 / +0.6% 14060418 / 14073082 / -0.1% 0.60 / 0.59 / +0.7%
tpcds_q97/duckdb:parquet 27818754 / 27537742 / +1.0% 34294768 / 32705200 / +4.9% 0.81 / 0.84 / -3.7%
tpcds_q98/duckdb:parquet 17987794 / 16842283 / +6.8% 23620790 / 23243812 / +1.6% 0.76 / 0.72 / +5.1%
tpcds_q99/duckdb:parquet 19366971 / 19153042 / +1.1% 24980509 / 24480635 / +2.0% 0.78 / 0.78 / -0.9%

No file size changes detected.

@github-actions

github-actions Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-H SF=1 on S3 📖

Commits: PR 5cf73d78 vs base a59294e3
Verdict: No clear signal (environment too noisy confidence)
Attributed Vortex impact: +1.1%
Engines: DataFusion No clear signal (+9.2%, environment too noisy confidence) · DuckDB No clear signal (-6.4%, environment too noisy confidence)
Vortex (geomean): hot 1.041x ➖ · cold 1.046x ➖
Parquet (geomean): hot 1.030x ➖ · cold 0.981x ➖
Shifts: Parquet (control) +3.0% · Median polish +2.1%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.
  • Hot vs cold: Every measurement is run several times. The first run is reported as the cold run, and the median of the runs after it is reported as the hot run. The verdict and significance use hot runs; each target's geomean reports hot and cold beside each other where the individual runs were recorded and hot alone where they were not, the cold column shows first-run cost per row, and hot/cold is how much of each run the warm path saves. Rows whose results predate per-run reporting show only one value, taken from the value the runner reported.
  • Table cells: Each cell reads PR / base / %diff. The hot and cold columns mark a change as 🔴 slower or 🟢 faster once it clears this suite's threshold; anything smaller is noise here and is left unmarked, as is hot/cold, because a shift in the warm-up ratio is not a win or a loss by itself.

datafusion / vortex-file-compressed / ns (1.083x ➖, 1↑ 5↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/datafusion:vortex-file-compressed 248748693 / 247358094 / +0.6% 785289768 / 738868352 / +6.3% 0.32 / 0.33 / -5.4%
tpch_q02/datafusion:vortex-file-compressed 438991553 / 330871678 / +32.7% 🔴 888658114 / 728806429 / +21.9% 0.49 / 0.45 / +8.8%
tpch_q03/datafusion:vortex-file-compressed 385245645 / 385729639 / -0.1% 1049648555 / 1627757578 / -35.5% 🟢 0.37 / 0.24 / +54.9%
tpch_q04/datafusion:vortex-file-compressed 194951316 / 207236107 / -5.9% 416008009 / 415145968 / +0.2% 0.47 / 0.50 / -6.1%
tpch_q05/datafusion:vortex-file-compressed 454648178 / 396405219 / +14.7% 786770370 / 627729660 / +25.3% 0.58 / 0.63 / -8.5%
tpch_q06/datafusion:vortex-file-compressed 174495081 / 140079154 / +24.6% 339992796 / 284789953 / +19.4% 0.51 / 0.49 / +4.3%
tpch_q07/datafusion:vortex-file-compressed 402936696 / 398571958 / +1.1% 612598137 / 623580284 / -1.8% 0.66 / 0.64 / +2.9%
tpch_q08/datafusion:vortex-file-compressed 641018763 / 479188752 / +33.8% 🔴 584659599 / 592878190 / -1.4% 1.10 / 0.81 / +35.7%
tpch_q09/datafusion:vortex-file-compressed 491433073 / 299413330 / +64.1% 🔴 670621806 / 478898510 / +40.0% 🔴 0.73 / 0.63 / +17.2%
tpch_q10/datafusion:vortex-file-compressed 349396723 / 420015221 / -16.8% 621179400 / 577599821 / +7.5% 0.56 / 0.73 / -22.6%
tpch_q11/datafusion:vortex-file-compressed 401896291 / 260115453 / +54.5% 🔴 481034864 / 432372514 / +11.3% 0.84 / 0.60 / +38.9%
tpch_q12/datafusion:vortex-file-compressed 247277981 / 259385245 / -4.7% 366855715 / 388771647 / -5.6% 0.67 / 0.67 / +1.0%
tpch_q13/datafusion:vortex-file-compressed 142052315 / 135290597 / +5.0% 350940489 / 308555393 / +13.7% 0.40 / 0.44 / -7.7%
tpch_q14/datafusion:vortex-file-compressed 172037144 / 178970213 / -3.9% 400930949 / 350854358 / +14.3% 0.43 / 0.51 / -15.9%
tpch_q15/datafusion:vortex-file-compressed 324218269 / 322081392 / +0.7% 590546619 / 510712295 / +15.6% 0.55 / 0.63 / -12.9%
tpch_q16/datafusion:vortex-file-compressed 138691318 / 126501014 / +9.6% 292503358 / 272473140 / +7.4% 0.47 / 0.46 / +2.1%
tpch_q17/datafusion:vortex-file-compressed 271151318 / 256065252 / +5.9% 483150448 / 465092987 / +3.9% 0.56 / 0.55 / +1.9%
tpch_q18/datafusion:vortex-file-compressed 284667033 / 290355928 / -2.0% 513919799 / 463238728 / +10.9% 0.55 / 0.63 / -11.6%
tpch_q19/datafusion:vortex-file-compressed 238567980 / 363374282 / -34.3% 🟢 402932520 / 390901590 / +3.1% 0.59 / 0.93 / -36.3%
tpch_q20/datafusion:vortex-file-compressed 297889158 / 320994507 / -7.2% 463199864 / 473423850 / -2.2% 0.64 / 0.68 / -5.1%
tpch_q21/datafusion:vortex-file-compressed 649212640 / 543096778 / +19.5% 840934076 / 741583315 / +13.4% 0.77 / 0.73 / +5.4%
tpch_q22/datafusion:vortex-file-compressed 219902613 / 156825815 / +40.2% 🔴 548085499 / 487653353 / +12.4% 0.40 / 0.32 / +24.8%
datafusion / parquet / ns (0.991x ➖, 0↑ 0↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/datafusion:parquet 155548848 / 150342294 / +3.5% 492172023 / 646421025 / -23.9% 0.32 / 0.23 / +35.9%
tpch_q02/datafusion:parquet 315369879 / 318145674 / -0.9% 547126011 / 528810111 / +3.5% 0.58 / 0.60 / -4.2%
tpch_q03/datafusion:parquet 246841544 / 266705687 / -7.4% 662847132 / 774689657 / -14.4% 0.37 / 0.34 / +8.2%
tpch_q04/datafusion:parquet 148866392 / 140052038 / +6.3% 282426487 / 350721027 / -19.5% 0.53 / 0.40 / +32.0%
tpch_q05/datafusion:parquet 402623888 / 375881936 / +7.1% 576324397 / 537365012 / +7.3% 0.70 / 0.70 / -0.1%
tpch_q06/datafusion:parquet 111012665 / 127689750 / -13.1% 254643964 / 264155280 / -3.6% 0.44 / 0.48 / -9.8%
tpch_q07/datafusion:parquet 323190024 / 357948555 / -9.7% 494017574 / 506363719 / -2.4% 0.65 / 0.71 / -7.5%
tpch_q08/datafusion:parquet 403093590 / 521246472 / -22.7% 581276455 / 638399108 / -8.9% 0.69 / 0.82 / -15.1%
tpch_q09/datafusion:parquet 380059758 / 399567776 / -4.9% 582617304 / 527347451 / +10.5% 0.65 / 0.76 / -13.9%
tpch_q10/datafusion:parquet 293953434 / 348602481 / -15.7% 419893827 / 461858523 / -9.1% 0.70 / 0.75 / -7.2%
tpch_q11/datafusion:parquet 272836804 / 267636402 / +1.9% 630217270 / 346313588 / +82.0% 🔴 0.43 / 0.77 / -44.0%
tpch_q12/datafusion:parquet 161525019 / 159129987 / +1.5% 279566075 / 347081161 / -19.5% 0.58 / 0.46 / +26.0%
tpch_q13/datafusion:parquet 276611054 / 276171368 / +0.2% 426422674 / 434549436 / -1.9% 0.65 / 0.64 / +2.1%
tpch_q14/datafusion:parquet 176752932 / 149523154 / +18.2% 294943465 / 258218950 / +14.2% 0.60 / 0.58 / +3.5%
tpch_q15/datafusion:parquet 326438596 / 302171840 / +8.0% 471587196 / 446225897 / +5.7% 0.69 / 0.68 / +2.2%
tpch_q16/datafusion:parquet 110343625 / 96091424 / +14.8% 245502735 / 391639268 / -37.3% 🟢 0.45 / 0.25 / +83.2%
tpch_q17/datafusion:parquet 291622270 / 287853076 / +1.3% 427693008 / 447489249 / -4.4% 0.68 / 0.64 / +6.0%
tpch_q18/datafusion:parquet 361798249 / 320843864 / +12.8% 533220276 / 506876018 / +5.2% 0.68 / 0.63 / +7.2%
tpch_q19/datafusion:parquet 183660147 / 156387904 / +17.4% 325735647 / 324442414 / +0.4% 0.56 / 0.48 / +17.0%
tpch_q20/datafusion:parquet 244508638 / 246557927 / -0.8% 382080869 / 355411653 / +7.5% 0.64 / 0.69 / -7.8%
tpch_q21/datafusion:parquet 328770184 / 432302473 / -23.9% 423239442 / 597012831 / -29.1% 0.78 / 0.72 / +7.3%
tpch_q22/datafusion:parquet 163574248 / 160313673 / +2.0% 340019142 / 324489963 / +4.8% 0.48 / 0.49 / -2.6%
duckdb / vortex-file-compressed / ns (1.001x ➖, 0↑ 1↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/duckdb:vortex-file-compressed 250649380 / 249597078 / +0.4% 265734805 / 298875807 / -11.1% 0.94 / 0.84 / +12.9%
tpch_q02/duckdb:vortex-file-compressed 434750832 / 407595128 / +6.7% 511507633 / 508219919 / +0.6% 0.85 / 0.80 / +6.0%
tpch_q03/duckdb:vortex-file-compressed 406545682 / 412986649 / -1.6% 425884150 / 500554235 / -14.9% 0.95 / 0.83 / +15.7%
tpch_q04/duckdb:vortex-file-compressed 263378378 / 243739722 / +8.1% 280087427 / 282914589 / -1.0% 0.94 / 0.86 / +9.1%
tpch_q05/duckdb:vortex-file-compressed 567626709 / 697900940 / -18.7% 596178857 / 794970127 / -25.0% 0.95 / 0.88 / +8.5%
tpch_q06/duckdb:vortex-file-compressed 178615239 / 141618340 / +26.1% 361496768 / 193603466 / +86.7% 🔴 0.49 / 0.73 / -32.5%
tpch_q07/duckdb:vortex-file-compressed 456900522 / 379944758 / +20.3% 571930452 / 517052800 / +10.6% 0.80 / 0.73 / +8.7%
tpch_q08/duckdb:vortex-file-compressed 722295356 / 562852607 / +28.3% 902236983 / 671255688 / +34.4% 🔴 0.80 / 0.84 / -4.5%
tpch_q09/duckdb:vortex-file-compressed 380025537 / 380690575 / -0.2% 417795722 / 403319411 / +3.6% 0.91 / 0.94 / -3.6%
tpch_q10/duckdb:vortex-file-compressed 514279260 / 534562426 / -3.8% 537639268 / 530988355 / +1.3% 0.96 / 1.01 / -5.0%
tpch_q11/duckdb:vortex-file-compressed 325394191 / 354415648 / -8.2% 392102789 / 370481431 / +5.8% 0.83 / 0.96 / -13.3%
tpch_q12/duckdb:vortex-file-compressed 245055573 / 259431028 / -5.5% 256975989 / 331654821 / -22.5% 0.95 / 0.78 / +21.9%
tpch_q13/duckdb:vortex-file-compressed 289542838 / 263741725 / +9.8% 208168509 / 218743465 / -4.8% 1.39 / 1.21 / +15.4%
tpch_q14/duckdb:vortex-file-compressed 214231692 / 211934175 / +1.1% 292894943 / 261396399 / +12.1% 0.73 / 0.81 / -9.8%
tpch_q15/duckdb:vortex-file-compressed 253977780 / 266824668 / -4.8% 242871412 / 287091118 / -15.4% 1.05 / 0.93 / +12.5%
tpch_q16/duckdb:vortex-file-compressed 335810297 / 231111457 / +45.3% 🔴 393843811 / 269193615 / +46.3% 🔴 0.85 / 0.86 / -0.7%
tpch_q17/duckdb:vortex-file-compressed 365107261 / 392257562 / -6.9% 369495169 / 440068338 / -16.0% 0.99 / 0.89 / +10.9%
tpch_q18/duckdb:vortex-file-compressed 331053716 / 464225551 / -28.7% 316922629 / 408985968 / -22.5% 1.04 / 1.14 / -8.0%
tpch_q19/duckdb:vortex-file-compressed 309125040 / 313715711 / -1.5% 417845547 / 306058070 / +36.5% 🔴 0.74 / 1.03 / -27.8%
tpch_q20/duckdb:vortex-file-compressed 370609435 / 417698583 / -11.3% 437915766 / 420348861 / +4.2% 0.85 / 0.99 / -14.8%
tpch_q21/duckdb:vortex-file-compressed 662869395 / 808105269 / -18.0% 798560149 / 925274359 / -13.7% 0.83 / 0.87 / -5.0%
tpch_q22/duckdb:vortex-file-compressed 234850032 / 254112149 / -7.6% 327543435 / 291904033 / +12.2% 0.72 / 0.87 / -17.6%
duckdb / parquet / ns (1.069x ➖, 0↑ 1↓)
name hot ns (PR / base / %diff) cold ns (PR / base / %diff) hot/cold (PR / base / %diff)
tpch_q01/duckdb:parquet 192578920 / 155769346 / +23.6% 216416209 / 245281191 / -11.8% 0.89 / 0.64 / +40.1%
tpch_q02/duckdb:parquet 451486257 / 450870470 / +0.1% 517954340 / 518844598 / -0.2% 0.87 / 0.87 / +0.3%
tpch_q03/duckdb:parquet 381101052 / 435397247 / -12.5% 523116446 / 619722832 / -15.6% 0.73 / 0.70 / +3.7%
tpch_q04/duckdb:parquet 254476932 / 261483672 / -2.7% 298387771 / 297370408 / +0.3% 0.85 / 0.88 / -3.0%
tpch_q05/duckdb:parquet 574047111 / 547473896 / +4.9% 600419685 / 560648713 / +7.1% 0.96 / 0.98 / -2.1%
tpch_q06/duckdb:parquet 182911287 / 165852535 / +10.3% 225153143 / 171106172 / +31.6% 🔴 0.81 / 0.97 / -16.2%
tpch_q07/duckdb:parquet 426004753 / 450528044 / -5.4% 474213450 / 483335528 / -1.9% 0.90 / 0.93 / -3.6%
tpch_q08/duckdb:parquet 647492460 / 616162684 / +5.1% 965469025 / 853513101 / +13.1% 0.67 / 0.72 / -7.1%
tpch_q09/duckdb:parquet 595147644 / 587897421 / +1.2% 605894766 / 983222702 / -38.4% 🟢 0.98 / 0.60 / +64.3%
tpch_q10/duckdb:parquet 607989953 / 612122344 / -0.7% 753372387 / 1076964806 / -30.0% 🟢 0.81 / 0.57 / +42.0%
tpch_q11/duckdb:parquet 306473736 / 271284896 / +13.0% 307596686 / 309469624 / -0.6% 1.00 / 0.88 / +13.7%
tpch_q12/duckdb:parquet 319973782 / 284581482 / +12.4% 396247359 / 392791683 / +0.9% 0.81 / 0.72 / +11.5%
tpch_q13/duckdb:parquet 387260837 / 346773236 / +11.7% 497961993 / 587932376 / -15.3% 0.78 / 0.59 / +31.9%
tpch_q14/duckdb:parquet 471651363 / 235587342 / +100.2% 🔴 680574207 / 298727797 / +127.8% 🔴 0.69 / 0.79 / -12.1%
tpch_q15/duckdb:parquet 197668394 / 191597413 / +3.2% 267611508 / 217100593 / +23.3% 0.74 / 0.88 / -16.3%
tpch_q16/duckdb:parquet 287961859 / 270027796 / +6.6% 280254913 / 296145732 / -5.4% 1.03 / 0.91 / +12.7%
tpch_q17/duckdb:parquet 352830150 / 313678834 / +12.5% 417805012 / 325672736 / +28.3% 0.84 / 0.96 / -12.3%
tpch_q18/duckdb:parquet 317275087 / 343324586 / -7.6% 356336507 / 369120013 / -3.5% 0.89 / 0.93 / -4.3%
tpch_q19/duckdb:parquet 264425940 / 228920278 / +15.5% 350625921 / 295217714 / +18.8% 0.75 / 0.78 / -2.7%
tpch_q20/duckdb:parquet 476381796 / 520969487 / -8.6% 512743341 / 703938676 / -27.2% 0.93 / 0.74 / +25.5%
tpch_q21/duckdb:parquet 474338810 / 466019234 / +1.8% 508383060 / 630524878 / -19.4% 0.93 / 0.74 / +26.2%
tpch_q22/duckdb:parquet 314169302 / 306782848 / +2.4% 318598049 / 324135047 / -1.7% 0.99 / 0.95 / +4.2%

@connortsui20
connortsui20 force-pushed the ct/row-fn-cleanup/fused-execution branch from 5cbf00a to 7c47d4b Compare October 23, 2026 17:53
@robert3005
robert3005 force-pushed the ct/row-fn-cleanup/fused-execution branch from 7c47d4b to 69f5fc0 Compare October 26, 2026 00:51
connortsui20 added a commit that referenced this pull request Oct 26, 2026
## Summary

- Tracking Issue: #9128
- Independent validity candidate: #10742

Routes float32 comparisons through the existing word-packing collectors.
This recovers the measured float32 gains from the RowFn comparison
investigation with two private dispatch changes. It is independent of
the comparison migration and fusion work in #10676 and #10675.

## Changes

Adds `F32` to the existing collector selections for array pairs and
array/constant comparisons. Integer collector policies remain unchanged.
The floating-point documentation now accounts for NaN signs and
payloads.

**Draft pending fresh isolated benchmarks on this head.** Saved
measurements show a consistent float32 gain, but also some unrelated ARM
regressions. The later combined packing/validity candidate had an AVX2
regression that has not been attributed to either change individually.

<details>
<summary>Saved benchmark evidence and validation</summary>

The isolated packing snapshot `4c98df49e379853f8e990d9764791b5330511771`
was compared with frozen `develop` at
`a1693389301e446eec41373cb274d98a303d3ca0`. Measurements used Rust
1.99.1 / LLVM 23.1.1, 16 CGUs, no LTO, CPU 2, and 21 balanced paired
blocks on Graviton3 C7g and Sapphire Rapids C7i. This was native wall
time, not CodSpeed simulation.

Across 48 float32 cases at 8,192 and 65,536 rows, covering array pairs,
both constant orientations, equality/ordering, and four validity shapes,
the median block ratios of equally weighted geometric means were:

| Target | Candidate / baseline time | 95% paired bootstrap interval |
| --- | ---: | ---: |
| NEON | 0.611 | 0.610–0.611 |
| AVX2 | 0.632 | 0.630–0.633 |
| AVX-512 | 0.679 | 0.678–0.681 |

Among all 375 probe cases, the isolated snapshot had no flagged
regressions on AVX2 or AVX-512. ARM had four, including roughly 4.7%
slower u64 multiply and 4.6% slower large f64 equality. Those paths do
not use the changed float32 collector, so their movement is not evidence
of extra float32 work, but it still counts against a no-regression
claim.

A separate combined packing/validity candidate at
`8d8ef8151454bbc73e1cd0b236567542a1401cbe`, based on
`d834a11faa79370b4d2e0bbcc73195f451a8a212`, retained the float32 gain
but regressed large nullable u64 add by about 18% on AVX2. Profiling
found a byte-identical retry hot loop with essentially unchanged
instructions per operation and more cycles. The precise
placement-sensitive mechanism remains unresolved. That combined result
does not isolate this PR.

The combined candidate passed 225 RowFn tests and 232 binary-function
tests on that newer base. Separate native probes checked
scalar-reference results and float/encoding/tail edge cases. The changed
file passed the pinned formatter. These are saved checks, not fresh
validation of this individual PR.

This PR is rebased onto `c750fbd80882f78efd6a2703bc0f3e17f1aca9f9`. The
patch is unchanged by the rebase. Tests and benchmarks were not rerun
after it.

</details>

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
@connortsui20
connortsui20 force-pushed the ct/row-fn-cleanup/fused-execution branch 2 times, most recently from e8675b5 to 5cf73d7 Compare October 26, 2026 20:53
@connortsui20 connortsui20 removed the action/bench-spatial Run only SpatialBench SQL benchmarks on this PR label Oct 27, 2026
@connortsui20 connortsui20 added the action/bench-sql Run SQL benchmarks without Vortex Compact on this PR label Oct 27, 2026
@github-actions github-actions Bot removed the action/bench-sql Run SQL benchmarks without Vortex Compact on this PR label Oct 27, 2026
@connortsui20
connortsui20 force-pushed the ct/row-fn-cleanup/fused-execution branch from 5cf73d7 to af0b943 Compare October 27, 2026 14:34
robert3005 and others added 11 commits October 27, 2026 11:40
Keep the owned decoder as the required extension point and default borrowed decoding to it. Native primitive inputs share their canonical buffers directly. Retain decoded storage after the input handle is dropped.

Extracted from #9979.

Signed-off-by: Robert Kruszewski <github@robertk.io>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Inspect borrowed inputs once for lengths, dtypes, constant classification, and strict validity. Pair collected inputs with a separate execution plan while retaining the existing dispatch and retry paths.

Extracted from #9979.

Signed-off-by: Robert Kruszewski <github@robertk.io>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Let the packed Boolean collectors consume the batch validity when constructing their result. Keep custom output validation before masking and attach validity directly to other canonical outputs.

Extracted from #9979.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Finish eligible batches in the planning visit and retain the planned retry and valid-row paths for the remaining partially valid batches. Decode direct Boolean inputs through private borrowed tuple adapters and keep collector selection outside the row loop.

Extracted from #9979. Enforce the Boolean validity-length invariant in release builds before unchecked output construction.

Signed-off-by: Robert Kruszewski <github@robertk.io>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Classify all inputs before decoding so a null literal can skip an earlier fallible expression or device transfer. Keep validity conjunction lazy and preserve valid-only decoding. Add regression coverage for invalid payloads, lazy expressions, and device-backed inputs. Borrow contiguous argument dtypes without adding a primitive-specific decoder hook or packing policy to the generic framework.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
BatchInputs copied four BatchProbe fields and their documentation. Keep the probe itself instead, so a new probe fact needs one field and one doc comment. Correct the input and dtype docs that still described collection as the place where validity and constants are derived.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Retry execution relied on its caller to run the all-null, null-literal, all-constant, and dense paths first. A crate caller that skipped them could decode a null constant or reach the all-invalid unreachable in dense finalization. try_execute_without_retry now consumes the collected batch and hands back a PartiallyValidBatch, the only value that retry execution accepts.

Remove the validity plumbing that only the unreachable dense retry arm used: the ExecuteRows field, the execute_row_kernel parameter, and the execute_owned_bool parameter, which deferred visits always set to NonNullable.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Dense execution treated a taken validity as proof that the kernel attached it. A collector that took the validity but built a non-nullable output would have returned every null row as valid. Route on the output nullability as well, so such an output is masked like any other.

Construct packed Boolean outputs with BoolArray::try_new. A validity of the wrong length now returns an error, as on the deferred path, instead of panicking, and the unsafe block goes away.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Inspect inputs for a null literal before conjoining their validity. A null literal makes every row invalid, so the probe no longer builds and optimizes an And expression that it then discards.

Validate a Boolean visit once and share the storage dtype between the direct and collected paths. Let execute_row_inputs own the arity check. Execute a non-canonical primitive input directly in decode_ref instead of repeating the canonical downcast through decode.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
STYLE.md asks for test_<function_name>_<scenario>, and all but one of the older tests in this file follow it.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
execute_rows already collects its inputs into a slice before batch execution, but a visit that could not finish the batch directly cloned every input into a second list. BatchInputs now borrows the slice that RowInputs::as_slice provides, and clones only inputs that the caller does not hold contiguously.

Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
@connortsui20
connortsui20 force-pushed the ct/row-fn-cleanup/fused-execution branch from 41263f2 to 7dc8a2f Compare October 27, 2026 15:41

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/performance A performance improvement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants