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

Update validator monitor dashboards #4518

Merged
merged 2 commits into from Sep 7, 2022

Conversation

dapplion
Copy link
Contributor

@dapplion dapplion commented Sep 7, 2022

Motivation

Description

Update validator monitor dashboards accordingly. Same look, data from different metrics

@dapplion dapplion requested a review from a team as a code owner September 7, 2022 12:59
@github-actions
Copy link
Contributor

github-actions bot commented Sep 7, 2022

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: b7be350 Previous: daf2f28 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.7408 ms/op 2.5689 ms/op 0.68
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 63.756 us/op 78.963 us/op 0.81
BLS verify - blst-native 2.1724 ms/op 1.8590 ms/op 1.17
BLS verifyMultipleSignatures 3 - blst-native 4.5273 ms/op 3.8015 ms/op 1.19
BLS verifyMultipleSignatures 8 - blst-native 9.7039 ms/op 8.1872 ms/op 1.19
BLS verifyMultipleSignatures 32 - blst-native 35.274 ms/op 29.702 ms/op 1.19
BLS aggregatePubkeys 32 - blst-native 46.427 us/op 39.396 us/op 1.18
BLS aggregatePubkeys 128 - blst-native 182.40 us/op 152.99 us/op 1.19
getAttestationsForBlock 147.14 ms/op 166.43 ms/op 0.88
isKnown best case - 1 super set check 488.00 ns/op 429.00 ns/op 1.14
isKnown normal case - 2 super set checks 476.00 ns/op 428.00 ns/op 1.11
isKnown worse case - 16 super set checks 474.00 ns/op 414.00 ns/op 1.14
CheckpointStateCache - add get delete 8.7350 us/op 9.1570 us/op 0.95
validate gossip signedAggregateAndProof - struct 5.0454 ms/op 4.2884 ms/op 1.18
validate gossip attestation - struct 2.3818 ms/op 2.0437 ms/op 1.17
pickEth1Vote - no votes 2.0799 ms/op 2.1427 ms/op 0.97
pickEth1Vote - max votes 17.661 ms/op 19.544 ms/op 0.90
pickEth1Vote - Eth1Data hashTreeRoot value x2048 12.810 ms/op 11.140 ms/op 1.15
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 19.669 ms/op 21.038 ms/op 0.93
pickEth1Vote - Eth1Data fastSerialize value x2048 1.4984 ms/op 1.6452 ms/op 0.91
pickEth1Vote - Eth1Data fastSerialize tree x2048 11.857 ms/op 12.693 ms/op 0.93
bytes32 toHexString 934.00 ns/op 1.1070 us/op 0.84
bytes32 Buffer.toString(hex) 756.00 ns/op 735.00 ns/op 1.03
bytes32 Buffer.toString(hex) from Uint8Array 962.00 ns/op 992.00 ns/op 0.97
bytes32 Buffer.toString(hex) + 0x 775.00 ns/op 736.00 ns/op 1.05
Object access 1 prop 0.34800 ns/op 0.37000 ns/op 0.94
Map access 1 prop 0.30700 ns/op 0.29500 ns/op 1.04
Object get x1000 10.814 ns/op 18.922 ns/op 0.57
Map get x1000 0.92500 ns/op 0.96700 ns/op 0.96
Object set x1000 70.134 ns/op 125.55 ns/op 0.56
Map set x1000 46.739 ns/op 76.027 ns/op 0.61
Return object 10000 times 0.43230 ns/op 0.37630 ns/op 1.15
Throw Error 10000 times 6.1631 us/op 5.9470 us/op 1.04
enrSubnets - fastDeserialize 64 bits 2.6280 us/op 2.7170 us/op 0.97
enrSubnets - ssz BitVector 64 bits 756.00 ns/op 756.00 ns/op 1.00
enrSubnets - fastDeserialize 4 bits 374.00 ns/op 413.00 ns/op 0.91
enrSubnets - ssz BitVector 4 bits 756.00 ns/op 779.00 ns/op 0.97
prioritizePeers score -10:0 att 32-0.1 sync 2-0 81.627 us/op 98.010 us/op 0.83
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 123.20 us/op 125.67 us/op 0.98
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 202.19 us/op 226.42 us/op 0.89
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 335.02 us/op 478.55 us/op 0.70
prioritizePeers score 0:0 att 64-1 sync 4-1 412.73 us/op 460.97 us/op 0.90
RateTracker 1000000 limit, 1 obj count per request 182.92 ns/op 205.34 ns/op 0.89
RateTracker 1000000 limit, 2 obj count per request 130.71 ns/op 153.31 ns/op 0.85
RateTracker 1000000 limit, 4 obj count per request 107.24 ns/op 126.89 ns/op 0.85
RateTracker 1000000 limit, 8 obj count per request 94.183 ns/op 117.62 ns/op 0.80
RateTracker with prune 3.8630 us/op 4.7830 us/op 0.81
array of 16000 items push then shift 51.575 us/op 3.1655 us/op 16.29
LinkedList of 16000 items push then shift 12.189 ns/op 17.437 ns/op 0.70
array of 16000 items push then pop 199.36 ns/op 238.25 ns/op 0.84
LinkedList of 16000 items push then pop 11.985 ns/op 16.673 ns/op 0.72
array of 24000 items push then shift 77.351 us/op 4.5748 us/op 16.91
LinkedList of 24000 items push then shift 12.555 ns/op 20.692 ns/op 0.61
array of 24000 items push then pop 197.06 ns/op 212.96 ns/op 0.93
LinkedList of 24000 items push then pop 12.047 ns/op 17.985 ns/op 0.67
intersect bitArray bitLen 8 10.633 ns/op 11.410 ns/op 0.93
intersect array and set length 8 133.66 ns/op 173.06 ns/op 0.77
intersect bitArray bitLen 128 57.738 ns/op 71.963 ns/op 0.80
intersect array and set length 128 1.7635 us/op 2.3710 us/op 0.74
Buffer.concat 32 items 2.0210 ns/op 1.9500 ns/op 1.04
pass gossip attestations to forkchoice per slot 4.8730 ms/op 3.5188 ms/op 1.38
computeDeltas 3.4128 ms/op 3.0815 ms/op 1.11
computeProposerBoostScoreFromBalances 803.66 us/op 907.55 us/op 0.89
altair processAttestation - 250000 vs - 7PWei normalcase 3.3182 ms/op 3.7489 ms/op 0.89
altair processAttestation - 250000 vs - 7PWei worstcase 5.1456 ms/op 6.4555 ms/op 0.80
altair processAttestation - setStatus - 1/6 committees join 187.29 us/op 213.16 us/op 0.88
altair processAttestation - setStatus - 1/3 committees join 369.00 us/op 407.01 us/op 0.91
altair processAttestation - setStatus - 1/2 committees join 530.70 us/op 568.34 us/op 0.93
altair processAttestation - setStatus - 2/3 committees join 689.69 us/op 737.63 us/op 0.94
altair processAttestation - setStatus - 4/5 committees join 966.89 us/op 1.0188 ms/op 0.95
altair processAttestation - setStatus - 100% committees join 1.1659 ms/op 1.2081 ms/op 0.97
altair processBlock - 250000 vs - 7PWei normalcase 25.347 ms/op 28.457 ms/op 0.89
altair processBlock - 250000 vs - 7PWei normalcase hashState 39.143 ms/op 42.153 ms/op 0.93
altair processBlock - 250000 vs - 7PWei worstcase 75.418 ms/op 79.154 ms/op 0.95
altair processBlock - 250000 vs - 7PWei worstcase hashState 102.96 ms/op 107.49 ms/op 0.96
phase0 processBlock - 250000 vs - 7PWei normalcase 3.3146 ms/op 3.5428 ms/op 0.94
phase0 processBlock - 250000 vs - 7PWei worstcase 51.597 ms/op 46.805 ms/op 1.10
altair processEth1Data - 250000 vs - 7PWei normalcase 684.37 us/op 875.66 us/op 0.78
Tree 40 250000 create 676.11 ms/op 841.74 ms/op 0.80
Tree 40 250000 get(125000) 257.86 ns/op 291.73 ns/op 0.88
Tree 40 250000 set(125000) 2.1059 us/op 2.4992 us/op 0.84
Tree 40 250000 toArray() 27.348 ms/op 31.739 ms/op 0.86
Tree 40 250000 iterate all - toArray() + loop 27.169 ms/op 31.883 ms/op 0.85
Tree 40 250000 iterate all - get(i) 115.72 ms/op 110.26 ms/op 1.05
MutableVector 250000 create 12.606 ms/op 14.774 ms/op 0.85
MutableVector 250000 get(125000) 11.315 ns/op 13.048 ns/op 0.87
MutableVector 250000 set(125000) 493.29 ns/op 608.66 ns/op 0.81
MutableVector 250000 toArray() 6.1476 ms/op 7.3924 ms/op 0.83
MutableVector 250000 iterate all - toArray() + loop 6.0621 ms/op 7.6666 ms/op 0.79
MutableVector 250000 iterate all - get(i) 2.5987 ms/op 3.4376 ms/op 0.76
Array 250000 create 5.9192 ms/op 6.6984 ms/op 0.88
Array 250000 clone - spread 3.1435 ms/op 3.6097 ms/op 0.87
Array 250000 get(125000) 1.4070 ns/op 1.5780 ns/op 0.89
Array 250000 set(125000) 1.4010 ns/op 1.5850 ns/op 0.88
Array 250000 iterate all - loop 151.02 us/op 167.86 us/op 0.90
effectiveBalanceIncrements clone Uint8Array 300000 74.576 us/op 90.241 us/op 0.83
effectiveBalanceIncrements clone MutableVector 300000 640.00 ns/op 1.1190 us/op 0.57
effectiveBalanceIncrements rw all Uint8Array 300000 247.25 us/op 252.44 us/op 0.98
effectiveBalanceIncrements rw all MutableVector 300000 128.68 ms/op 203.79 ms/op 0.63
phase0 afterProcessEpoch - 250000 vs - 7PWei 186.52 ms/op 183.33 ms/op 1.02
phase0 beforeProcessEpoch - 250000 vs - 7PWei 56.537 ms/op 100.20 ms/op 0.56
altair processEpoch - mainnet_e81889 560.34 ms/op 585.55 ms/op 0.96
mainnet_e81889 - altair beforeProcessEpoch 80.818 ms/op 162.72 ms/op 0.50
mainnet_e81889 - altair processJustificationAndFinalization 22.480 us/op 21.233 us/op 1.06
mainnet_e81889 - altair processInactivityUpdates 10.141 ms/op 10.704 ms/op 0.95
mainnet_e81889 - altair processRewardsAndPenalties 77.719 ms/op 144.42 ms/op 0.54
mainnet_e81889 - altair processRegistryUpdates 4.2140 us/op 2.9730 us/op 1.42
mainnet_e81889 - altair processSlashings 972.00 ns/op 739.00 ns/op 1.32
mainnet_e81889 - altair processEth1DataReset 906.00 ns/op 760.00 ns/op 1.19
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.0813 ms/op 2.4151 ms/op 0.86
mainnet_e81889 - altair processSlashingsReset 6.8900 us/op 4.9610 us/op 1.39
mainnet_e81889 - altair processRandaoMixesReset 6.5050 us/op 5.7090 us/op 1.14
mainnet_e81889 - altair processHistoricalRootsUpdate 1.0080 us/op 843.00 ns/op 1.20
mainnet_e81889 - altair processParticipationFlagUpdates 4.1500 us/op 4.4960 us/op 0.92
mainnet_e81889 - altair processSyncCommitteeUpdates 1.3850 us/op 802.00 ns/op 1.73
mainnet_e81889 - altair afterProcessEpoch 218.02 ms/op 216.76 ms/op 1.01
phase0 processEpoch - mainnet_e58758 613.47 ms/op 591.19 ms/op 1.04
mainnet_e58758 - phase0 beforeProcessEpoch 231.33 ms/op 235.35 ms/op 0.98
mainnet_e58758 - phase0 processJustificationAndFinalization 20.512 us/op 21.223 us/op 0.97
mainnet_e58758 - phase0 processRewardsAndPenalties 125.47 ms/op 131.65 ms/op 0.95
mainnet_e58758 - phase0 processRegistryUpdates 11.001 us/op 10.097 us/op 1.09
mainnet_e58758 - phase0 processSlashings 815.00 ns/op 764.00 ns/op 1.07
mainnet_e58758 - phase0 processEth1DataReset 903.00 ns/op 755.00 ns/op 1.20
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.9085 ms/op 2.0964 ms/op 0.91
mainnet_e58758 - phase0 processSlashingsReset 6.0370 us/op 5.5630 us/op 1.09
mainnet_e58758 - phase0 processRandaoMixesReset 6.4510 us/op 6.0020 us/op 1.07
mainnet_e58758 - phase0 processHistoricalRootsUpdate 996.00 ns/op 769.00 ns/op 1.30
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.8390 us/op 4.9020 us/op 0.99
mainnet_e58758 - phase0 afterProcessEpoch 161.95 ms/op 158.14 ms/op 1.02
phase0 processEffectiveBalanceUpdates - 250000 normalcase 2.0539 ms/op 2.6385 ms/op 0.78
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.2762 ms/op 3.1455 ms/op 0.72
altair processInactivityUpdates - 250000 normalcase 56.985 ms/op 41.285 ms/op 1.38
altair processInactivityUpdates - 250000 worstcase 54.618 ms/op 47.927 ms/op 1.14
phase0 processRegistryUpdates - 250000 normalcase 11.225 us/op 8.7000 us/op 1.29
phase0 processRegistryUpdates - 250000 badcase_full_deposits 455.74 us/op 408.49 us/op 1.12
phase0 processRegistryUpdates - 250000 worstcase 0.5 219.91 ms/op 212.08 ms/op 1.04
altair processRewardsAndPenalties - 250000 normalcase 135.36 ms/op 126.12 ms/op 1.07
altair processRewardsAndPenalties - 250000 worstcase 141.03 ms/op 85.051 ms/op 1.66
phase0 getAttestationDeltas - 250000 normalcase 11.520 ms/op 13.801 ms/op 0.83
phase0 getAttestationDeltas - 250000 worstcase 11.762 ms/op 14.101 ms/op 0.83
phase0 processSlashings - 250000 worstcase 5.0402 ms/op 5.3703 ms/op 0.94
altair processSyncCommitteeUpdates - 250000 290.92 ms/op 286.03 ms/op 1.02
BeaconState.hashTreeRoot - No change 558.00 ns/op 509.00 ns/op 1.10
BeaconState.hashTreeRoot - 1 full validator 72.505 us/op 61.236 us/op 1.18
BeaconState.hashTreeRoot - 32 full validator 739.50 us/op 992.04 us/op 0.75
BeaconState.hashTreeRoot - 512 full validator 8.8852 ms/op 6.5200 ms/op 1.36
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 89.400 us/op 77.916 us/op 1.15
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.2547 ms/op 1.1695 ms/op 1.07
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 17.293 ms/op 15.537 ms/op 1.11
BeaconState.hashTreeRoot - 1 balances 63.155 us/op 63.304 us/op 1.00
BeaconState.hashTreeRoot - 32 balances 630.92 us/op 574.93 us/op 1.10
BeaconState.hashTreeRoot - 512 balances 6.9438 ms/op 5.8094 ms/op 1.20
BeaconState.hashTreeRoot - 250000 balances 104.60 ms/op 93.180 ms/op 1.12
aggregationBits - 2048 els - zipIndexesInBitList 24.603 us/op 31.263 us/op 0.79
regular array get 100000 times 60.753 us/op 67.439 us/op 0.90
wrappedArray get 100000 times 61.484 us/op 67.436 us/op 0.91
arrayWithProxy get 100000 times 31.454 ms/op 29.217 ms/op 1.08
ssz.Root.equals 514.00 ns/op 500.00 ns/op 1.03
byteArrayEquals 434.00 ns/op 493.00 ns/op 0.88
shuffle list - 16384 els 11.240 ms/op 11.016 ms/op 1.02
shuffle list - 250000 els 165.79 ms/op 162.40 ms/op 1.02
processSlot - 1 slots 12.800 us/op 12.929 us/op 0.99
processSlot - 32 slots 2.0761 ms/op 1.8097 ms/op 1.15
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 382.59 us/op 393.89 us/op 0.97
getCommitteeAssignments - req 1 vs - 250000 vc 5.3710 ms/op 5.3424 ms/op 1.01
getCommitteeAssignments - req 100 vs - 250000 vc 7.8488 ms/op 7.4080 ms/op 1.06
getCommitteeAssignments - req 1000 vs - 250000 vc 8.4268 ms/op 7.8010 ms/op 1.08
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 7.9000 ns/op 9.9100 ns/op 0.80
state getBlockRootAtSlot - 250000 vs - 7PWei 1.1143 us/op 1.1785 us/op 0.95
computeProposers - vc 250000 17.327 ms/op 16.997 ms/op 1.02
computeEpochShuffling - vc 250000 169.89 ms/op 165.40 ms/op 1.03
getNextSyncCommittee - vc 250000 289.06 ms/op 278.37 ms/op 1.04

by benchmarkbot/action

@wemeetagain wemeetagain merged commit 36c6eb0 into unstable Sep 7, 2022
@wemeetagain wemeetagain deleted the dapplion/update-vmon-dashboards branch September 7, 2022 15:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants