Reduce event loop lag by signing aggregation selection proofs in batches #3
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.
Running a high number of validators on Gnosis Chain revealed that the event loop lag regularly increased to very high values. This in turn caused blocks to be submitted late, especially during the first slot of an epoch.
This PR changes the way aggregation duty selection proofs are signed, signing them in batches instead of all at the same time. A warning-level log message is also added to indicate issues with a high event loop lag.
Before:
After:
There's likely more room for improvement in terms of resource contention, but this fix does reduce the event loop lag to manageable levels even for a high number of validators.