mirror of
https://github.com/logos-blockchain/logos-execution-zone.git
synced 2026-05-22 16:10:30 +00:00
BREAKING CHANGE: bench JSON renames per-step / per-scenario timing fields from *_ms (float milliseconds) to *_s (float seconds). Renames: submit_ms → submit_s, inclusion_ms → inclusion_s, wallet_sync_ms → wallet_sync_s, total_ms → total_s, setup_ms → setup_s, bedrock_finality_ms → bedrock_finality_s, total_wall_seconds → total_wall_s. measure_bedrock_finality timeout floor also shifts slightly: on timeout the field is now ~60.000s rather than "first poll tick past 60s".
34 lines
1.4 KiB
Markdown
34 lines
1.4 KiB
Markdown
# e2e_bench
|
|
|
|
End-to-end LEZ scenarios driven through the wallet against an in-process sequencer + indexer wired to an external Bedrock node. Times each step (submit, inclusion, wallet sync) and records borsh sizes for every block produced, split into per-tx-variant counts.
|
|
|
|
## Run
|
|
|
|
Required env vars (no defaults):
|
|
|
|
```sh
|
|
export LEZ_BEDROCK_BIN=/path/to/logos-blockchain/target/release/logos-blockchain-node
|
|
export LEZ_BEDROCK_CONFIG_DIR=/path/to/bedrock/configs
|
|
# optional: LEZ_BEDROCK_PORT (default 18080)
|
|
```
|
|
|
|
The config dir must contain `node-config.yaml` and a `deployment-settings.yaml` template with the literal string `PLACEHOLDER_CHAIN_START_TIME` (rewritten per launch).
|
|
|
|
```sh
|
|
# All scenarios, dev-mode proving (fast)
|
|
RISC0_DEV_MODE=1 cargo run --release -p e2e_bench -- --scenario all
|
|
|
|
# One scenario, real proving (slow)
|
|
cargo run --release -p e2e_bench -- --scenario amm
|
|
```
|
|
|
|
Scenarios: `token`, `amm`, `fanout`, `private`, `parallel`, `all`.
|
|
|
|
## What you'll see
|
|
|
|
Per scenario: a step table (`submit_s`, `inclusion_s`, `sync_s`, `total_s`) and a size summary covering every block captured during the scenario (block_bytes total/mean/min/max; per-tx-variant sizes for public, PPE, and program-deployment transactions).
|
|
|
|
The fanout, parallel, and private scenarios are the most representative for L1-payload-size measurements since they put multiple txs per block.
|
|
|
|
JSON output is written to `target/e2e_bench.json`.
|