-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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
Invariant Benchmarks #4079
Invariant Benchmarks #4079
Conversation
Codecov Report
@@ Coverage Diff @@
## develop #4079 +/- ##
===========================================
+ Coverage 59.94% 59.96% +0.01%
===========================================
Files 211 212 +1
Lines 15111 15123 +12
===========================================
+ Hits 9058 9068 +10
- Misses 5433 5435 +2
Partials 620 620 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Job very well done.
My only question is: is this really worth a mention in the changelog? Either way, surely not a blocker.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK - thanks @alexanderbez
A few questions:
- Do the benchmarks change much with seed choice (instead of
57
)? - Have we tried benchmarking simulate-from-genesis with a mainnet export?
The only benchmarks that really change much between seeds are
Yes, as of block 377715:
Note: I increased the |
Implement
BenchmarkInvariants
which benchmarks each respective invariant that is registered with the crisis keeper against a simulated gaia app.Note: The benchmark results for most invariants is extremely negligible with few blocks (< 1000). However, some invariants, namely
distr/can-withdraw
andstaking/delegator-shares
can take relatively significant time (>3s). The benchmark values for these two invariants can greatly differ depending on simulation parameters (e.g. seed, number of blocks and block size).Perhaps we should also attempt to simulate state that is more representative of what we can expect to see on mainnet (100 validators, significant amount of bonds and redelegations, many accounts, etc...)
e.g.
closes: #3914
cc @ValarDragon @cwgoes @rigelrozanski
Targeted PR against correct branch (see CONTRIBUTING.md)
Linked to github-issue with discussion and accepted design OR link to spec that describes this work.
Wrote tests
Updated relevant documentation (
docs/
)Added a relevant changelog entry:
sdkch add [section] [stanza] [message]
rereviewed
Files changed
in the github PR explorerFor Admin Use: