diff options
| author | eunhhu <[email protected]> | 2026-09-30 08:54:29 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-09-30 08:54:29 +0100 |
| commit | 9840d27a9e437de32256024a2fd6a3219a239815 (patch) | |
| tree | eba57012bcdaac8e019d1421370a570a3e9f70d9 /research/experiments/023-node-reuse/2026-09-30-after-4-linux-aarch64.jsonl | |
| parent | 987d4d7aa08624e28d0ea18a1e66e359a0230c80 (diff) | |
| download | pure-9840d27a9e437de32256024a2fd6a3219a239815.tar.gz pure-9840d27a9e437de32256024a2fd6a3219a239815.zip | |
Say what snapshots cost the owner, and what reusing their nodes gave (107)
Most of it was the allocator: leaves past glibc's thread cache, freed by
whichever thread let the last snapshot go. jemalloc was 11-14% faster
at more memory; reusing the nodes in Pure gave a median +9.4% over six
pairs, 4-8% less CPU a transaction in all six, and 1.97x the state bytes
resident where it was 2.18x. TPC-C in RAM is now 4.0x a tuned SQLite at
W=1 and 3.5x at W=4; finding items is the owner's largest part now.
Diffstat (limited to 'research/experiments/023-node-reuse/2026-09-30-after-4-linux-aarch64.jsonl')
| -rw-r--r-- | research/experiments/023-node-reuse/2026-09-30-after-4-linux-aarch64.jsonl | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/research/experiments/023-node-reuse/2026-09-30-after-4-linux-aarch64.jsonl b/research/experiments/023-node-reuse/2026-09-30-after-4-linux-aarch64.jsonl new file mode 100644 index 0000000..5753c70 --- /dev/null +++ b/research/experiments/023-node-reuse/2026-09-30-after-4-linux-aarch64.jsonl @@ -0,0 +1,3 @@ +{"step": "load", "directory": "/dev/shm", "warehouses": 1, "rows": 568758, "generate_s": 0.58, "pure_load_s": 0.73, "sqlite_load_s": 1.72, "sqlite_page_size": 4096, "pure_resident_mib": 38.9, "sqlite_file_mib": 13.8} +{"step": "run", "system": "pure", "warehouses": 1, "terminals": 64, "transactions_per_second": 41485, "new_orders_per_minute": 1110139, "undone_new_orders": 3545, "errors": 0, "new_order": {"done": 373592, "failed": 0, "p50_us": 1472, "p99_us": 4608}, "payment": {"done": 356539, "failed": 0, "p50_us": 1472, "p99_us": 4352}, "order_status": {"done": 33350, "failed": 0, "p50_us": 272, "p99_us": 1920}, "delivery": {"done": 33193, "failed": 0, "p50_us": 1472, "p99_us": 4608}, "stock_level": {"done": 33021, "failed": 0, "p50_us": 304, "p99_us": 2048}, "server_threads": "3", "cpu_us_per_transaction": 44.7, "core_shares": {"pure-owner": 0.87, "pure-checkpoint": 0.01}, "resident_mib": 438.8, "written_bytes_per_transaction": 0.0, "device_bytes_per_transaction": null, "consistency_failures": []} +{"step": "end", "pure_resident_mib": 438.8, "pure_state_mib": 222.1, "pure_store_mib": 230.7, "sqlite_files_mib": 13.8, "grouped_sqlite_files_mib": 0.0, "pure_counts": {"bursts": 26186, "burst_events": 759848, "checkpoints": 37}} |
