consenzero-bench
is the benchmark of Ethereum consensus' state transition functions by using ream within RISC Zero zkVM.
First, download the required test data:
cd host
make download
Then, run benchmarks for specific operations:
Run a specific block operation:
make run-block-<OPERATION_NAME>
Available block operations:
- attestation
- attester_slashing
- block_header
- bls_to_execution_change
- deposit
- execution_payload (not implemented)
- proposer_slashing
- sync_aggregate
- voluntary_exit
- withdrawals (incompatible with BeaconState workaround) Run all block operations:
make block-all
Run a specific epoch processing operation:
make run-epoch-<OPERATION_NAME>
Available epoch operations:
- justification_and_finalization
- inactivity_updates
- rewards_and_penalties
- registry_updates
- slashings
- eth1_data_reset
- pending_deposits
- pending_consolidations
- effective_balance_updates
- slashings_reset
- randao_mixes_reset
- historical_summaries_update
- participation_flag_updates
Run all epoch operations:
make epoch-all
Run all operations that can be executed (excludes execution_payload and withdrawals from block operations):
make all
- Logs are saved in
./host/logs/
- Benchmark summaries (including cycle counts) are generated in
./host/summaries/