Commit Overhead vs Throughput

Commit Overhead vs Throughput

Analysis of commit protocol overhead as percentage of total transaction time.

Overhead = (commit_latency / total_latency) × 100

This represents time spent in retries, exponential backoff, and manifest I/O.

Values shown as mean ± standard deviation across seeds.

real_conflict_probability = 0.0

Throughput (c/s)Success Rate (%)Mean Overhead (%)P50 Overhead (%)P95 Overhead (%)P99 Overhead (%)
0.2 ± 0.0100.0 ± 0.00.4 ± 0.00.4 ± 0.00.6 ± 0.00.7 ± 0.1
0.5 ± 0.0100.0 ± 0.00.8 ± 0.00.8 ± 0.01.1 ± 0.11.2 ± 0.1
1.0 ± 0.0100.0 ± 0.01.5 ± 0.01.4 ± 0.01.8 ± 0.02.0 ± 0.1
2.0 ± 0.0100.0 ± 0.02.9 ± 0.02.8 ± 0.03.3 ± 0.13.7 ± 0.1
4.9 ± 0.1100.0 ± 0.06.9 ± 0.16.9 ± 0.17.5 ± 0.17.9 ± 0.1
9.8 ± 0.198.8 ± 0.113.7 ± 0.113.6 ± 0.114.4 ± 0.114.9 ± 0.3
15.1 ± 0.076.4 ± 0.521.1 ± 0.021.0 ± 0.021.6 ± 0.121.8 ± 0.1
17.6 ± 0.035.0 ± 0.124.5 ± 0.024.5 ± 0.024.9 ± 0.025.0 ± 0.0
18.6 ± 0.018.0 ± 0.025.9 ± 0.025.9 ± 0.026.3 ± 0.026.4 ± 0.0

real_conflict_probability = 0.1

Throughput (c/s)Success Rate (%)Mean Overhead (%)P50 Overhead (%)P95 Overhead (%)P99 Overhead (%)
0.2 ± 0.0100.0 ± 0.00.4 ± 0.00.3 ± 0.00.7 ± 0.01.0 ± 0.1
0.5 ± 0.0100.0 ± 0.00.8 ± 0.00.8 ± 0.01.2 ± 0.01.6 ± 0.2
1.0 ± 0.0100.0 ± 0.01.6 ± 0.01.5 ± 0.02.1 ± 0.02.5 ± 0.1
2.0 ± 0.0100.0 ± 0.03.0 ± 0.02.9 ± 0.03.6 ± 0.14.1 ± 0.0
4.9 ± 0.1100.0 ± 0.07.1 ± 0.17.0 ± 0.17.9 ± 0.18.4 ± 0.1
9.6 ± 0.197.7 ± 0.213.6 ± 0.113.6 ± 0.114.6 ± 0.115.2 ± 0.1
14.6 ± 0.073.6 ± 0.220.4 ± 0.020.3 ± 0.021.2 ± 0.021.8 ± 0.1
17.1 ± 0.034.2 ± 0.124.1 ± 0.024.0 ± 0.024.8 ± 0.025.2 ± 0.0
18.3 ± 0.017.8 ± 0.025.6 ± 0.025.5 ± 0.026.3 ± 0.026.8 ± 0.0

real_conflict_probability = 0.2

Throughput (c/s)Success Rate (%)Mean Overhead (%)P50 Overhead (%)P95 Overhead (%)P99 Overhead (%)
0.2 ± 0.0100.0 ± 0.00.4 ± 0.00.4 ± 0.00.9 ± 0.11.3 ± 0.1
0.5 ± 0.0100.0 ± 0.00.9 ± 0.00.8 ± 0.01.4 ± 0.11.8 ± 0.1
1.0 ± 0.0100.0 ± 0.01.6 ± 0.11.5 ± 0.12.3 ± 0.12.7 ± 0.1
2.0 ± 0.0100.0 ± 0.03.0 ± 0.02.9 ± 0.03.7 ± 0.04.3 ± 0.1
4.9 ± 0.099.9 ± 0.07.1 ± 0.07.0 ± 0.08.1 ± 0.18.9 ± 0.1
9.5 ± 0.096.1 ± 0.213.5 ± 0.113.4 ± 0.114.7 ± 0.115.5 ± 0.1
14.0 ± 0.070.4 ± 0.219.8 ± 0.019.7 ± 0.020.8 ± 0.021.5 ± 0.0
16.7 ± 0.033.2 ± 0.223.5 ± 0.023.4 ± 0.024.4 ± 0.025.0 ± 0.0
17.9 ± 0.017.4 ± 0.025.2 ± 0.025.1 ± 0.026.1 ± 0.026.7 ± 0.0

real_conflict_probability = 0.3

Throughput (c/s)Success Rate (%)Mean Overhead (%)P50 Overhead (%)P95 Overhead (%)P99 Overhead (%)
0.2 ± 0.0100.0 ± 0.00.5 ± 0.00.4 ± 0.01.1 ± 0.01.3 ± 0.1
0.5 ± 0.0100.0 ± 0.00.9 ± 0.00.8 ± 0.01.5 ± 0.02.0 ± 0.1
1.0 ± 0.0100.0 ± 0.01.6 ± 0.01.5 ± 0.02.4 ± 0.12.9 ± 0.1
2.0 ± 0.0100.0 ± 0.03.1 ± 0.03.0 ± 0.04.0 ± 0.04.7 ± 0.0
4.9 ± 0.199.8 ± 0.07.3 ± 0.17.1 ± 0.18.4 ± 0.19.4 ± 0.1
9.3 ± 0.193.8 ± 0.113.4 ± 0.113.2 ± 0.114.8 ± 0.115.7 ± 0.1
13.3 ± 0.067.1 ± 0.219.1 ± 0.018.9 ± 0.020.3 ± 0.021.1 ± 0.0
16.0 ± 0.032.0 ± 0.122.8 ± 0.022.7 ± 0.023.9 ± 0.024.6 ± 0.0
17.4 ± 0.016.9 ± 0.024.7 ± 0.024.6 ± 0.025.8 ± 0.026.4 ± 0.0

