Introduction
Costs to prove Ethereum blocks are down only. Competing zkVMs have drastically improved their performance over the past few years, with many predicting that proving Ethereum blocks in real time (under 12 seconds) will become a practical reality by 2025. However, if Ethereum is to rely on provers in the not-so-distant future, rigorous research is needed to determine whether certain EVM instructions (i.e., opcodes and precompiles) are particularly slow or computationally intensive to prove.
In this post, we use a data-driven approach to identify "prover killer" blocks with particularly long proving times, and then analyze the opcode-level gas consumption patterns to pinpoint the specific opcodes that contribute most to these performance bottlenecks.
Methods
Data Acquisition and Preprocessing
Proofs and associated metadata—including clusters, AWS instance pricing, and zkVM teams—were extracted from Supabase ethproofs.org data. This data was then used to calculate key derived metrics such as proving time and proving costs for each block.
Opcode execution traces were obtained via Ethereum's debug_traceTransaction RPC call using Xatu. These traces provided the sequence of opcodes executed along with their gas consumption, allowing us to compute the total real gas used and the execution frequency for each opcode per block.