Engineering · Performance · Methodology

Benchmarks, and how to reproduce them

Every performance figure AERE publishes, each carrying an explicit scope label, its raw artifact, and a command you can run yourself. The headline throughput number is a design ceiling, not a mainnet measurement, and this page says so plainly.

Read the scope label before the number

A performance figure is only honest when its scope is attached to it. AERE uses four labels throughout this page. The strong results are real; the boundaries are real too.

Live mainnet

Measured or verifiable on chain 2800 right now, over the public RPC or the block explorer.

Isolated benchmark

Measured on a throwaway machine with a reproducible harness. Not mainnet, not a network throughput number.

Scratch fork

Measured on an isolated fork of the client (a separate chain ID), staged for a supervised mainnet activation, not active on 2800 today.

Design ceiling

A theoretical maximum implied by the configuration under ideal conditions. Never observed, a roadmap target, not a rate the live network delivers.


1. Throughput: the 273,000 TPS figure

Design ceiling

The 273,000 transactions-per-second figure that appears across AERE materials is a design ceiling derived from block-space arithmetic under ideal conditions. It has never been a measured result on mainnet chain 2800, and it is not asserted as one here. Throughput and finality are separate axes: the sub-second finality claim in section 3 follows mechanically from QBFT plus the block period, while this ceiling is a capacity statement about block space.

What kind of number it is (an illustrative decomposition)

Block-space throughput obeys a simple identity:

TPS  =  ( gas available per block  /  gas per transaction )  /  block time

A minimal native transfer costs the protocol floor of 21,000 gas, and the block period is 0.5 seconds. Sustaining 273,000 such transfers every second therefore implies processing on the order of:

21,000
gas / minimal transfer
protocol floor
0.5 s
block period
live, section 3
~2.87 B
gas / block implied
273k × 21k × 0.5s
~5.7 B
gas / second implied
the real bottleneck

A single sequential Hyperledger Besu node processes far less gas per second than that today. The genesis gas limit is configured high enough not to be the binding constraint, so the true limit is the client's execution throughput, not a configured cap. That is precisely why 273,000 is a ceiling the multi-layer roadmap is built to approach (parallel execution, a native order-book precompile), not a rate the live network delivers now.

Realized mainnet throughput today, live

The honest counterpoint to the ceiling is what the chain actually carries. AERE is early and real usage is thin, so realized throughput is a tiny fraction of the ceiling.

·
Realized TPS (recent blocks)
sampling live
·
Avg gas used / block
idle chain, near zero
273,000
Design ceiling (for scale)
not observed
Live sample on 2026-07-18 across 200 consecutive blocks: 2 transactions over a 103-second span, about 0.02 TPS, at an average of 336 gas used per block. The readout above re-samples the last 40 blocks from your browser against the public RPC, so it moves with real load.

Provenance. Framing quoted from the AERE whitepaper (throughput chapter) and docs/PROVEN-RESULTS-2026-07-11.md. Re-run script: none, and that is the point. No benchmark in this repository reproduces 273,000 TPS, because it is not a measured figure. The realized number above is reproducible by anyone sampling eth_getBlockByNumber over the public RPC.
Sources: whitepaper (throughput framing) · PROVEN-RESULTS-2026-07-11.md · block explorer (live blocks)


2. Parallel execution: Block-STM 8.6x to 9.3x

Isolated benchmark

AERE ships a real, from-scratch Block-STM optimistic-concurrency parallel executor in Rust (aere-block-stm, zero external dependencies). It executes a transaction batch across many cores and commits a keccak256 state root that is bit-identical to sequential execution. That serial-equivalence is the property that makes the parallel root a valid commitment, and it is proven over 6,000 randomized adversarial comparisons with zero mismatches (6 workload profiles, 200 batches each, at 1, 2, 4, 8, and 16 threads), including fully-conflicting adversarial cases.

