-
-
Notifications
You must be signed in to change notification settings - Fork 428
feat: consume new ssz batch hash branch #6939
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
Closed
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Contributor
Author
Contributor
Author
dfeecf5 to
24d575e
Compare
Contributor
Author
|
a side effect from this branch is "Process block commit step avg time" is usually higher than |
* fix: sync listValidator.ts from ssz * fix: reuse HashComputationGroup in some flows * feat: use same HCGroup for epoch transition * fix: only batch hash balances of state in epoch transition
8e09d4c to
784a9ba
Compare
Closed
* fix: compute validator root in ListValidatorTreeViewDU * fix: compute state root in batch in stateTransition() * fix: correct process_block metric * fix: no batch hash in beacon-node block transition, do it in state-transition * chore: add comment
* fix: remove get*Iter() apis from ssz * feat: decompose validators at epoch transition * fix: improve beforeProcessEpoch() using state.validators.forEachValue() * fix: only populate isCompoundingValidatorArr if electra * fix: use forEach() to improve processEth1Data * fix: use forEach() for getEffectiveBalanceIncrementsZeroInactive() * chore: minimal change of beforeProcessEpoch() compared to te/batch_hash_tree_root
* feat: implement balances tree cache * fix: set balancesTreeCache when clone EpochCache
Contributor
Author
|
closing in favor of #7171 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.








Motivation
hash_tree_roottime in lodestar, especially at epoch transition timeDescription
te/batch_hash_tree_rootssz branch, the critical update there is usinghashtreeand minimal memory allocation to compute tree rootListValidatorTreeViewDUfrom the ssz branch, the main thing is to compute validators' roots in batch duringcommit()phasehashTreeRoot()is improved in 2 ways:HashComputation[]in batchpart of ChainSafe/ssz#355
closes #6598
TODOs
hashTreeRoot()inside state transition causes more memory and gc? right now we do thehashTreeRoot()in beacon-node instead. Will retry when we have a published version because right now I only consume local ssz branch on test nodes. Update: resolved in fix: batch hash tree root in state transition #7032hashTreeRoot()is computed, if we call some read-only operations, likestate.balances.lengthorstate.validators.length, it will rebind and recompute the tree root again. Need to find a way to avoid that, see ViewDU container rebinds node with read-only operations ssz#379