diff --git a/devlog/012-mst-bench-notes.md b/devlog/012-mst-bench-notes.md index 7169454..325cdd1 100644 --- a/devlog/012-mst-bench-notes.md +++ b/devlog/012-mst-bench-notes.md @@ -51,6 +51,8 @@ the publishable benchmark is the official `atproto-bench` MST run: one Zat path, median of three `just bench-mst` runs, each with one warmup pass and five measured passes over 50k deterministic records and 500k lookups per pass: +Zat and Atmos MST benchmark throughput chart + | implementation | insert + root | lookup | |---|---:|---:| | Zat | 5,728,470 records/sec | 6,540,333 lookups/sec | diff --git a/devlog/img/mst-throughput.svg b/devlog/img/mst-throughput.svg new file mode 100644 index 0000000..2bd3fc4 --- /dev/null +++ b/devlog/img/mst-throughput.svg @@ -0,0 +1,75 @@ + + Zat and Atmos MST benchmark throughput + Grouped horizontal bar chart comparing Zat and Atmos insert plus root throughput and lookup throughput. Zat is 1.38 times faster on insert plus root and 1.19 times faster on lookup. + + + + + MST hot path after matching Atmos semantics + 50k deterministic records, 500k lookups/pass, median of 3 official atproto-bench runs + + + + same work, same tree + both implementations produced identical root bytes + 01711220d59a82ff...e8cbc579221c8c2e + + + + + insert + root + 1.38x + + + + lookup + 1.19x + + + + throughput, millions of operations per second + + + + + + + 0 + 2M + 4M + 6M + + + + + + + + + + insert + root + lookup + + + + + Zat 5.73M records/sec + Atmos 4.15M records/sec + + + + + + Zat 6.54M lookups/sec + Atmos 5.51M lookups/sec + + + + + + Zat + + Atmos + apples-to-apples benchmark: one selected Zat path, one Atmos path + +