evstack / evstack/ev-reth

optimization: Explore reducing number of transaction list iterations

Open
#31 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
8
Forks
9
Avg merge
2d 13h
Merged PRs (30d)
6

Description

https://github.com/evstack/ev-node/blob/04637e6ee86b8a9f22440322b77e7775ce2d8dab/execution/evm/execution.go#L134-L142

was referring this iteration, we go over the list of txs in `ev-node`. If we just do all these checks during the initial iteration, it helps reduce another iteration.

Albeit, I think this would only be relevant if we're in the 10^6 range of txs per block which I don't think we're at yet.

Assuming a program can do a 10^9 ops/second, which is 10^6 ops/millisecond. If we're targeting 50 ms block times, that's 5*10^7 ops/millisecond. So approximately, reducing the multiple iterations only start translating to performance gain at 10^6 tx range

_Originally posted by @Manav-Aggarwal in https://github.com/evstack/ev-reth/pull/29#discussion_r2251387435_

Contributor guide

Open the contributing guide

Research direction

Start with execution/evm/execution.go at lines 134-142 and trace the initial transaction-list iteration and the later checks described in the issue. Determine whether the checks can be combined without changing behavior, then verify that transaction processing still produces the same results and that the extra iteration is removed.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
performance
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.