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

chainbuilder: Accelerate #3998

Open
Wondertan opened this issue Oct 22, 2024 · 0 comments
Open

chainbuilder: Accelerate #3998

Wondertan opened this issue Oct 22, 2024 · 0 comments
Labels
tools item is related to tooling WS: Maintenance 🔧 includes bugs, refactors, flakes, and tech debt etc

Comments

@Wondertan
Copy link
Member

Context

For the node to test 8mb blocks I had to generate the chain using chainbuilder. It took ~2 weeks to generate 400k of blocks. A few days before chainbuilder finished, I looked at htop and saw the process was running for 12dxxx(I didn't save a screenshot unfortunately and its impossible to know how much the process took after it finishes)

Problem

This is sorta manageable for 8mb blocks, but for further sizes its gonna grow and it feels like tendency is quadratic.

Observing the htop I could see It only saturates like 20% of CPU for a second or two, then silence for sometime and back to 20%. This cycle repeats over and over. Fundamentally, there shouldn't be any issues with saturating all the CPU to progress chain generation, and this may suggest that some operations are sequential, while could be paralellized.

Ideas

  • If it turns out that the App's storage for blocks is a bottleneck here, we may consider migrating the tool to write direclty to the node storage, essentially making chainbuilder produced artifacts consumable by a BN.
@evan-forbes evan-forbes added tools item is related to tooling WS: Maintenance 🔧 includes bugs, refactors, flakes, and tech debt etc and removed needs:triage external labels Oct 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tools item is related to tooling WS: Maintenance 🔧 includes bugs, refactors, flakes, and tech debt etc
Projects
None yet
Development

No branches or pull requests

2 participants