Currently, Odometer supports block gas limit benchmarks, which measure how efficiently clients process blocks with different gas limits. These benchmarks:
- Measure client performance in terms of gas processed per second
- Test various block gas limits (from 30M to 160M)
- Compare client performance as block gas limits increase
- Use standardized Engine API requests to ensure fair comparison
- Provide insights into block execution scaling characteristics
The block gas limit benchmarks execute through Engine API calls that simulate block production and execution at different gas limits, helping identify performance bottlenecks and optimization opportunities as block sizes grow.
To add a new benchmark type:
- Define the benchmark methodology and metrics
- Create JSON test definition files in a new directory under
tests/ - Implement the necessary measurement logic in the Rust codebase
- Add appropriate command-line interface options
- Document the benchmark specifics in this file
For detailed instructions on extending Odometer with new benchmarks, see the Extending Odometer guide.