Remove type coercion#8032
Conversation
Signed-off-by: Nicholas Gates <nick@nickgates.com>
|
Just running benchmarks to make sure nothing is broken, we can merge after that |
Polar Signals Profiling ResultsLatest Run
Previous Runs (1)
Powered by Polar Signals Cloud |
Benchmarks: FineWeb NVMeVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (1.043x ➖, 0↑ 1↓)
datafusion / vortex-compact (1.040x ➖, 0↑ 0↓)
datafusion / parquet (1.018x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (1.026x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.025x ➖, 0↑ 0↓)
duckdb / parquet (1.068x ➖, 0↑ 2↓)
Full attributed analysis
|
File Sizes: FineWeb NVMeNo file size changes detected. |
Merging this PR will not alter performance
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ⚡ | WallTime | cuda/bitpacked_u8/unpack/3bw[100M] |
350.3 µs | 300.3 µs | +16.68% |
| ❌ | Simulation | chunked_varbinview_opt_canonical_into[(1000, 10)] |
187.6 µs | 225.1 µs | -16.65% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing ngates/remove-coercion (002a8e9) with develop (a88e6b1)
Benchmarks: TPC-H SF=1 on NVMEVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (1.085x ➖, 0↑ 6↓)
datafusion / vortex-compact (1.077x ➖, 0↑ 3↓)
datafusion / parquet (1.053x ➖, 0↑ 3↓)
datafusion / arrow (1.027x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (1.087x ➖, 0↑ 8↓)
duckdb / vortex-compact (1.113x ❌, 0↑ 11↓)
duckdb / parquet (1.034x ➖, 1↑ 3↓)
duckdb / duckdb (1.088x ➖, 0↑ 10↓)
Full attributed analysis
|
File Sizes: TPC-H SF=1 on NVMENo file size changes detected. |
Benchmarks: FineWeb S3Verdict: No clear signal (low confidence) datafusion / vortex-file-compressed (1.088x ➖, 0↑ 1↓)
datafusion / vortex-compact (0.865x ➖, 2↑ 1↓)
datafusion / parquet (0.990x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (0.935x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.021x ➖, 0↑ 1↓)
duckdb / parquet (1.032x ➖, 0↑ 0↓)
Full attributed analysis
|
Benchmarks: Statistical and Population GeneticsVerdict: No clear signal (low confidence) duckdb / vortex-file-compressed (1.009x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.008x ➖, 0↑ 0↓)
duckdb / parquet (1.013x ➖, 0↑ 0↓)
Full attributed analysis
|
File Sizes: Statistical and Population GeneticsNo file size changes detected. |
Benchmarks: Random AccessVortex (geomean): 0.991x ➖ unknown / unknown (1.054x ➖, 3↑ 4↓)
|
Benchmarks: Clickbench on NVMEVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (1.075x ➖, 1↑ 19↓)
datafusion / parquet (1.055x ➖, 1↑ 8↓)
duckdb / vortex-file-compressed (1.013x ➖, 2↑ 2↓)
duckdb / parquet (1.029x ➖, 0↑ 2↓)
duckdb / duckdb (1.028x ➖, 0↑ 0↓)
Full attributed analysis
|
File Sizes: Clickbench on NVMEFile Size Changes (1 files changed, -0.0% overall, 0↑ 1↓)
Totals:
|
Benchmarks: TPC-H SF=1 on S3Verdict: No clear signal (environment too noisy confidence) datafusion / vortex-file-compressed (1.197x ➖, 0↑ 5↓)
datafusion / vortex-compact (1.104x ➖, 0↑ 4↓)
datafusion / parquet (1.014x ➖, 0↑ 2↓)
duckdb / vortex-file-compressed (1.030x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.029x ➖, 0↑ 0↓)
duckdb / parquet (1.008x ➖, 0↑ 0↓)
Full attributed analysis
|
Benchmarks: CompressionVortex (geomean): 1.015x ➖ unknown / unknown (1.033x ➖, 2↑ 19↓)
|
Benchmarks: TPC-H SF=10 on S3Verdict: No clear signal (environment too noisy confidence) datafusion / vortex-file-compressed (1.130x ➖, 0↑ 3↓)
datafusion / vortex-compact (1.086x ➖, 1↑ 3↓)
datafusion / parquet (1.215x ➖, 0↑ 4↓)
duckdb / vortex-file-compressed (0.962x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.951x ➖, 0↑ 0↓)
duckdb / parquet (1.023x ➖, 0↑ 1↓)
Full attributed analysis
|
Benchmarks: PolarSignals ProfilingVortex (geomean): 1.055x ➖ datafusion / vortex-file-compressed (1.055x ➖, 0↑ 1↓)
|
File Sizes: PolarSignals ProfilingNo file size changes detected. |
Benchmarks: TPC-DS SF=1 on NVMEVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (0.968x ➖, 4↑ 0↓)
datafusion / vortex-compact (0.951x ➖, 25↑ 1↓)
datafusion / parquet (0.972x ➖, 8↑ 2↓)
duckdb / vortex-file-compressed (0.955x ➖, 18↑ 1↓)
duckdb / vortex-compact (0.968x ➖, 11↑ 3↓)
duckdb / parquet (0.996x ➖, 3↑ 0↓)
duckdb / duckdb (0.969x ➖, 6↑ 0↓)
Full attributed analysis
|
File Sizes: TPC-DS SF=1 on NVMENo file size changes detected. |
Benchmarks: TPC-H SF=10 on NVMEVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (1.004x ➖, 0↑ 0↓)
datafusion / vortex-compact (0.997x ➖, 0↑ 0↓)
datafusion / parquet (1.003x ➖, 0↑ 0↓)
datafusion / arrow (0.989x ➖, 1↑ 0↓)
duckdb / vortex-file-compressed (1.003x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.002x ➖, 0↑ 0↓)
duckdb / parquet (0.997x ➖, 0↑ 0↓)
duckdb / duckdb (0.996x ➖, 0↑ 0↓)
Full attributed analysis
|
File Sizes: TPC-H SF=10 on NVMENo file size changes detected. |
Reverts #8032 Actually I'm not so sure on this one! If we say that Vortex has a logical type system, and we allow users to define extension types, then we really ought to allow users to define the coercion rules of said extension types.
This belongs in a type analysis phase inside an engine, rather than inside the Vortex physical function implementations.
It is currently unused.