Honest boundary. AERE's Layer 1 (Besu) executes sequentially on mainnet today; nothing here changes that. These are single-machine microbenchmarks of the executor, not a TPS or network-throughput claim. The executor is wired into AERE's rollup sequencer, where batch execution is the parallelizable workload; base-layer parallelism remains a testnet demonstration, not mainnet-active.

Execution-phase speedup versus single-threaded sequential (16-core reference box, 20,000-tx batches)

Workload profile 2 thr4 thr8 thr16 thr
Low conflict (~2% hot-touch)1.9x3.6x6.2x8.6x
Medium conflict (~15% hot-touch)1.9x3.7x6.6x9.3x
High conflict (~80% hot-touch)1.7x3.1x5.0x4.6x
Pathological (every tx, same slot)0.9x0.9x0.8x0.73x

The pathological worst case is stated openly: when every transaction increments the same slot there is no parallelism to exploit, so Block-STM correctly serializes and runs slightly slower than sequential (about 0.73x) because it pays for aborted speculation. No correct parallel executor can beat sequential when there is nothing to parallelize.

End-to-end pipeline (execution plus serial commit plus state root), 16-core reference box

A block is not finished when execution finishes; it is finished when state is committed and a root is produced, and those tail phases are serial. Measured end-to-end at a simulated 80-gas-per-transaction weight, median of 7 runs:

Designed conflict End-to-end speedup @16 End-to-end TPS @16 Abort %
0%8.32x247,4440.3%
10%9.07x269,7501.2%
50%8.91x254,68616.6%
~100% (pathological floor)4.89x147,12525.0%
The measured ~247k to 270k TPS above lands coincidentally near the 273k design ceiling and must not be read as reaching or validating it. Two independent reasons. First, this TPS is entirely a function of the assumed per-transaction cost: the same harness reports about 416k to 502k TPS at a lighter 20-gas weight and about 115k to 143k TPS at a heavier 200-gas weight. Second, this is the rollup executor on a bounded balance-and-slot state model with a light keccak commit, not the full EVM and not the L1. The invariant deliverable is the speedup curve and its Amdahl bound, not the absolute TPS.

Independent reproduction on this page's build machine

The figures above were taken on a 16-physical-core reference box. Re-running the same harness fresh on an 8-physical-core Intel i7-10870H (16 logical threads) reproduces the correctness invariant exactly and shows positive scaling capped by the smaller core count:

7 / 7
cargo tests pass
serial-equivalence
6,000 / 0
comparisons / mismatches
correctness harness
~5.2x
medium-conflict @16 thr
8 physical cores
140 / 0
end-to-end checks / mismatch
state + root identical

The absolute speedup is lower than the reference box's 8.6x to 9.3x precisely because this machine has 8 physical cores rather than 16, which is the honest and expected result. What reproduces exactly, independent of hardware, is that the parallel result equals the sequential result on every single run.

Reproduce it yourself:

cd aerenew/parallel-executor
cargo test --release            # 7 serial-equivalence tests
cargo run --release -- harness   # 6,000-comparison serializability gate
cargo run --release -- bench     # execution-phase speedup curve
cargo run --release -- endtoend  # end-to-end pipeline, TPS + Amdahl bound

Provenance. Speedup and 6,000-rep figures from docs/PROVEN-RESULTS-2026-07-11.md section 4 and the whitepaper parallel-execution chapter. End-to-end table and gas-sweep from parallel-executor/BLOCKSTM-ENDTOEND-THROUGHPUT-2026-07-13.md with raw logs in endtoend-logs-2026-07-13/. Fresh-run numbers were produced on the machine that published this page.
Sources: parallel-executor (source and harness) · end-to-end throughput report · spec-parallel-execution.md · AereBlockSTMRegistry (live hint registry)


3. Deterministic finality: 0.5 seconds

Live mainnet

AERE runs Hyperledger Besu with QBFT, a deterministic committee-based consensus. A block is final the moment a super-majority of the 7 Foundation-operated validators sign it, with no probabilistic confirmation window and no reorganizations. The block period was cut from one second to 0.5 seconds mid-chain at block 2,138,451. Consensus signing is classical secp256k1 ECDSA, not post-quantum.

