Immutable session backed by HashMap#8454
Conversation
Signed-off-by: Adam Gutglick <[email protected]>
Merging this PR will not alter performance
Warning Please fix the performance issues or acknowledge them on CodSpeed. Performance Changes
Tip Investigate this regression by commenting Comparing Footnotes
|
Signed-off-by: Adam Gutglick <[email protected]>
Polar Signals Profiling ResultsLatest Run
Previous Runs (2)
Powered by Polar Signals Cloud |
Signed-off-by: Adam Gutglick <[email protected]>
Benchmarks: PolarSignals ProfilingVortex (geomean): 1.186x ❌ How to read Verdict and Engines
datafusion / vortex-file-compressed (1.186x ❌, 0↑ 9↓)
File Size Changes (1 files changed, +0.0% overall, 1↑ 0↓)
Totals:
|
Benchmarks: FineWeb NVMeVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.982x ➖, 2↑ 1↓)
datafusion / vortex-compact (0.971x ➖, 1↑ 1↓)
datafusion / parquet (0.944x ➖, 1↑ 0↓)
duckdb / vortex-file-compressed (0.983x ➖, 0↑ 1↓)
duckdb / vortex-compact (0.979x ➖, 0↑ 1↓)
duckdb / parquet (0.955x ➖, 1↑ 0↓)
File Size Changes (2 files changed, -0.0% overall, 0↑ 2↓)
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.979x ➖, 0↑ 0↓)
datafusion / vortex-compact (0.984x ➖, 0↑ 0↓)
datafusion / parquet (0.969x ➖, 2↑ 1↓)
datafusion / arrow (0.939x ➖, 3↑ 1↓)
duckdb / vortex-file-compressed (0.913x ➖, 6↑ 0↓)
duckdb / vortex-compact (0.920x ➖, 6↑ 0↓)
duckdb / parquet (0.939x ➖, 3↑ 0↓)
duckdb / duckdb (0.953x ➖, 0↑ 0↓)
File Size Changes (10 files changed, -0.1% overall, 4↑ 6↓)
Totals:
|
Benchmarks: TPC-DS SF=1 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.005x ➖, 0↑ 7↓)
datafusion / vortex-compact (0.995x ➖, 1↑ 2↓)
datafusion / parquet (1.012x ➖, 2↑ 3↓)
duckdb / vortex-file-compressed (0.992x ➖, 2↑ 1↓)
duckdb / vortex-compact (1.007x ➖, 1↑ 2↓)
duckdb / parquet (1.007x ➖, 2↑ 0↓)
duckdb / duckdb (1.012x ➖, 1↑ 3↓)
File Size Changes (15 files changed, +0.4% overall, 12↑ 3↓)
Totals:
|
Benchmarks: FineWeb S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.914x ➖, 2↑ 1↓)
datafusion / vortex-compact (0.960x ➖, 1↑ 0↓)
datafusion / parquet (1.012x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed (1.103x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.016x ➖, 0↑ 1↓)
duckdb / parquet (1.078x ➖, 0↑ 0↓)
|
Benchmarks: Statistical and Population GeneticsVerdict: No clear signal (low confidence) How to read Verdict and Engines
duckdb / vortex-file-compressed (0.994x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.007x ➖, 0↑ 0↓)
duckdb / parquet (0.972x ➖, 0↑ 0↓)
File Size Changes (1 files changed, +0.0% overall, 1↑ 0↓)
Totals:
|
Benchmarks: Random AccessVortex (geomean): 0.928x ➖ How to read Verdict and Engines
unknown / unknown (1.002x ➖, 6↑ 1↓)
|
Benchmarks: TPC-H SF=10 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.007x ➖, 0↑ 0↓)
datafusion / vortex-compact (1.006x ➖, 0↑ 0↓)
datafusion / parquet (1.016x ➖, 0↑ 0↓)
datafusion / arrow (1.013x ➖, 1↑ 0↓)
duckdb / vortex-file-compressed (1.012x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.031x ➖, 0↑ 1↓)
duckdb / parquet (1.031x ➖, 0↑ 1↓)
duckdb / duckdb (1.049x ➖, 0↑ 1↓)
File Size Changes (26 files changed, +0.0% overall, 12↑ 14↓)
Totals:
|
Benchmarks: Clickbench on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.013x ➖, 0↑ 2↓)
datafusion / parquet (0.987x ➖, 1↑ 2↓)
duckdb / vortex-file-compressed (0.972x ➖, 2↑ 0↓)
duckdb / parquet (0.996x ➖, 0↑ 0↓)
duckdb / duckdb (0.990x ➖, 0↑ 1↓)
File Size Changes (104 files changed, -0.0% overall, 51↑ 53↓)
Totals:
|
Benchmarks: TPC-H SF=1 on S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.040x ➖, 1↑ 4↓)
datafusion / vortex-compact (1.237x ➖, 0↑ 10↓)
datafusion / parquet (1.342x ❌, 0↑ 8↓)
duckdb / vortex-file-compressed (1.115x ➖, 0↑ 1↓)
duckdb / vortex-compact (1.088x ➖, 0↑ 2↓)
duckdb / parquet (1.087x ➖, 0↑ 1↓)
|
Benchmarks: Appian on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.041x ➖, 0↑ 1↓)
datafusion / parquet (1.039x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (1.053x ➖, 0↑ 0↓)
duckdb / parquet (1.052x ➖, 0↑ 0↓)
duckdb / duckdb (1.023x ➖, 0↑ 0↓)
File Size Changes (4 files changed, -0.0% overall, 2↑ 2↓)
Totals:
|
Benchmarks: CompressionVortex (geomean): 0.997x ➖ How to read Verdict and Engines
unknown / unknown (0.979x ➖, 8↑ 3↓)
|
Benchmarks: TPC-H SF=10 on S3Verdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.156x ➖, 0↑ 4↓)
datafusion / vortex-compact (1.027x ➖, 0↑ 5↓)
datafusion / parquet (1.041x ➖, 4↑ 6↓)
duckdb / vortex-file-compressed (1.058x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.130x ➖, 0↑ 3↓)
duckdb / parquet (1.140x ➖, 0↑ 1↓)
|
Signed-off-by: Adam Gutglick <[email protected]>
HashMapHashMap
Signed-off-by: Adam Gutglick <[email protected]>
912bcb2 to
49cce3b
Compare
Signed-off-by: Adam Gutglick <[email protected]>
Summary
This PR replaces the current
DashMapbacked session with one backed by aHashMap. Instead of being initialized on access which might cause deadlocks or otherwise weird performance behavior.There's also an explicit
Buildertype for the session, allowing the user to explicitly include the components they want.