real_conflict_probability = 0.5

Throughput (c/s)Success Rate (%)Mean Overhead (%)P50 Overhead (%)P95 Overhead (%)P99 Overhead (%)
0.2 ± 0.0100.0 ± 0.00.6 ± 0.00.5 ± 0.01.2 ± 0.01.5 ± 0.1
0.5 ± 0.0100.0 ± 0.01.0 ± 0.00.9 ± 0.01.7 ± 0.12.2 ± 0.1
1.0 ± 0.0100.0 ± 0.01.8 ± 0.01.6 ± 0.02.7 ± 0.13.3 ± 0.1
2.0 ± 0.0100.0 ± 0.03.3 ± 0.03.1 ± 0.04.4 ± 0.05.4 ± 0.1
4.8 ± 0.098.3 ± 0.27.5 ± 0.17.2 ± 0.09.1 ± 0.110.4 ± 0.1
8.5 ± 0.186.4 ± 0.312.6 ± 0.112.4 ± 0.114.4 ± 0.115.5 ± 0.1
12.0 ± 0.060.3 ± 0.217.5 ± 0.017.3 ± 0.019.2 ± 0.020.1 ± 0.0
14.6 ± 0.029.0 ± 0.121.2 ± 0.021.0 ± 0.022.7 ± 0.023.5 ± 0.0
16.1 ± 0.015.7 ± 0.123.2 ± 0.023.0 ± 0.024.6 ± 0.025.4 ± 0.0

real_conflict_probability = 0.7

Throughput (c/s)Success Rate (%)Mean Overhead (%)P50 Overhead (%)P95 Overhead (%)P99 Overhead (%)
0.2 ± 0.0100.0 ± 0.00.6 ± 0.00.5 ± 0.01.2 ± 0.01.6 ± 0.2
0.5 ± 0.0100.0 ± 0.01.1 ± 0.01.0 ± 0.01.8 ± 0.02.4 ± 0.1
1.0 ± 0.0100.0 ± 0.01.9 ± 0.01.8 ± 0.03.0 ± 0.03.8 ± 0.1
2.0 ± 0.099.9 ± 0.03.5 ± 0.13.3 ± 0.14.9 ± 0.16.1 ± 0.2
4.6 ± 0.092.6 ± 0.27.4 ± 0.17.1 ± 0.19.6 ± 0.111.0 ± 0.1
7.3 ± 0.074.2 ± 0.211.4 ± 0.111.1 ± 0.113.5 ± 0.014.8 ± 0.1
10.3 ± 0.151.9 ± 0.315.5 ± 0.015.3 ± 0.017.6 ± 0.018.6 ± 0.1
13.0 ± 0.026.0 ± 0.119.3 ± 0.019.1 ± 0.021.2 ± 0.022.1 ± 0.0
14.3 ± 0.013.8 ± 0.021.0 ± 0.020.8 ± 0.022.8 ± 0.023.6 ± 0.0

real_conflict_probability = 1.0

Throughput (c/s)Success Rate (%)Mean Overhead (%)P50 Overhead (%)P95 Overhead (%)P99 Overhead (%)
0.2 ± 0.0100.0 ± 0.00.7 ± 0.00.7 ± 0.01.3 ± 0.11.8 ± 0.2
0.5 ± 0.0100.0 ± 0.01.2 ± 0.01.1 ± 0.02.1 ± 0.12.7 ± 0.2
1.0 ± 0.0100.0 ± 0.02.2 ± 0.02.0 ± 0.03.4 ± 0.04.5 ± 0.1
1.9 ± 0.098.7 ± 0.23.8 ± 0.13.6 ± 0.05.8 ± 0.17.5 ± 0.2
3.2 ± 0.063.9 ± 0.46.3 ± 0.05.9 ± 0.09.3 ± 0.110.7 ± 0.1
3.4 ± 0.034.4 ± 0.26.7 ± 0.06.4 ± 0.09.8 ± 0.111.2 ± 0.1
3.5 ± 0.017.9 ± 0.17.0 ± 0.06.6 ± 0.010.1 ± 0.111.4 ± 0.1
3.7 ± 0.07.3 ± 0.07.2 ± 0.06.8 ± 0.010.3 ± 0.011.5 ± 0.1
3.8 ± 0.03.6 ± 0.07.2 ± 0.06.9 ± 0.010.4 ± 0.011.6 ± 0.1

Interpretation

  • Low overhead (<10%): System operating efficiently, minimal contention
  • Medium overhead (10-30%): Moderate contention, acceptable performance
  • High overhead (30-50%): High contention, commit protocol becoming significant
  • Very high overhead (>50%): Commit protocol dominates, system saturated

Values shown as mean ± standard deviation across multiple seeds. At saturation, overhead can exceed 50%, meaning more time is spent retrying commits than executing transactions!