Commit Latency vs Throughput
Commit Latency vs Throughput
Analysis of how commit latency scales with achieved throughput.
Values shown as mean ± standard deviation across seeds.
num_tables = 1
| Throughput (c/s) | Success Rate (%) | P50 Latency (s) | P95 Latency (s) | P99 Latency (s) | Mean Retries |
|---|
| 0.2 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 1.29 ± 0.27 | 4.25 ± 1.26 | 1.0 |
| 0.4 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 2.46 ± 0.47 | 10.71 ± 1.69 | 1.1 |
| 0.8 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 4.54 ± 1.27 | 20.98 ± 6.46 | 1.3 |
| 1.6 ± 0.0 | 100.0 ± 0.0 | 0.38 ± 0.00 | 9.37 ± 0.54 | 46.31 ± 4.13 | 1.6 |
| 2.1 ± 0.0 | 99.9 ± 0.0 | 0.40 ± 0.00 | 12.23 ± 1.01 | 57.37 ± 6.20 | 1.7 |
| 2.7 ± 0.0 | 99.6 ± 0.1 | 0.45 ± 0.01 | 14.77 ± 1.57 | 76.39 ± 5.86 | 2.1 |
| 3.9 ± 0.0 | 96.0 ± 0.2 | 0.57 ± 0.01 | 14.63 ± 0.49 | 92.38 ± 9.55 | 3.0 |
| 5.5 ± 0.0 | 67.5 ± 0.3 | 0.87 ± 0.01 | 1.98 ± 0.01 | 32.03 ± 2.25 | 4.4 |
| 6.3 ± 0.0 | 38.7 ± 0.2 | 1.00 ± 0.01 | 1.95 ± 0.01 | 2.14 ± 0.01 | 5.0 |
| 7.1 ± 0.0 | 17.4 ± 0.0 | 1.06 ± 0.00 | 1.94 ± 0.00 | 2.08 ± 0.00 | 5.3 |
num_tables = 2
| Throughput (c/s) | Success Rate (%) | P50 Latency (s) | P95 Latency (s) | P99 Latency (s) | Mean Retries |
|---|
| 0.2 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 0.88 ± 0.23 | 3.40 ± 0.56 | 1.0 |
| 0.4 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 2.85 ± 0.70 | 11.38 ± 1.76 | 1.1 |
| 0.8 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 4.86 ± 0.95 | 22.22 ± 1.79 | 1.2 |
| 1.6 ± 0.0 | 100.0 ± 0.0 | 0.37 ± 0.00 | 9.60 ± 0.51 | 43.22 ± 5.90 | 1.5 |
| 2.1 ± 0.0 | 100.0 ± 0.0 | 0.37 ± 0.00 | 13.35 ± 1.64 | 56.82 ± 4.78 | 1.6 |
| 2.7 ± 0.0 | 100.0 ± 0.0 | 0.38 ± 0.00 | 15.86 ± 1.80 | 70.36 ± 2.90 | 1.8 |
| 4.1 ± 0.0 | 99.8 ± 0.0 | 0.41 | 24.62 ± 1.43 | 113.30 ± 8.15 | 2.2 |
| 7.6 ± 0.0 | 93.1 ± 0.1 | 0.58 ± 0.00 | 9.43 ± 4.15 | 125.17 ± 4.58 | 3.6 |
| 10.4 ± 0.0 | 64.1 ± 0.2 | 0.87 ± 0.01 | 1.75 ± 0.01 | 1.96 ± 0.00 | 5.2 |
| 11.8 ± 0.0 | 29.0 ± 0.1 | 0.97 ± 0.00 | 1.79 ± 0.00 | 1.95 ± 0.01 | 5.7 |
num_tables = 5
| Throughput (c/s) | Success Rate (%) | P50 Latency (s) | P95 Latency (s) | P99 Latency (s) | Mean Retries |
|---|
| 0.2 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 1.37 ± 0.36 | 3.49 ± 0.76 | 1.0 |
| 0.4 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 2.54 ± 0.43 | 11.04 ± 1.58 | 1.1 |
| 0.8 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 4.62 ± 0.73 | 20.35 ± 3.32 | 1.2 |
| 1.6 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 8.16 ± 1.00 | 44.32 ± 4.93 | 1.4 |
| 2.1 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 12.23 ± 1.09 | 56.78 ± 1.17 | 1.5 |
| 2.7 ± 0.0 | 100.0 ± 0.0 | 0.37 ± 0.00 | 16.20 ± 1.28 | 74.30 ± 5.54 | 1.6 |
| 4.1 ± 0.0 | 100.0 ± 0.0 | 0.37 ± 0.00 | 22.79 ± 2.42 | 115.43 ± 8.80 | 1.9 |
| 8.2 ± 0.0 | 99.6 ± 0.1 | 0.40 ± 0.00 | 47.34 ± 2.57 | 228.20 ± 8.20 | 2.6 |
| 14.9 ± 0.0 | 91.7 ± 0.2 | 0.51 ± 0.00 | 1.26 ± 0.01 | 38.54 ± 3.32 | 3.4 |
| 25.4 ± 0.0 | 64.0 ± 0.2 | 0.87 ± 0.00 | 1.70 ± 0.00 | 1.88 ± 0.00 | 5.6 |
num_tables = 10
| Throughput (c/s) | Success Rate (%) | P50 Latency (s) | P95 Latency (s) | P99 Latency (s) | Mean Retries |
|---|
| 0.2 ± 0.0 | 100.0 ± 0.0 | 0.34 ± 0.00 | 1.12 ± 0.33 | 3.85 ± 1.40 | 1.0 |
| 0.4 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 2.57 ± 0.13 | 11.45 ± 1.72 | 1.1 |
| 0.8 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 4.52 ± 0.64 | 22.05 ± 0.87 | 1.2 |
| 1.6 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 7.62 ± 0.93 | 42.85 ± 3.70 | 1.4 |
| 2.1 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 12.51 ± 1.52 | 58.47 ± 3.92 | 1.5 |
| 2.7 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 14.86 ± 1.54 | 74.80 ± 6.07 | 1.6 |
| 4.1 ± 0.0 | 100.0 ± 0.0 | 0.37 ± 0.00 | 23.76 ± 1.90 | 114.27 ± 2.67 | 1.8 |
| 8.2 ± 0.0 | 100.0 ± 0.0 | 0.38 ± 0.00 | 55.69 ± 3.18 | 250.58 ± 12.53 | 2.4 |
| 15.4 ± 0.0 | 94.9 ± 0.2 | 0.40 ± 0.00 | 1.00 ± 0.03 | 121.89 ± 3.55 | 2.8 |
| 35.3 ± 0.1 | 93.8 ± 0.1 | 0.57 ± 0.00 | 1.33 ± 0.01 | 1.68 ± 0.00 | 4.2 |
num_tables = 20
| Throughput (c/s) | Success Rate (%) | P50 Latency (s) | P95 Latency (s) | P99 Latency (s) | Mean Retries |
|---|
| 0.2 ± 0.0 | 100.0 ± 0.0 | 0.32 ± 0.00 | 0.91 ± 0.61 | 5.22 ± 1.80 | 1.0 |
| 0.4 ± 0.0 | 100.0 ± 0.0 | 0.34 ± 0.00 | 2.83 ± 0.81 | 10.57 ± 2.19 | 1.1 |
| 0.8 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 5.24 ± 1.04 | 22.50 ± 1.61 | 1.2 |
| 1.6 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 9.40 ± 1.12 | 44.16 ± 4.74 | 1.4 |
| 2.0 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 11.00 ± 0.25 | 57.62 ± 4.93 | 1.4 |
| 2.7 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 14.86 ± 1.09 | 75.07 ± 5.49 | 1.5 |
| 4.1 ± 0.0 | 100.0 ± 0.0 | 0.37 ± 0.00 | 23.74 ± 2.01 | 115.54 ± 4.59 | 1.8 |
| 8.2 ± 0.0 | 100.0 ± 0.0 | 0.38 ± 0.00 | 53.10 ± 1.66 | 242.83 ± 5.16 | 2.2 |
| 15.8 ± 0.0 | 96.8 ± 0.2 | 0.38 ± 0.00 | 36.16 ± 1.49 | 228.25 ± 13.11 | 2.7 |
| 36.8 ± 0.1 | 98.1 ± 0.1 | 0.42 ± 0.00 | 0.84 ± 0.00 | 1.13 ± 0.01 | 3.2 |
num_tables = 50
| Throughput (c/s) | Success Rate (%) | P50 Latency (s) | P95 Latency (s) | P99 Latency (s) | Mean Retries |
|---|
| 0.2 ± 0.0 | 100.0 ± 0.0 | 0.25 ± 0.02 | 0.54 ± 0.07 | 4.16 ± 0.58 | 1.0 |
| 0.4 ± 0.0 | 100.0 ± 0.0 | 0.32 ± 0.00 | 2.20 ± 0.43 | 11.83 ± 1.02 | 1.1 |
| 0.8 ± 0.0 | 100.0 ± 0.0 | 0.34 ± 0.00 | 4.40 ± 0.75 | 21.04 ± 3.30 | 1.2 |
| 1.7 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 9.88 ± 1.23 | 45.42 ± 2.71 | 1.3 |
| 2.1 ± 0.0 | 100.0 ± 0.0 | 0.35 ± 0.00 | 10.64 ± 0.76 | 56.24 ± 6.98 | 1.4 |
| 2.7 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 14.25 ± 1.71 | 76.88 ± 5.49 | 1.5 |
| 4.1 ± 0.0 | 100.0 ± 0.0 | 0.36 ± 0.00 | 24.15 ± 3.37 | 117.78 ± 8.10 | 1.7 |
| 8.2 ± 0.0 | 100.0 ± 0.0 | 0.37 ± 0.00 | 51.57 ± 2.22 | 233.12 ± 6.24 | 2.1 |
| 16.0 ± 0.0 | 98.7 ± 0.1 | 0.38 ± 0.00 | 78.93 ± 4.47 | 391.93 ± 13.92 | 2.6 |
| 36.8 ± 0.1 | 98.3 ± 0.1 | 0.39 | 0.62 ± 0.00 | 0.79 ± 0.01 | 2.9 |
Notes
- Latencies reported in seconds (converted from milliseconds)
- Values shown as mean ± standard deviation across multiple seeds
- Throughput = commits per second during steady-state window
- Success rate = percentage of transactions that committed successfully
- Mean retries = average number of retry attempts per committed transaction