diff --git a/Cargo.lock b/Cargo.lock index 78334da6..044847e0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -831,7 +831,7 @@ dependencies = [ [[package]] name = "decentdb" -version = "2.14.0" +version = "2.15.0" dependencies = [ "base64 0.22.1", "chacha20", @@ -867,7 +867,7 @@ dependencies = [ [[package]] name = "decentdb-benchmark" -version = "2.14.0" +version = "2.15.0" dependencies = [ "anyhow", "clap", @@ -881,7 +881,7 @@ dependencies = [ [[package]] name = "decentdb-cli" -version = "2.14.0" +version = "2.15.0" dependencies = [ "anyhow", "clap", @@ -895,7 +895,7 @@ dependencies = [ [[package]] name = "decentdb-migrate" -version = "2.14.0" +version = "2.15.0" dependencies = [ "anyhow", "clap", @@ -1859,7 +1859,7 @@ dependencies = [ [[package]] name = "libpg_query_sys" -version = "2.14.0" +version = "2.15.0" dependencies = [ "pg_query", ] diff --git a/Cargo.toml b/Cargo.toml index f30c36fb..43c7ef88 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,7 +12,7 @@ exclude = [ resolver = "2" [workspace.package] -version = "2.14.0" +version = "2.15.0" edition = "2021" authors = ["Steven Hildreth"] license = "Apache-2.0" diff --git a/VERSION b/VERSION index edcfe40d..68e69e40 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.14.0 +2.15.0 diff --git a/assets/decentdb-benchmarks.png b/assets/decentdb-benchmarks.png index de3c1458..e0c50bd8 100644 Binary files a/assets/decentdb-benchmarks.png and b/assets/decentdb-benchmarks.png differ diff --git a/assets/decentdb-benchmarks.svg b/assets/decentdb-benchmarks.svg index bba85f53..f0cc8a6b 100644 --- a/assets/decentdb-benchmarks.svg +++ b/assets/decentdb-benchmarks.svg @@ -6,11 +6,11 @@ - 2026-06-20T15:11:49.055899 + 2026-06-29T09:33:03.123148 image/svg+xml - Matplotlib v3.11.0, https://matplotlib.org/ + Matplotlib v3.10.8, https://matplotlib.org/ @@ -30,386 +30,310 @@ z - - +" clip-path="url(#p7cf8bf30fd)" style="fill: #1f77b4"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #1f77b4"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #1f77b4"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #1f77b4"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #1f77b4"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #1f77b4"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #1f77b4"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #ff7f0e"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #ff7f0e"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #ff7f0e"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #ff7f0e"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #ff7f0e"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #ff7f0e"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #ff7f0e"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #f4a261"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #f4a261"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #f4a261"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #f4a261"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #f4a261"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #f4a261"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #f4a261"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #2ca02c"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #2ca02c"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #2ca02c"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #2ca02c"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #2ca02c"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #2ca02c"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #2ca02c"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #d62728"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #d62728"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #d62728"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #d62728"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #d62728"/> - +" clip-path="url(#p7cf8bf30fd)" style="fill: #d62728"/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +" clip-path="url(#p7cf8bf30fd)" style="fill: #d62728"/> - - + - + - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - + - + - - - - - - - - - - - - - - + + + + + + + + + + + + + - + - + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - + - + - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -1173,19 +1097,19 @@ z - - + - + - - + - + - + - - - + + - + - + - - - + + - + - + - - - + + - + - + - - - + + - + - - - + + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + - - + - - + - - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + - + - + - - - - - - - + + + + + + - - + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + - + - - - - - - - + + + + + + + - - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - + + diff --git a/benchmarks/rust-baseline/Cargo.lock b/benchmarks/rust-baseline/Cargo.lock index 3fddfe12..a89176bd 100644 --- a/benchmarks/rust-baseline/Cargo.lock +++ b/benchmarks/rust-baseline/Cargo.lock @@ -694,7 +694,7 @@ dependencies = [ [[package]] name = "decentdb" -version = "2.14.0" +version = "2.15.0" dependencies = [ "base64", "chacha20", @@ -1531,7 +1531,7 @@ checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] name = "libpg_query_sys" -version = "2.14.0" +version = "2.15.0" dependencies = [ "pg_query", ] diff --git a/benchmarks/rust-baseline/README.md b/benchmarks/rust-baseline/README.md index 4ea89812..80e9d1d8 100644 --- a/benchmarks/rust-baseline/README.md +++ b/benchmarks/rust-baseline/README.md @@ -11,8 +11,8 @@ SQLite or DuckDB tests, dependencies, or comparison behavior to the DecentDB engine core. For the current cross-benchmark performance plan, see -`../../design/METRIC_IMPROVEMENTS_PLAN.md`. The public README charts are driven -by `cargo bench -p decentdb --bench embedded_compare` and +`../../design/WIN_PERFORMANCE_IMPROVEMENTS_01.md`. The public README charts are +driven by `cargo bench -p decentdb --bench embedded_compare` and `data/bench_summary.json`; this rust-baseline runner is the larger diagnostic surface for music-library totals, point lookups, joins, views, and grouped aggregates. @@ -66,7 +66,8 @@ valid with `--engine decentdb`. | full | 50,000 | 500,000 | 5,000,000 | Release-quality raw-engine cross-check | | huge | 250,000 | 2,500,000 | 25,000,000 | Long-running stress/showcase tier; not required for every PR | -Memory behavior is tracked in JSON and in `design/METRIC_IMPROVEMENTS_PLAN.md`. +Memory behavior is tracked in JSON and in +`design/WIN_PERFORMANCE_IMPROVEMENTS_01.md`. The default DecentDB path links the `decentdb` crate directly (path-dep against `../../crates/decentdb`) and uses the engine's hot-path API: diff --git a/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-full.json b/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-full.json new file mode 100644 index 00000000..adb76892 --- /dev/null +++ b/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-full.json @@ -0,0 +1,167 @@ +{ + "binding": "RustRaw", + "scale_name": "full", + "benchmark_profile": "default", + "result_schema_version": 2, + "measurement_family": "music_library_total_runtime", + "engine_access_path": "decentdb_native_rust", + "durability_profile": "decentdb_durable_wal_default", + "workload_class": "bulk_load_then_read_only_music_library", + "cache_profile": "decentdb_default_low_memory", + "query_repetition_policy": "single_execution_per_query_shape", + "cold_state_policy": "same_process_fresh_create_then_query", + "target_artists": 50000, + "target_albums": 500000, + "target_songs_cap": 5000000, + "started_unix": 1782240283, + "finished_unix": 1782240287, + "engine_version": "2.14.0", + "database_path": "run-rust-full.ddb", + "database_size_bytes": 161189888, + "wal_size_bytes": 32, + "peak_rss_bytes": 712347648, + "steps": [ + { + "name": "connect_open", + "duration_seconds": 0.003061832, + "records": null, + "records_per_second": null, + "rss_bytes": 48672768, + "rss_anon_kb": 33892, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "schema_create", + "duration_seconds": 0.007377279, + "records": null, + "records_per_second": null, + "rss_bytes": 16326656, + "rss_anon_kb": 2304, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_artists", + "duration_seconds": 0.05746554, + "records": 50000, + "records_per_second": 870086.6641120922, + "rss_bytes": 35385344, + "rss_anon_kb": 20916, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_albums", + "duration_seconds": 0.47960313, + "records": 500000, + "records_per_second": 1042528.6423797944, + "rss_bytes": 207650816, + "rss_anon_kb": 189144, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_songs", + "duration_seconds": 2.213354729, + "records": 2749816, + "records_per_second": 1242374.7373031229, + "rss_bytes": 712347648, + "rss_anon_kb": 682012, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "checkpoint_after_seed", + "duration_seconds": 0.38249337, + "records": null, + "records_per_second": null, + "rss_bytes": 543186944, + "rss_anon_kb": 516816, + "rss_file_kb": 13640, + "extra": { + "checkpoint_mode": "wal", + "database_bytes_after": 161189888, + "database_bytes_before": 8192, + "wal_bytes_after": 32, + "wal_bytes_before": 167772160 + } + }, + { + "name": "query_count_songs", + "duration_seconds": 0.000201278, + "records": null, + "records_per_second": null, + "rss_bytes": 543383552, + "rss_anon_kb": 517008, + "rss_file_kb": 13640, + "extra": { + "count": 2749816 + } + }, + { + "name": "query_aggregate_durations", + "duration_seconds": 0.134683189, + "records": null, + "records_per_second": null, + "rss_bytes": 544997376, + "rss_anon_kb": 518584, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_artist_by_id", + "duration_seconds": 0.000041919, + "records": null, + "records_per_second": null, + "rss_bytes": 544997376, + "rss_anon_kb": 518584, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_top10_artists_by_songs", + "duration_seconds": 0.024173906, + "records": null, + "records_per_second": null, + "rss_bytes": 543199232, + "rss_anon_kb": 516828, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_top10_albums_by_songs", + "duration_seconds": 0.207680188, + "records": null, + "records_per_second": null, + "rss_bytes": 543199232, + "rss_anon_kb": 516828, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_view_first_1000", + "duration_seconds": 0.003040241, + "records": null, + "records_per_second": null, + "rss_bytes": 543678464, + "rss_anon_kb": 517296, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_songs_for_artist_via_view", + "duration_seconds": 0.000331162, + "records": null, + "records_per_second": null, + "rss_bytes": 543678464, + "rss_anon_kb": 517296, + "rss_file_kb": 13640, + "extra": {} + } + ], + "latency_cases": [], + "concurrency_cases": [], + "write_cases": [], + "cold_cases": [] +} \ No newline at end of file diff --git a/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-medium.json b/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-medium.json new file mode 100644 index 00000000..55e9dad3 --- /dev/null +++ b/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-medium.json @@ -0,0 +1,167 @@ +{ + "binding": "RustRaw", + "scale_name": "medium", + "benchmark_profile": "default", + "result_schema_version": 2, + "measurement_family": "music_library_total_runtime", + "engine_access_path": "decentdb_native_rust", + "durability_profile": "decentdb_durable_wal_default", + "workload_class": "bulk_load_then_read_only_music_library", + "cache_profile": "decentdb_default_low_memory", + "query_repetition_policy": "single_execution_per_query_shape", + "cold_state_policy": "same_process_fresh_create_then_query", + "target_artists": 5000, + "target_albums": 50000, + "target_songs_cap": 500000, + "started_unix": 1782240283, + "finished_unix": 1782240283, + "engine_version": "2.14.0", + "database_path": "run-rust-medium.ddb", + "database_size_bytes": 15314944, + "wal_size_bytes": 32, + "peak_rss_bytes": 96763904, + "steps": [ + { + "name": "connect_open", + "duration_seconds": 0.003446004, + "records": null, + "records_per_second": null, + "rss_bytes": 19345408, + "rss_anon_kb": 5252, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "schema_create", + "duration_seconds": 0.003937908, + "records": null, + "records_per_second": null, + "rss_bytes": 15974400, + "rss_anon_kb": 1960, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_artists", + "duration_seconds": 0.009188873, + "records": 5000, + "records_per_second": 544136.3701511599, + "rss_bytes": 17866752, + "rss_anon_kb": 3808, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_albums", + "duration_seconds": 0.052365569, + "records": 50000, + "records_per_second": 954825.8704111475, + "rss_bytes": 37736448, + "rss_anon_kb": 23212, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_songs", + "duration_seconds": 0.191580382, + "records": 276243, + "records_per_second": 1441916.9495131292, + "rss_bytes": 96763904, + "rss_anon_kb": 80856, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "checkpoint_after_seed", + "duration_seconds": 0.042960911, + "records": null, + "records_per_second": null, + "rss_bytes": 76509184, + "rss_anon_kb": 61076, + "rss_file_kb": 13640, + "extra": { + "checkpoint_mode": "wal", + "database_bytes_after": 15314944, + "database_bytes_before": 8192, + "wal_bytes_after": 32, + "wal_bytes_before": 16777216 + } + }, + { + "name": "query_count_songs", + "duration_seconds": 0.000062657, + "records": null, + "records_per_second": null, + "rss_bytes": 76521472, + "rss_anon_kb": 61088, + "rss_file_kb": 13640, + "extra": { + "count": 276243 + } + }, + { + "name": "query_aggregate_durations", + "duration_seconds": 0.014112282, + "records": null, + "records_per_second": null, + "rss_bytes": 78012416, + "rss_anon_kb": 62544, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_artist_by_id", + "duration_seconds": 0.000030247, + "records": null, + "records_per_second": null, + "rss_bytes": 78012416, + "rss_anon_kb": 62544, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_top10_artists_by_songs", + "duration_seconds": 0.002769824, + "records": null, + "records_per_second": null, + "rss_bytes": 76488704, + "rss_anon_kb": 61056, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_top10_albums_by_songs", + "duration_seconds": 0.020361163, + "records": null, + "records_per_second": null, + "rss_bytes": 76484608, + "rss_anon_kb": 61052, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_view_first_1000", + "duration_seconds": 0.001968999, + "records": null, + "records_per_second": null, + "rss_bytes": 77086720, + "rss_anon_kb": 61640, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_songs_for_artist_via_view", + "duration_seconds": 0.000275297, + "records": null, + "records_per_second": null, + "rss_bytes": 77086720, + "rss_anon_kb": 61640, + "rss_file_kb": 13640, + "extra": {} + } + ], + "latency_cases": [], + "concurrency_cases": [], + "write_cases": [], + "cold_cases": [] +} \ No newline at end of file diff --git a/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-smoke.json b/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-smoke.json new file mode 100644 index 00000000..c8b0584f --- /dev/null +++ b/benchmarks/rust-baseline/results/2026-06-23-1844-rust-baseline-default-smoke.json @@ -0,0 +1,167 @@ +{ + "binding": "RustRaw", + "scale_name": "smoke", + "benchmark_profile": "default", + "result_schema_version": 2, + "measurement_family": "music_library_total_runtime", + "engine_access_path": "decentdb_native_rust", + "durability_profile": "decentdb_durable_wal_default", + "workload_class": "bulk_load_then_read_only_music_library", + "cache_profile": "decentdb_default_low_memory", + "query_repetition_policy": "single_execution_per_query_shape", + "cold_state_policy": "same_process_fresh_create_then_query", + "target_artists": 500, + "target_albums": 5000, + "target_songs_cap": 50000, + "started_unix": 1782240283, + "finished_unix": 1782240283, + "engine_version": "2.14.0", + "database_path": "run-rust-smoke.ddb", + "database_size_bytes": 1482752, + "wal_size_bytes": 32, + "peak_rss_bytes": 24215552, + "steps": [ + { + "name": "connect_open", + "duration_seconds": 0.006171074, + "records": null, + "records_per_second": null, + "rss_bytes": 9801728, + "rss_anon_kb": 1116, + "rss_file_kb": 8456, + "extra": {} + }, + { + "name": "schema_create", + "duration_seconds": 0.003517278, + "records": null, + "records_per_second": null, + "rss_bytes": 14094336, + "rss_anon_kb": 1340, + "rss_file_kb": 12424, + "extra": {} + }, + { + "name": "seed_artists", + "duration_seconds": 0.003793627, + "records": 500, + "records_per_second": 131799.9898250408, + "rss_bytes": 14753792, + "rss_anon_kb": 1664, + "rss_file_kb": 12744, + "extra": {} + }, + { + "name": "seed_albums", + "duration_seconds": 0.007966897, + "records": 5000, + "records_per_second": 627596.917595395, + "rss_bytes": 16957440, + "rss_anon_kb": 3624, + "rss_file_kb": 12936, + "extra": {} + }, + { + "name": "seed_songs", + "duration_seconds": 0.025339305, + "records": 27783, + "records_per_second": 1096438.9118012511, + "rss_bytes": 24215552, + "rss_anon_kb": 10712, + "rss_file_kb": 12936, + "extra": {} + }, + { + "name": "checkpoint_after_seed", + "duration_seconds": 0.009589846, + "records": null, + "records_per_second": null, + "rss_bytes": 21286912, + "rss_anon_kb": 7852, + "rss_file_kb": 12936, + "extra": { + "checkpoint_mode": "wal", + "database_bytes_after": 1482752, + "database_bytes_before": 8192, + "wal_bytes_after": 32, + "wal_bytes_before": 16777216 + } + }, + { + "name": "query_count_songs", + "duration_seconds": 0.000076394, + "records": null, + "records_per_second": null, + "rss_bytes": 21352448, + "rss_anon_kb": 7852, + "rss_file_kb": 13000, + "extra": { + "count": 27783 + } + }, + { + "name": "query_aggregate_durations", + "duration_seconds": 0.002093984, + "records": null, + "records_per_second": null, + "rss_bytes": 21811200, + "rss_anon_kb": 7980, + "rss_file_kb": 13320, + "extra": {} + }, + { + "name": "query_artist_by_id", + "duration_seconds": 0.000034775, + "records": null, + "records_per_second": null, + "rss_bytes": 21811200, + "rss_anon_kb": 7980, + "rss_file_kb": 13320, + "extra": {} + }, + { + "name": "query_top10_artists_by_songs", + "duration_seconds": 0.000517572, + "records": null, + "records_per_second": null, + "rss_bytes": 21815296, + "rss_anon_kb": 7856, + "rss_file_kb": 13448, + "extra": {} + }, + { + "name": "query_top10_albums_by_songs", + "duration_seconds": 0.003258161, + "records": null, + "records_per_second": null, + "rss_bytes": 21815296, + "rss_anon_kb": 7856, + "rss_file_kb": 13448, + "extra": {} + }, + { + "name": "query_view_first_1000", + "duration_seconds": 0.006831153, + "records": null, + "records_per_second": null, + "rss_bytes": 22245376, + "rss_anon_kb": 8084, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_songs_for_artist_via_view", + "duration_seconds": 0.00044693, + "records": null, + "records_per_second": null, + "rss_bytes": 22245376, + "rss_anon_kb": 8084, + "rss_file_kb": 13640, + "extra": {} + } + ], + "latency_cases": [], + "concurrency_cases": [], + "write_cases": [], + "cold_cases": [] +} \ No newline at end of file diff --git a/benchmarks/rust-baseline/results/2026-06-23-1845-rust-baseline-default-huge.json b/benchmarks/rust-baseline/results/2026-06-23-1845-rust-baseline-default-huge.json new file mode 100644 index 00000000..79fa61d3 --- /dev/null +++ b/benchmarks/rust-baseline/results/2026-06-23-1845-rust-baseline-default-huge.json @@ -0,0 +1,167 @@ +{ + "binding": "RustRaw", + "scale_name": "huge", + "benchmark_profile": "default", + "result_schema_version": 2, + "measurement_family": "music_library_total_runtime", + "engine_access_path": "decentdb_native_rust", + "durability_profile": "decentdb_durable_wal_default", + "workload_class": "bulk_load_then_read_only_music_library", + "cache_profile": "decentdb_default_low_memory", + "query_repetition_policy": "single_execution_per_query_shape", + "cold_state_policy": "same_process_fresh_create_then_query", + "target_artists": 250000, + "target_albums": 2500000, + "target_songs_cap": 25000000, + "started_unix": 1782240287, + "finished_unix": 1782240313, + "engine_version": "2.14.0", + "database_path": "run-rust-huge.ddb", + "database_size_bytes": 833892352, + "wal_size_bytes": 32, + "peak_rss_bytes": 3449049088, + "steps": [ + { + "name": "connect_open", + "duration_seconds": 0.003349593, + "records": null, + "records_per_second": null, + "rss_bytes": 227729408, + "rss_anon_kb": 208752, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "schema_create", + "duration_seconds": 0.028400677, + "records": null, + "records_per_second": null, + "rss_bytes": 16642048, + "rss_anon_kb": 2612, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_artists", + "duration_seconds": 0.280477603, + "records": 250000, + "records_per_second": 891336.767449485, + "rss_bytes": 105857024, + "rss_anon_kb": 89736, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_albums", + "duration_seconds": 2.649367025, + "records": 2500000, + "records_per_second": 943621.6184505429, + "rss_bytes": 929538048, + "rss_anon_kb": 894112, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "seed_songs", + "duration_seconds": 19.023166863, + "records": 13746520, + "records_per_second": 722619.9559200071, + "rss_bytes": 3449049088, + "rss_anon_kb": 3354572, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "checkpoint_after_seed", + "duration_seconds": 2.123233177, + "records": null, + "records_per_second": null, + "rss_bytes": 2592288768, + "rss_anon_kb": 2517892, + "rss_file_kb": 13640, + "extra": { + "checkpoint_mode": "wal", + "database_bytes_after": 833892352, + "database_bytes_before": 8192, + "wal_bytes_after": 32, + "wal_bytes_before": 805306368 + } + }, + { + "name": "query_count_songs", + "duration_seconds": 0.000800103, + "records": null, + "records_per_second": null, + "rss_bytes": 2593394688, + "rss_anon_kb": 2518972, + "rss_file_kb": 13640, + "extra": { + "count": 13746520 + } + }, + { + "name": "query_aggregate_durations", + "duration_seconds": 0.737939397, + "records": null, + "records_per_second": null, + "rss_bytes": 2770583552, + "rss_anon_kb": 2692008, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_artist_by_id", + "duration_seconds": 0.000043903, + "records": null, + "records_per_second": null, + "rss_bytes": 2770583552, + "rss_anon_kb": 2692008, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_top10_artists_by_songs", + "duration_seconds": 0.136872101, + "records": null, + "records_per_second": null, + "rss_bytes": 2592440320, + "rss_anon_kb": 2518040, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_top10_albums_by_songs", + "duration_seconds": 1.012547132, + "records": null, + "records_per_second": null, + "rss_bytes": 2592440320, + "rss_anon_kb": 2518040, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_view_first_1000", + "duration_seconds": 0.003243874, + "records": null, + "records_per_second": null, + "rss_bytes": 2592899072, + "rss_anon_kb": 2518488, + "rss_file_kb": 13640, + "extra": {} + }, + { + "name": "query_songs_for_artist_via_view", + "duration_seconds": 0.000342583, + "records": null, + "records_per_second": null, + "rss_bytes": 2592899072, + "rss_anon_kb": 2518488, + "rss_file_kb": 13640, + "extra": {} + } + ], + "latency_cases": [], + "concurrency_cases": [], + "write_cases": [], + "cold_cases": [] +} \ No newline at end of file diff --git a/benchmarks/rust-baseline/results/report.html b/benchmarks/rust-baseline/results/report.html index 8d2b73df..4584cfbc 100644 --- a/benchmarks/rust-baseline/results/report.html +++ b/benchmarks/rust-baseline/results/report.html @@ -142,14 +142,14 @@

DecentDB rust-baseline analytics report

-

Generated 2026-06-19 21:48:15 UTC from results using 67 historical run(s).

+

Generated 2026-06-23 18:45:14 UTC from results using 71 historical run(s).

- +