From 0a57c3ad03df6da7eb0a72059bd85c4d716dbb8a Mon Sep 17 00:00:00 2001 From: eunhhu Date: Wed, 30 Sep 2026 07:56:49 +0100 Subject: Say what TPC-C costs when SQLite commits in groups too, and with four warehouses (106) SQLite tuned first, by the criteria committed before (and, beyond them, checkpoints each 40 MB of WAL, in its favour). On the SD card Pure stays 4.2-10.8x ahead at equal terminals, SQLite writing 8-18x the bytes a transaction; in RAM 3.2-3.5x. All tables equal at W=1 and W=4, and every run consistent. In RAM the one owner is the limit (0.94 of a core at W=4, no gain from 16 to 64 terminals), a third of its busy time copying nodes the snapshots share; checkpoints and memory are within their criteria. --- .../022-tpcc-grouped/2026-09-30-sd-w4-2-linux-aarch64.jsonl | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 research/experiments/022-tpcc-grouped/2026-09-30-sd-w4-2-linux-aarch64.jsonl (limited to 'research/experiments/022-tpcc-grouped/2026-09-30-sd-w4-2-linux-aarch64.jsonl') diff --git a/research/experiments/022-tpcc-grouped/2026-09-30-sd-w4-2-linux-aarch64.jsonl b/research/experiments/022-tpcc-grouped/2026-09-30-sd-w4-2-linux-aarch64.jsonl new file mode 100644 index 0000000..4a33fd4 --- /dev/null +++ b/research/experiments/022-tpcc-grouped/2026-09-30-sd-w4-2-linux-aarch64.jsonl @@ -0,0 +1,8 @@ +{"step": "load", "directory": "/home/eunhhu/tpcc-sd", "warehouses": 4, "rows": 1975536, "generate_s": 2.01, "pure_load_s": 7.85, "sqlite_load_s": 6.48, "sqlite_page_size": 1024, "pure_resident_mib": 104.1, "sqlite_file_mib": 52.9} +{"step": "run", "system": "pure", "warehouses": 4, "terminals": 16, "transactions_per_second": 1893, "new_orders_per_minute": 51120, "undone_new_orders": 244, "errors": 0, "new_order": {"done": 25817, "failed": 0, "p50_us": 5376, "p99_us": 59392}, "payment": {"done": 24091, "failed": 0, "p50_us": 5120, "p99_us": 57344}, "order_status": {"done": 2252, "failed": 0, "p50_us": 112, "p99_us": 352}, "delivery": {"done": 2327, "failed": 0, "p50_us": 5120, "p99_us": 49152}, "stock_level": {"done": 2322, "failed": 0, "p50_us": 184, "p99_us": 416}, "server_threads": "3", "cpu_us_per_transaction": 64.4, "core_shares": {"pure-owner": 0.07}, "resident_mib": 134.2, "written_bytes_per_transaction": 1216.5, "device_bytes_per_transaction": 1245.1, "consistency_failures": []} +{"step": "run", "system": "pure", "warehouses": 4, "terminals": 64, "transactions_per_second": 4324, "new_orders_per_minute": 116334, "undone_new_orders": 544, "errors": 0, "new_order": {"done": 58715, "failed": 0, "p50_us": 8704, "p99_us": 102400}, "payment": {"done": 55623, "failed": 0, "p50_us": 8704, "p99_us": 94208}, "order_status": {"done": 5123, "failed": 0, "p50_us": 352, "p99_us": 896}, "delivery": {"done": 5225, "failed": 0, "p50_us": 8704, "p99_us": 94208}, "stock_level": {"done": 5053, "failed": 0, "p50_us": 416, "p99_us": 992}, "server_threads": "3", "cpu_us_per_transaction": 58.6, "core_shares": {"pure-owner": 0.14, "pure-checkpoint": 0.0}, "resident_mib": 209.4, "written_bytes_per_transaction": 661.7, "device_bytes_per_transaction": 681.8, "consistency_failures": []} +{"step": "run", "system": "sqlite 3.46.1", "synchronous": "full", "pragmas": "PRAGMA mmap_size=1073741824; PRAGMA cache_size=-65536; PRAGMA temp_store=MEMORY; PRAGMA wal_autocheckpoint=40000;", "warehouses": 4, "terminals": 1, "transactions_per_second": 89, "batches": 0, "batched": 0, "new_orders_per_minute": 2337, "undone_new_orders": 10, "new_order": {"done": 1179, "failed": 0, "p50_us": 6912, "p99_us": 114688}, "payment": {"done": 1153, "failed": 0, "p50_us": 5888, "p99_us": 81920}, "order_status": {"done": 110, "failed": 0, "p50_us": 36, "p99_us": 68}, "delivery": {"done": 114, "failed": 0, "p50_us": 6144, "p99_us": 36864}, "stock_level": {"done": 113, "failed": 0, "p50_us": 448, "p99_us": 864}, "cpu_seconds": 0.601, "peak_resident_kib": 24448, "written_bytes": 70483968, "cpu_us_per_transaction": 225.2, "peak_resident_mib": 23.9, "written_bytes_per_transaction": 26408.4, "device_bytes_per_transaction": 40111.3, "consistency_failures": []} +{"step": "run", "system": "sqlite 3.46.1", "synchronous": "full", "pragmas": "PRAGMA mmap_size=1073741824; PRAGMA cache_size=-65536; PRAGMA temp_store=MEMORY; PRAGMA wal_autocheckpoint=40000;", "warehouses": 4, "terminals": 4, "transactions_per_second": 222, "batches": 0, "batched": 0, "new_orders_per_minute": 5896, "undone_new_orders": 25, "new_order": {"done": 2982, "failed": 0, "p50_us": 1920, "p99_us": 81920}, "payment": {"done": 2929, "failed": 0, "p50_us": 1344, "p99_us": 57344}, "order_status": {"done": 266, "failed": 0, "p50_us": 34, "p99_us": 80}, "delivery": {"done": 265, "failed": 0, "p50_us": 1600, "p99_us": 53248}, "stock_level": {"done": 245, "failed": 0, "p50_us": 496, "p99_us": 960}, "cpu_seconds": 1.292, "peak_resident_kib": 28336, "written_bytes": 211664896, "cpu_us_per_transaction": 193.2, "peak_resident_mib": 27.7, "written_bytes_per_transaction": 31653.2, "device_bytes_per_transaction": 22032.2, "consistency_failures": []} +{"step": "run", "system": "sqlite 3.46.1, grouped", "synchronous": "full", "pragmas": "PRAGMA mmap_size=1073741824; PRAGMA cache_size=-65536; PRAGMA temp_store=MEMORY; PRAGMA wal_autocheckpoint=40000;", "warehouses": 4, "terminals": 16, "transactions_per_second": 546, "batches": 1313, "batched": 15759, "new_orders_per_minute": 14787, "undone_new_orders": 84, "new_order": {"done": 7823, "failed": 0, "p50_us": 9728, "p99_us": 507904}, "payment": {"done": 7233, "failed": 0, "p50_us": 9216, "p99_us": 442368}, "order_status": {"done": 672, "failed": 0, "p50_us": 144, "p99_us": 1472}, "delivery": {"done": 703, "failed": 0, "p50_us": 9216, "p99_us": 393216}, "stock_level": {"done": 725, "failed": 0, "p50_us": 832, "p99_us": 2304}, "cpu_seconds": 3.1, "peak_resident_kib": 78592, "written_bytes": 262307840, "cpu_us_per_transaction": 180.7, "peak_resident_mib": 76.8, "written_bytes_per_transaction": 15289.6, "device_bytes_per_transaction": 13845.1, "consistency_failures": []} +{"step": "run", "system": "sqlite 3.46.1, grouped", "synchronous": "full", "pragmas": "PRAGMA mmap_size=1073741824; PRAGMA cache_size=-65536; PRAGMA temp_store=MEMORY; PRAGMA wal_autocheckpoint=40000;", "warehouses": 4, "terminals": 64, "transactions_per_second": 426, "batches": 234, "batched": 11844, "new_orders_per_minute": 11421, "undone_new_orders": 53, "new_order": {"done": 5775, "failed": 0, "p50_us": 26624, "p99_us": 2097152}, "payment": {"done": 5545, "failed": 0, "p50_us": 26624, "p99_us": 2097152}, "order_status": {"done": 479, "failed": 0, "p50_us": 256, "p99_us": 2048}, "delivery": {"done": 524, "failed": 0, "p50_us": 26624, "p99_us": 2097152}, "stock_level": {"done": 469, "failed": 0, "p50_us": 1088, "p99_us": 3840}, "cpu_seconds": 2.071, "peak_resident_kib": 139152, "written_bytes": 170655744, "cpu_us_per_transaction": 161.9, "peak_resident_mib": 135.9, "written_bytes_per_transaction": 13340.8, "device_bytes_per_transaction": 12500.6, "consistency_failures": []} +{"step": "end", "pure_resident_mib": 209.4, "pure_state_mib": 129.9, "pure_store_mib": 104.4, "sqlite_files_mib": 54.6, "grouped_sqlite_files_mib": 58.2, "pure_counts": {"bursts": 5513, "burst_events": 171157, "checkpoints": 3}} -- cgit v1.2.3