0xPolygonZero / zk_evm

Apache License 2.0
85 stars 38 forks source link

Conditionally disable KERNEL logs #609

Open Nashtare opened 2 months ago

Nashtare commented 2 months ago

We should have the ability to turn on/off KERNEL logs, so that we can easily go through deeper logging levels for evm_arithmetization crate (DEBUG / TRACE) without bloating log files / proving time.

This would be useful for benchmarking the different proving stages (LDE / Merkle Trees / constraint poly / shrinking step). Thanks @sai-deng for pointing it out.

sergerad commented 2 weeks ago

@Nashtare As suggested, I have verified that using this format for RUST_LOG provides us with the granularity required by this issue:

export RUST_LOG=info,starky=info,plonky2=debug

Example output excerpt:

2024-11-01T02:15:52.108097Z  INFO zero::prover_state: failed to load preprocessed circuits from disk. generating circuits...
2024-11-01T02:15:52.233184Z DEBUG plonky2::plonk::circuit_builder: Degree before blinding & padding: 13038    
2024-11-01T02:15:52.233564Z DEBUG plonky2::plonk::circuit_builder: Degree after blinding & padding: 16384

And for comparison, example output excerpt for export RUST_LOG=debug,starky=info,plonky2=info

2024-11-01T02:13:18.114299Z DEBUG evm_arithmetization::cpu::kernel::assembler: Global label: logs_bloom => 64153    
2024-11-01T02:13:18.115486Z  INFO zero::prover_state: initializing prover state..