=======================================================
BLOCK-STM END-TO-END BLOCK-PRODUCTION THROUGHPUT
  machine threads available : 16
  txns per batch            : 20000
  simulated EVM cost per tx : 80 keccak-rounds
  timing                    : median of 7 runs (ms)
  pipeline                  : exec (parallel) + commit (serial) + state-root (serial)
  serial-equivalence        : par state == seq state AND keccak roots identical, EVERY run
=======================================================

### 0% designed conflict (disjoint accounts, 64 contracts spread)
  committed state keys      : 49637
  sequential  exec 663.15 ms | root 9.69 ms | END-TO-END 672.84 ms | root-share 1.4%
  sequential  end-to-end TPS: 29725
  W    |     exec   commit    root    e2e_ms |   execSpd    e2eSpd |     TPS  abort% |  root%e2e |  equiv
  1    |   705.51     9.01   12.52    727.04 |     0.94x     0.93x |   27509    0.0% |      3.0% |   PASS
  2    |   354.89     9.56   11.41    375.85 |     1.87x     1.79x |   53212    0.0% |      5.6% |   PASS
  4    |   184.02     9.72   12.37    206.11 |     3.60x     3.26x |   97037    0.1% |     10.7% |   PASS
  8    |    97.99     8.52    8.31    114.82 |     6.77x     5.86x |  174191    0.1% |     14.7% |   PASS
  16   |    64.23     8.08    8.51     80.83 |    10.32x     8.32x |  247444    0.3% |     20.5% |   PASS
  Amdahl: serial tail (commit+root) = 15.33 ms; end-to-end speedup ceiling @16w = 8.27x, @infinite cores = 43.88x

### 10% designed conflict (100 hot accts, 16 contracts)
  committed state keys      : 18342
  sequential  exec 669.73 ms | root 2.98 ms | END-TO-END 672.71 ms | root-share 0.4%
  sequential  end-to-end TPS: 29731
  W    |     exec   commit    root    e2e_ms |   execSpd    e2eSpd |     TPS  abort% |  root%e2e |  equiv
  1    |   699.73     5.15    4.77    709.65 |     0.96x     0.95x |   28183    0.0% |      1.4% |   PASS
  2    |   366.73     5.31    4.38    376.42 |     1.83x     1.79x |   53133    0.1% |      2.6% |   PASS
  4    |   187.09     5.15    3.88    196.13 |     3.58x     3.43x |  101975    0.3% |      4.6% |   PASS
  8    |    96.64     5.06    4.29    105.99 |     6.93x     6.35x |  188699    0.7% |      8.8% |   PASS
  16   |    66.57     4.37    3.20     74.14 |    10.06x     9.07x |  269750    1.2% |     10.2% |   PASS
  Amdahl: serial tail (commit+root) = 6.68 ms; end-to-end speedup ceiling @16w = 9.64x, @infinite cores = 100.71x

### 50% designed conflict (20 hot accts, 4 contracts)
  committed state keys      : 9006
  sequential  exec 698.55 ms | root 1.42 ms | END-TO-END 699.97 ms | root-share 0.2%
  sequential  end-to-end TPS: 28573
  W    |     exec   commit    root    e2e_ms |   execSpd    e2eSpd |     TPS  abort% |  root%e2e |  equiv
  1    |   712.46     2.63    1.96    717.06 |     0.98x     0.98x |   27892    0.0% |      0.6% |   PASS
  2    |   367.61     2.46    2.01    372.07 |     1.90x     1.88x |   53753    2.1% |      1.2% |   PASS
  4    |   195.00     2.58    1.98    199.56 |     3.58x     3.51x |  100222    5.7% |      2.3% |   PASS
  8    |   113.28     2.50    1.72    117.51 |     6.17x     5.96x |  170202   10.7% |      3.6% |   PASS
  16   |    74.60     2.35    1.59     78.53 |     9.36x     8.91x |  254686   16.6% |      5.0% |   PASS
  Amdahl: serial tail (commit+root) = 4.15 ms; end-to-end speedup ceiling @16w = 8.73x, @infinite cores = 168.85x

### PATHOLOGICAL ~100% (single hot slot, no parallelism)
  committed state keys      : 1996
  sequential  exec 664.35 ms | root 0.30 ms | END-TO-END 664.65 ms | root-share 0.0%
  sequential  end-to-end TPS: 30091
  W    |     exec   commit    root    e2e_ms |   execSpd    e2eSpd |     TPS  abort% |  root%e2e |  equiv
  1    |   682.90     0.06    0.31    683.28 |     0.97x     0.97x |   29271    0.0% |      0.1% |   PASS
  2    |   378.02     0.04    0.37    378.42 |     1.76x     1.76x |   52851    6.5% |      0.1% |   PASS
  4    |   213.51     0.04    0.38    213.93 |     3.11x     3.11x |   93488   14.5% |      0.2% |   PASS
  8    |   133.61     0.04    0.30    133.95 |     4.97x     4.96x |  149314   21.2% |      0.2% |   PASS
  16   |   135.50     0.04    0.40    135.94 |     4.90x     4.89x |  147125   25.0% |      0.3% |   PASS
  Amdahl: serial tail (commit+root) = 0.56 ms; end-to-end speedup ceiling @16w = 5.37x, @infinite cores = 1183.26x

=======================================================
SERIAL-EQUIVALENCE: 140 checks, 0 mismatches
  RESULT: PASS -- every parallel run committed the exact sequential state + root
=======================================================

HONEST READING:
  - execSpd is the EXECUTION-PHASE speedup (comparable to the documented ~9.4x).
  - e2eSpd is the END-TO-END block-production speedup. It is LOWER, because the
    commit (state materialization) and state-root (keccak) phases are serial and
    do not shrink with more workers -- the Amdahl serial tail.
  - TPS is the real end-to-end transactions/second of THIS pipeline on THIS box
    (shared-vCPU cloud). It is a measured rollup-batch number, NOT the 273k TPS
    documented-conditions marketing ceiling and does not reach or imply it.
  - Under total conflict (pathological) there is no parallelism; end-to-end can be
    <= 1x. That is the correct, honest behavior of Block-STM.