Live from the public RPC

·
Latest block
chain 2800
·
Avg block interval
last 1,000 blocks
·
Validators
quorum 5 of 7, f=2
·
Gas price
verified on-chain

An independent read-only sweep measured the block interval at about 0.506 seconds; this page's live sample typically reads about 0.517 seconds. Both are consistent with the 0.5-second target and its small real-world jitter.

Provenance. Block interval, validator count, and gas price are read live in your browser from https://rpc.aere.network via eth_getBlockByNumber, qbft_getValidatorsByBlockNumber, and eth_gasPrice. The 0.506-second sweep figure is from docs/PROVEN-RESULTS-2026-07-11.md section 7. Re-run script: the widget above is the reproduce path; the same calls run from any JSON-RPC client.
Sources: live network status · block explorer · PROVEN-RESULTS-2026-07-11.md


4. Post-quantum precompile gas costs

Live mainnet band Gas measured on scratch fork

Five native NIST post-quantum verifier precompiles are live on mainnet in the reserved address band, activated at block 9,189,161. They wrap the audited Bouncy Castle post-quantum verifiers already on the client classpath, introducing zero new dependencies and zero hand-rolled cryptography, and each is validated against the official NIST known-answer and ACVP vectors in both directions. The gas figures below were measured with full verify-and-record transactions on an isolated scratch fork (chain 28099), and are labelled accordingly; the precompiles themselves are live on 2800.

Scheme Precompile Verify-and-record gas % of 16,777,216 tx cap
SHAKE256 (FIPS 202)0x0AE521,4700.13%
Falcon-5120x0AE186,3360.51%
Falcon-10240x0AE2145,4960.87%
ML-DSA-44 (FIPS 204)0x0AE3351,0502.09%
SLH-DSA-SHA2-128s (FIPS 205)0x0AE4558,2763.33%
Why this matters: Falcon-1024 and ML-DSA-44 cost roughly 21.7 million and 52.9 million gas respectively in pure Solidity, which exceeds the per-transaction gas cap, so on mainnet they are verifiable today only as read-only eth_call views. The precompiles move both schemes to record-on-chain with wide margin. The precompile gas schedule is a scratch-fork measurement staged for a supervised, audited mainnet fork activation; it is not a promise that a recording transaction against these two schemes lands within the cap on 2800 today.

Provenance. Gas figures and vector counts from docs/PROVEN-RESULTS-2026-07-11.md section 5 (isolated scratch fork chain 28099) and research/aip-draft-pqc-precompiles.md. Precompile activation block 9,189,161 is verifiable on the explorer. The application-layer pure-Solidity verifiers behind these schemes are live and address-listed in the whitepaper. Re-run script: the NIST vector suite is committed; reproducing the on-chain gas requires the fork binary, which is not published, so those numbers are cited from the artifact rather than runnable here.
Sources: PROVEN-RESULTS-2026-07-11.md · post-quantum security overview · activation block 9,189,161


The honesty baseline that applies to everything above

AERE runs 7 QBFT validators under a single Foundation operator on one execution client (Hyperledger Besu). Consensus on mainnet is classical secp256k1 QBFT and is not post-quantum. The AERE-authored contracts and client changes have not had an external security audit. Real usage is thin. Every figure on this page sits on that foundation and is scoped against it.

  • The 273,000 TPS figure is a design ceiling. It has never been measured on mainnet and no benchmark here reproduces it.
  • The Block-STM speedups are single-machine microbenchmarks of a real executor. The L1 base layer still executes sequentially.
  • The 0.5-second finality claim is live and verifiable, and it is about latency to irreversibility, not throughput.
  • The post-quantum precompile gas costs are scratch-fork measurements; the precompiles are live on mainnet, the gas schedule is staged for a supervised, audited activation.