Skip to content

Commit 2364165

Browse files
committed
Update README performance benchmarks with actual tool results
- Update InMemory throughput: DirectQueue ~500→~350 ops/s, BrokerQueue ~2000→~3200 ops/s - Update Filesystem throughput: DirectQueue ~100→~220 ops/s, BrokerQueue ~500→~700 ops/s - Add note explaining benchmark methodology and tool location - Numbers based on tools/benchmark_storage.py running 1000 operations with concurrency 10/50
1 parent 63424b9 commit 2364165

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

README.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -782,10 +782,15 @@ round-trip per batch:
782782

783783
| Backend | Round-trip latency | DirectQueue | BrokerQueue (batch ~10) |
784784
|---|---|---|---|
785-
| InMemory | < 1 ms | ~500 ops/s | ~2 000 ops/s |
786-
| Filesystem | 1-5 ms | ~100 ops/s | ~500 ops/s |
785+
| InMemory | < 1 ms | ~350 ops/s | ~3 200 ops/s |
786+
| Filesystem | 1-5 ms | ~220 ops/s | ~700 ops/s |
787787
| S3 / GCS (same region) | 50-150 ms | ~5-15 ops/s | ~50-100 ops/s |
788788

789+
**Note:** InMemory and Filesystem numbers are from `tools/benchmark_storage.py` running
790+
1000 operations with concurrency levels 10 and 50 on a development machine. S3/GCS numbers
791+
are estimates based on typical round-trip latencies. Run the benchmark tool to measure
792+
performance on your hardware: `uv run tools/benchmark_storage.py`.
793+
789794
The key multiplier for `BrokerQueue` is the average batch size, which grows naturally
790795
with concurrency: the more callers are waiting while a write is in-flight, the larger
791796
the next batch. Under light load the batch size is 1 and `BrokerQueue` behaves like

0 commit comments

Comments
 (0)