mmap for file reads#8450
Conversation
Polar Signals Profiling ResultsLatest Run
Powered by Polar Signals Cloud |
Merging this PR will improve performance by 24.12%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ⚡ | Simulation | decompress_rd[f64, (10000, 0.01)] |
137.7 µs | 107.2 µs | +28.41% |
| ⚡ | Simulation | decompress_rd[f64, (10000, 0.0)] |
138.3 µs | 107.8 µs | +28.25% |
| ⚡ | Simulation | decompress_rd[f64, (10000, 0.1)] |
138.1 µs | 111.6 µs | +23.79% |
| ⚡ | Simulation | varbinview_large |
131.2 µs | 112.7 µs | +16.42% |
Tip
Curious why this is faster? Comment @codspeedbot explain why this is faster on this PR, or directly use the CodSpeed MCP with your agent.
Comparing myrrc/temp-mmap (a1510c1) with develop (e1c6ef5)
Footnotes
-
10 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. ↩
Benchmarks: PolarSignals ProfilingVortex (geomean): 1.009x ➖ How to read Verdict and Engines
datafusion / vortex-file-compressed (1.009x ➖, 0↑ 0↓)
No file size changes detected. |
Benchmarks: FineWeb NVMeVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.940x ➖, 2↑ 0↓)
datafusion / vortex-compact (0.966x ➖, 0↑ 0↓)
datafusion / parquet (0.969x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (0.912x ➖, 1↑ 0↓)
duckdb / vortex-compact (0.957x ➖, 2↑ 0↓)
duckdb / parquet (0.965x ➖, 1↑ 0↓)
File Size Changes (1 files changed, +0.0% overall, 1↑ 0↓)
Totals:
|
Benchmarks: TPC-H SF=1 on NVMEVerdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.932x ➖, 2↑ 0↓)
datafusion / vortex-compact (0.932x ➖, 2↑ 0↓)
datafusion / parquet (0.919x ➖, 8↑ 0↓)
datafusion / arrow (0.907x ➖, 9↑ 0↓)
duckdb / vortex-file-compressed (0.945x ➖, 1↑ 0↓)
duckdb / vortex-compact (0.947x ➖, 2↑ 0↓)
duckdb / parquet (0.953x ➖, 4↑ 0↓)
duckdb / duckdb (0.951x ➖, 0↑ 0↓)
File Size Changes (10 files changed, -0.1% overall, 3↑ 7↓)
Totals:
|
Benchmarks: TPC-DS SF=1 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.993x ➖, 4↑ 0↓)
datafusion / vortex-compact (0.999x ➖, 4↑ 1↓)
datafusion / parquet (0.989x ➖, 4↑ 1↓)
duckdb / vortex-file-compressed (1.004x ➖, 0↑ 1↓)
duckdb / vortex-compact (0.998x ➖, 1↑ 0↓)
duckdb / parquet (1.001x ➖, 2↑ 0↓)
duckdb / duckdb (0.987x ➖, 3↑ 0↓)
File Size Changes (6 files changed, +0.0% overall, 1↑ 5↓)
Totals:
|
Benchmarks: Statistical and Population GeneticsVerdict: No clear signal (low confidence) How to read Verdict and Engines
duckdb / vortex-file-compressed (0.978x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.977x ➖, 0↑ 0↓)
duckdb / parquet (0.956x ➖, 0↑ 0↓)
File Size Changes (1 files changed, +0.0% overall, 1↑ 0↓)
Totals:
|
Benchmarks: FineWeb S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.960x ➖, 1↑ 0↓)
datafusion / vortex-compact (1.003x ➖, 0↑ 0↓)
datafusion / parquet (1.015x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed (0.990x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.926x ➖, 1↑ 0↓)
duckdb / parquet (0.991x ➖, 0↑ 0↓)
|
Benchmarks: Random AccessVortex (geomean): 0.479x ✅ How to read Verdict and Engines
unknown / unknown (0.781x ✅, 18↑ 0↓)
|
Benchmarks: TPC-H SF=10 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.865x ✅, 19↑ 0↓)
datafusion / vortex-compact (0.879x ✅, 18↑ 0↓)
datafusion / parquet (0.900x ➖, 13↑ 0↓)
datafusion / arrow (0.866x ✅, 20↑ 0↓)
duckdb / vortex-file-compressed (0.893x ✅, 13↑ 0↓)
duckdb / vortex-compact (0.905x ➖, 12↑ 0↓)
duckdb / parquet (0.939x ➖, 0↑ 0↓)
duckdb / duckdb (0.916x ➖, 3↑ 0↓)
File Size Changes (27 files changed, -0.0% overall, 8↑ 19↓)
Totals:
|
Benchmarks: Clickbench on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.029x ➖, 1↑ 3↓)
datafusion / parquet (1.039x ➖, 0↑ 3↓)
duckdb / vortex-file-compressed (1.004x ➖, 3↑ 3↓)
duckdb / parquet (1.051x ➖, 0↑ 5↓)
duckdb / duckdb (1.022x ➖, 0↑ 2↓)
File Size Changes (106 files changed, +0.0% overall, 64↑ 42↓)
Totals:
|
Benchmarks: TPC-H SF=1 on S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.899x ➖, 4↑ 1↓)
datafusion / vortex-compact (1.041x ➖, 0↑ 5↓)
datafusion / parquet (1.058x ➖, 0↑ 2↓)
duckdb / vortex-file-compressed (0.951x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.941x ➖, 0↑ 0↓)
duckdb / parquet (1.003x ➖, 0↑ 1↓)
|
Benchmarks: Appian on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.022x ➖, 0↑ 0↓)
datafusion / parquet (1.007x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (1.008x ➖, 0↑ 0↓)
duckdb / parquet (1.000x ➖, 0↑ 0↓)
duckdb / duckdb (1.001x ➖, 0↑ 0↓)
File Size Changes (4 files changed, -0.0% overall, 2↑ 2↓)
Totals:
|
Benchmarks: CompressionVortex (geomean): 0.998x ➖ How to read Verdict and Engines
unknown / unknown (0.986x ➖, 0↑ 0↓)
|
Benchmarks: TPC-H SF=10 on S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.993x ➖, 0↑ 0↓)
datafusion / vortex-compact (0.888x ➖, 4↑ 0↓)
datafusion / parquet (0.916x ➖, 4↑ 3↓)
duckdb / vortex-file-compressed (0.983x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.977x ➖, 0↑ 0↓)
duckdb / parquet (1.001x ➖, 0↑ 0↓)
|
TODO