Expand proof benchmarks
- Dominant language
- Python
- Stars
- 19
- Forks
- 15
- PR merge metrics
- No merged PRs in 30d
Description
## What was wrong?
The benchmarking suite introduced in #147 doesn't test the full performance critical proof API
## How can it be fixed?
The benchmark suite should be expanded to include:
1. Proof merging:
- For a few different sized pieces of content (1kb, 2kb, 4kb, 10kb, 50kb, 100kb), split the proof up into partials of around 700kb and measure the time to merge them all together.
- Same test as above, but instead measure the time it takes to merge as combined proof grows. Does the merge speed change as the combined proof grows in size.
2. Computation of the hash-tree-root
- For a few different sized pieces of content (1kb, 2kb, 4kb, 10kb, 50kb, 100kb) measure the time it takes to compute the `hash_tree_root`
- Take partial proofs of the above content and measure `hash_tree_root` computation time.
3. Real world examples
- From recent mainnet blocks extract a sample of ~1000 (headers, block-bodies, transactions, receipts) in their canonical RLP encoded format. Measure the cost of computing full proofs and partials for these data structures.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the benchmarking suite introduced in issue #147 and read its existing proof benchmarks. Add measurements for proof merging, hash_tree_root computation, and canonical RLP-encoded mainnet headers, block bodies, transactions, and receipts, covering the sizes and partial proofs listed here; done means the expanded benchmark results are recorded for comparison.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100