=======================================================
BLOCK-STM SPEEDUP BENCHMARK
  machine threads available: 16
  txns per batch           : 20000
  simulated EVM gas per tx : 80 keccak-rounds
  timing                   : median of 7 runs (ms)
=======================================================

### LOW-CONFLICT (50k accounts, few hot, ~2% hot-touch)
  parallel==sequential check: PASS
  sequential baseline       : 663.24 ms
  threads    time(ms)    speedup   vs-1thread     aborts     abort%
  1            725.04      0.91x        1.00x          0       0.0%
  2            380.42      1.74x        1.91x          3       0.0%
  4            204.86      3.24x        3.54x         13       0.1%
  8            116.83      5.68x        6.21x         36       0.2%
  16            79.90      8.30x        9.07x         61       0.3%

### MEDIUM-CONFLICT (5k accounts, ~15% hot-touch)
  parallel==sequential check: PASS
  sequential baseline       : 661.01 ms
  threads    time(ms)    speedup   vs-1thread     aborts     abort%
  1            705.12      0.94x        1.00x          0       0.0%
  2            363.28      1.82x        1.94x         37       0.2%
  4            189.85      3.48x        3.71x         90       0.4%
  8            107.00      6.18x        6.59x        198       1.0%
  16            68.74      9.62x       10.26x        423       2.1%

### HIGH-CONFLICT (single hot counter, ~80% hot-touch)
  parallel==sequential check: PASS
  sequential baseline       : 669.68 ms
  threads    time(ms)    speedup   vs-1thread     aborts     abort%
  1            694.53      0.96x        1.00x          0       0.0%
  2            385.06      1.74x        1.80x       1335       6.2%
  4            216.35      3.10x        3.21x       3425      13.5%
  8            134.93      4.96x        5.15x       6940      19.8%
  16           130.67      5.13x        5.32x      13314      23.8%

### PATHOLOGICAL (every tx increments the SAME slot: no parallelism)
  parallel==sequential check: PASS
  sequential baseline       : 676.98 ms
  threads    time(ms)    speedup   vs-1thread     aborts     abort%
  1            694.65      0.97x        1.00x          0       0.0%
  2            727.81      0.93x        0.95x      13410       1.6%
  4            783.44      0.86x        0.89x      22510       5.8%
  8            824.31      0.82x        0.84x      27712      12.4%
  16           884.96      0.76x        0.78x      30654      18.4%

Note: speedup is vs the sequential oracle. High-conflict batches
serialize on the hot slot and are expected to show little or no
speedup -- that is the honest, correct behavior of Block-STM.
