zkevm-circuits
zkevm-circuits copied to clipboard
Circuits for zkEVM
Check out the work in progress specification to learn how it works.
Getting started
To run the same tests as the CI, please use: make test-all.
Running benchmarks
There are currently several benchmarks to run in the workspace in regards to the circuits.
All use the DEGREE env var to specify the degree of the K parameter that you want
to use for your circuit in the bench process.
- Keccak Circuit prover benches. ->
DEGREE=16 make packed_multi_keccak_bench - EVM Circuit prover benches. ->
DEGREE=18 make evm_bench. - State Circuit prover benches. ->
DEGREE=18 make state_bench - MPT Circuit prover benches. ->
DEGREE=15 make mpt_bench
You can also run all benchmarks by running: make circuit_benches DEGREE=18.
GH Actions Benchmark Results
Circuit Benchmark Results are accessible here: https://grafana.zkevm-testnet.org/d/vofy8DAVz/circuit-benchmarks?orgId=1
- circuit_benchmarks panel displays:
- overall test result
- timers and system statistics
- url for downloading prover log and sys stat files
- clickable sysstats_url element that loads the memory and cpu utilization profiles for the given test