Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

core/state: update storage objects concurrently to one another #29696

Closed
wants to merge 1 commit into from

Conversation

karalabe
Copy link
Member

@karalabe karalabe commented May 2, 2024

This is the update counterpart to #29681. The observation here is that storage objects are independent of one another, so they can be updated independently and hashed.

Further, in this specific PR, the advantage of concurrently updating them is that if the contract trie nodes have not been fully prefetched, that the loads from disk can continue concurrently (yay SSD), instead of restricting it to sequential loads like the current code does.

Benchmarks pending.

@karalabe
Copy link
Member Author

karalabe commented May 3, 2024

I've ran a bunch of benchmarks. The performance gains are not really relevant enough to warrant with PR going in standalone. There are some more changes in the prefetcher bundled together, but if there's some meaningful gains, they might be due to the prefetcher more, so I'll just incorporate this in that work instead.

@karalabe karalabe closed this May 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant