-
Notifications
You must be signed in to change notification settings - Fork 838
GetValidators e2e benchmarks #1551
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
GetValidators e2e benchmarks #1551
Conversation
…hub.com:ava-labs/avalanchego into modded_platformVM_for_validators_set_benchmarks
|
@aaronbuchwald @StephenButtolph the plot of a bunch of GetValidatorsSet calls on a mainnet node, showing diff depths (x-axis) and their measured durations (y-axis, in microseconds). |
2673915 to
b6cddd3
Compare
|
Note: this does still hit one cache here: https://github.com/ava-labs/avalanchego/blob/modded_platformVM_for_validators_set_benchmarks/vms/platformvm/state/state.go#L981, but the size is only 2048, so performing an e2e measurement that goes well past that should make its impact minimal. Since we're just using this to test, I'll go ahead and close this PR. |
- add missing fee config block for `params.ChainConfig` `Description` method and add test - add missing fee config block for `params.ChainConfig` `Verify` method and add test - add test for `params.SetEthUpgrades` - add comment on the usage of `params.SetEthUpgrades` in genesis





Why this should be merged
It shouldn't.This PR mods avalanchego to try and benchmark the average cost of
GetValidatorSetcalls.How this works
Just drop
GetValidatorsSetcaches to hit disk at every request.How this was tested
GetValidatorsis "naturally" called by proposervm verification (see here) for heights down to 256 below last accepted block height (see here). In order to get measurements for deeper heights, we can use a script to hit deeper heights like warp_measures_script.zip, which hitsplatform.GetValidatorsAtAPI.curl -g '<Node_IP>:9090/api/v1/query_range?query=rate(avalanche_P_vm_validator_sets_height_diff_sum[30s])&start=<Measures_Start_Time>&end=<Measures_End_Time>&step=30s'