Skip to content

Remove validator.stop - #4178

Merged
wemeetagain merged 1 commit into
unstablefrom
cayman/remove-validator-stop
Jun 22, 2022
Merged

Remove validator.stop#4178
wemeetagain merged 1 commit into
unstablefrom
cayman/remove-validator-stop

Conversation

@wemeetagain

Copy link
Copy Markdown
Member

Motivation

See #4138

Description

Minimal change to drop validator.stop.

@wemeetagain
wemeetagain requested a review from a team as a code owner June 20, 2022 21:47
@github-actions

Copy link
Copy Markdown
Contributor

Performance Report

鉁旓笍 no performance regression detected

Full benchmark results
Benchmark suite Current: 94ca9bc Previous: 2eeb965 Ratio
altair processAttestation - 250000 vs - 7PWei normalcase 3.1099 ms/op 3.3674 ms/op 0.92
altair processAttestation - 250000 vs - 7PWei worstcase 4.7456 ms/op 5.3900 ms/op 0.88
altair processAttestation - setStatus - 1/6 committees join 179.47 us/op 180.51 us/op 0.99
altair processAttestation - setStatus - 1/3 committees join 346.64 us/op 347.19 us/op 1.00
altair processAttestation - setStatus - 1/2 committees join 475.51 us/op 502.07 us/op 0.95
altair processAttestation - setStatus - 2/3 committees join 624.90 us/op 661.15 us/op 0.95
altair processAttestation - setStatus - 4/5 committees join 829.93 us/op 921.92 us/op 0.90
altair processAttestation - setStatus - 100% committees join 1.0081 ms/op 1.1110 ms/op 0.91
altair processBlock - 250000 vs - 7PWei normalcase 28.430 ms/op 23.955 ms/op 1.19
altair processBlock - 250000 vs - 7PWei normalcase hashState 34.217 ms/op 32.055 ms/op 1.07
altair processBlock - 250000 vs - 7PWei worstcase 83.299 ms/op 81.847 ms/op 1.02
altair processBlock - 250000 vs - 7PWei worstcase hashState 88.056 ms/op 99.921 ms/op 0.88
phase0 processBlock - 250000 vs - 7PWei normalcase 3.0253 ms/op 3.4964 ms/op 0.87
phase0 processBlock - 250000 vs - 7PWei worstcase 39.660 ms/op 52.037 ms/op 0.76
altair processEth1Data - 250000 vs - 7PWei normalcase 641.44 us/op 719.26 us/op 0.89
Tree 40 250000 create 767.56 ms/op 760.92 ms/op 1.01
Tree 40 250000 get(125000) 279.39 ns/op 261.78 ns/op 1.07
Tree 40 250000 set(125000) 2.1048 us/op 2.1237 us/op 0.99
Tree 40 250000 toArray() 28.984 ms/op 27.442 ms/op 1.06
Tree 40 250000 iterate all - toArray() + loop 28.103 ms/op 27.709 ms/op 1.01
Tree 40 250000 iterate all - get(i) 94.415 ms/op 113.07 ms/op 0.84
MutableVector 250000 create 16.259 ms/op 14.538 ms/op 1.12
MutableVector 250000 get(125000) 12.892 ns/op 11.057 ns/op 1.17
MutableVector 250000 set(125000) 636.81 ns/op 515.00 ns/op 1.24
MutableVector 250000 toArray() 5.9211 ms/op 5.9166 ms/op 1.00
MutableVector 250000 iterate all - toArray() + loop 6.1721 ms/op 6.3619 ms/op 0.97
MutableVector 250000 iterate all - get(i) 2.9751 ms/op 2.5952 ms/op 1.15
Array 250000 create 5.4304 ms/op 6.0303 ms/op 0.90
Array 250000 clone - spread 2.2278 ms/op 2.9044 ms/op 0.77
Array 250000 get(125000) 1.0250 ns/op 1.4090 ns/op 0.73
Array 250000 set(125000) 1.0410 ns/op 1.4140 ns/op 0.74
Array 250000 iterate all - loop 147.01 us/op 155.46 us/op 0.95
effectiveBalanceIncrements clone Uint8Array 300000 203.50 us/op 109.43 us/op 1.86
effectiveBalanceIncrements clone MutableVector 300000 650.00 ns/op 708.00 ns/op 0.92
effectiveBalanceIncrements rw all Uint8Array 300000 217.93 us/op 247.37 us/op 0.88
effectiveBalanceIncrements rw all MutableVector 300000 149.11 ms/op 135.43 ms/op 1.10
phase0 afterProcessEpoch - 250000 vs - 7PWei 172.57 ms/op 185.18 ms/op 0.93
phase0 beforeProcessEpoch - 250000 vs - 7PWei 69.352 ms/op 58.619 ms/op 1.18
altair processEpoch - mainnet_e81889 546.14 ms/op 535.57 ms/op 1.02
mainnet_e81889 - altair beforeProcessEpoch 143.62 ms/op 123.46 ms/op 1.16
mainnet_e81889 - altair processJustificationAndFinalization 31.372 us/op 16.539 us/op 1.90
mainnet_e81889 - altair processInactivityUpdates 10.726 ms/op 9.7084 ms/op 1.10
mainnet_e81889 - altair processRewardsAndPenalties 138.61 ms/op 74.764 ms/op 1.85
mainnet_e81889 - altair processRegistryUpdates 6.0340 us/op 2.4830 us/op 2.43
mainnet_e81889 - altair processSlashings 1.7590 us/op 616.00 ns/op 2.86
mainnet_e81889 - altair processEth1DataReset 1.1150 us/op 605.00 ns/op 1.84
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.1345 ms/op 1.9817 ms/op 1.08
mainnet_e81889 - altair processSlashingsReset 7.7790 us/op 4.1560 us/op 1.87
mainnet_e81889 - altair processRandaoMixesReset 7.5940 us/op 4.5290 us/op 1.68
mainnet_e81889 - altair processHistoricalRootsUpdate 1.0240 us/op 638.00 ns/op 1.61
mainnet_e81889 - altair processParticipationFlagUpdates 4.2090 us/op 2.8410 us/op 1.48
mainnet_e81889 - altair processSyncCommitteeUpdates 641.00 ns/op 704.00 ns/op 0.91
mainnet_e81889 - altair afterProcessEpoch 170.61 ms/op 215.36 ms/op 0.79
phase0 processEpoch - mainnet_e58758 478.23 ms/op 485.13 ms/op 0.99
mainnet_e58758 - phase0 beforeProcessEpoch 191.27 ms/op 160.10 ms/op 1.19
mainnet_e58758 - phase0 processJustificationAndFinalization 26.147 us/op 14.341 us/op 1.82
mainnet_e58758 - phase0 processRewardsAndPenalties 72.251 ms/op 63.043 ms/op 1.15
mainnet_e58758 - phase0 processRegistryUpdates 15.817 us/op 7.5470 us/op 2.10
mainnet_e58758 - phase0 processSlashings 1.3110 us/op 555.00 ns/op 2.36
mainnet_e58758 - phase0 processEth1DataReset 1.0940 us/op 545.00 ns/op 2.01
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.9025 ms/op 1.9865 ms/op 0.96
mainnet_e58758 - phase0 processSlashingsReset 8.1870 us/op 4.2340 us/op 1.93
mainnet_e58758 - phase0 processRandaoMixesReset 9.3350 us/op 4.0220 us/op 2.32
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.2180 us/op 625.00 ns/op 1.95
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.4340 us/op 3.5690 us/op 1.24
mainnet_e58758 - phase0 afterProcessEpoch 140.55 ms/op 163.78 ms/op 0.86
phase0 processEffectiveBalanceUpdates - 250000 normalcase 2.7498 ms/op 1.9386 ms/op 1.42
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.7293 ms/op 2.1292 ms/op 1.28
altair processInactivityUpdates - 250000 normalcase 39.436 ms/op 31.621 ms/op 1.25
altair processInactivityUpdates - 250000 worstcase 31.050 ms/op 26.796 ms/op 1.16
phase0 processRegistryUpdates - 250000 normalcase 8.4160 us/op 5.9720 us/op 1.41
phase0 processRegistryUpdates - 250000 badcase_full_deposits 476.39 us/op 363.29 us/op 1.31
phase0 processRegistryUpdates - 250000 worstcase 0.5 198.94 ms/op 175.43 ms/op 1.13
altair processRewardsAndPenalties - 250000 normalcase 119.79 ms/op 72.513 ms/op 1.65
altair processRewardsAndPenalties - 250000 worstcase 113.98 ms/op 108.44 ms/op 1.05
phase0 getAttestationDeltas - 250000 normalcase 10.422 ms/op 11.915 ms/op 0.87
phase0 getAttestationDeltas - 250000 worstcase 10.493 ms/op 11.885 ms/op 0.88
phase0 processSlashings - 250000 worstcase 4.7487 ms/op 5.1179 ms/op 0.93
altair processSyncCommitteeUpdates - 250000 229.18 ms/op 298.03 ms/op 0.77
BeaconState.hashTreeRoot - No change 485.00 ns/op 622.00 ns/op 0.78
BeaconState.hashTreeRoot - 1 full validator 55.751 us/op 73.321 us/op 0.76
BeaconState.hashTreeRoot - 32 full validator 543.23 us/op 727.77 us/op 0.75
BeaconState.hashTreeRoot - 512 full validator 5.8127 ms/op 7.6393 ms/op 0.76
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 76.092 us/op 91.008 us/op 0.84
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.1572 ms/op 1.2479 ms/op 0.93
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 12.987 ms/op 17.396 ms/op 0.75
BeaconState.hashTreeRoot - 1 balances 54.442 us/op 68.295 us/op 0.80
BeaconState.hashTreeRoot - 32 balances 468.82 us/op 701.10 us/op 0.67
BeaconState.hashTreeRoot - 512 balances 4.4669 ms/op 5.7698 ms/op 0.77
BeaconState.hashTreeRoot - 250000 balances 87.673 ms/op 98.262 ms/op 0.89
aggregationBits - 2048 els - zipIndexesInBitList 27.297 us/op 31.311 us/op 0.87
regular array get 100000 times 57.942 us/op 60.608 us/op 0.96
wrappedArray get 100000 times 59.231 us/op 60.630 us/op 0.98
arrayWithProxy get 100000 times 26.715 ms/op 28.213 ms/op 0.95
ssz.Root.equals 387.00 ns/op 600.00 ns/op 0.65
byteArrayEquals 378.00 ns/op 585.00 ns/op 0.65
shuffle list - 16384 els 9.4536 ms/op 11.102 ms/op 0.85
shuffle list - 250000 els 141.50 ms/op 166.28 ms/op 0.85
processSlot - 1 slots 10.447 us/op 14.143 us/op 0.74
processSlot - 32 slots 1.5214 ms/op 2.0719 ms/op 0.73
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 821.18 us/op 423.19 us/op 1.94
getCommitteeAssignments - req 1 vs - 250000 vc 4.5893 ms/op 5.4062 ms/op 0.85
getCommitteeAssignments - req 100 vs - 250000 vc 6.4516 ms/op 7.8488 ms/op 0.82
getCommitteeAssignments - req 1000 vs - 250000 vc 6.7877 ms/op 8.4639 ms/op 0.80
computeProposers - vc 250000 15.779 ms/op 19.424 ms/op 0.81
computeEpochShuffling - vc 250000 146.10 ms/op 168.42 ms/op 0.87
getNextSyncCommittee - vc 250000 226.10 ms/op 298.19 ms/op 0.76
pass gossip attestations to forkchoice per slot 2.9819 ms/op 5.3247 ms/op 0.56
computeDeltas 3.4877 ms/op 3.2488 ms/op 1.07
computeProposerBoostScoreFromBalances 803.50 us/op 810.04 us/op 0.99
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.5826 ms/op 1.9273 ms/op 0.82
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 64.588 us/op 68.832 us/op 0.94
BLS verify - blst-native 1.6317 ms/op 2.1654 ms/op 0.75
BLS verifyMultipleSignatures 3 - blst-native 3.3093 ms/op 4.4818 ms/op 0.74
BLS verifyMultipleSignatures 8 - blst-native 7.1787 ms/op 9.6719 ms/op 0.74
BLS verifyMultipleSignatures 32 - blst-native 25.966 ms/op 35.204 ms/op 0.74
BLS aggregatePubkeys 32 - blst-native 34.502 us/op 46.644 us/op 0.74
BLS aggregatePubkeys 128 - blst-native 134.49 us/op 182.34 us/op 0.74
getAttestationsForBlock 58.200 ms/op 52.579 ms/op 1.11
isKnown best case - 1 super set check 384.00 ns/op 494.00 ns/op 0.78
isKnown normal case - 2 super set checks 385.00 ns/op 486.00 ns/op 0.79
isKnown worse case - 16 super set checks 383.00 ns/op 485.00 ns/op 0.79
CheckpointStateCache - add get delete 9.0220 us/op 10.920 us/op 0.83
validate gossip signedAggregateAndProof - struct 3.7308 ms/op 5.0063 ms/op 0.75
validate gossip attestation - struct 1.7805 ms/op 2.3639 ms/op 0.75
altair verifyImport mainnet_s3766816:31 5.6256 s/op 6.8649 s/op 0.82
pickEth1Vote - no votes 1.8833 ms/op 2.1468 ms/op 0.88
pickEth1Vote - max votes 20.689 ms/op 23.959 ms/op 0.86
pickEth1Vote - Eth1Data hashTreeRoot value x2048 10.347 ms/op 13.921 ms/op 0.74
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 18.677 ms/op 21.061 ms/op 0.89
pickEth1Vote - Eth1Data fastSerialize value x2048 1.3103 ms/op 1.6514 ms/op 0.79
pickEth1Vote - Eth1Data fastSerialize tree x2048 14.750 ms/op 17.373 ms/op 0.85
bytes32 toHexString 935.00 ns/op 1.0790 us/op 0.87
bytes32 Buffer.toString(hex) 609.00 ns/op 830.00 ns/op 0.73
bytes32 Buffer.toString(hex) from Uint8Array 840.00 ns/op 1.0600 us/op 0.79
bytes32 Buffer.toString(hex) + 0x 578.00 ns/op 832.00 ns/op 0.69
Object access 1 prop 0.28600 ns/op 0.39000 ns/op 0.73
Map access 1 prop 0.25400 ns/op 0.30200 ns/op 0.84
Object get x1000 15.050 ns/op 11.113 ns/op 1.35
Map get x1000 0.91800 ns/op 0.92300 ns/op 0.99
Object set x1000 96.568 ns/op 77.716 ns/op 1.24
Map set x1000 57.640 ns/op 51.911 ns/op 1.11
Return object 10000 times 0.32290 ns/op 0.44430 ns/op 0.73
Throw Error 10000 times 5.1323 us/op 5.9929 us/op 0.86
enrSubnets - fastDeserialize 64 bits 2.2800 us/op 2.8900 us/op 0.79
enrSubnets - ssz BitVector 64 bits 687.00 ns/op 864.00 ns/op 0.80
enrSubnets - fastDeserialize 4 bits 310.00 ns/op 440.00 ns/op 0.70
enrSubnets - ssz BitVector 4 bits 633.00 ns/op 846.00 ns/op 0.75
prioritizePeers score -10:0 att 32-0.1 sync 2-0 80.532 us/op 89.656 us/op 0.90
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 108.42 us/op 128.87 us/op 0.84
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 180.10 us/op 224.19 us/op 0.80
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 380.83 us/op 336.19 us/op 1.13
prioritizePeers score 0:0 att 64-1 sync 4-1 404.58 us/op 412.04 us/op 0.98
RateTracker 1000000 limit, 1 obj count per request 156.68 ns/op 195.10 ns/op 0.80
RateTracker 1000000 limit, 2 obj count per request 124.48 ns/op 147.42 ns/op 0.84
RateTracker 1000000 limit, 4 obj count per request 110.99 ns/op 122.91 ns/op 0.90
RateTracker 1000000 limit, 8 obj count per request 99.335 ns/op 108.66 ns/op 0.91
RateTracker with prune 3.8150 us/op 4.2110 us/op 0.91
array of 16000 items push then shift 2.6660 us/op 51.586 us/op 0.05
LinkedList of 16000 items push then shift 23.709 ns/op 18.168 ns/op 1.30
array of 16000 items push then pop 204.22 ns/op 218.64 ns/op 0.93
LinkedList of 16000 items push then pop 20.170 ns/op 14.467 ns/op 1.39
array of 24000 items push then shift 3.9644 us/op 77.368 us/op 0.05
LinkedList of 24000 items push then shift 23.148 ns/op 22.993 ns/op 1.01
array of 24000 items push then pop 150.97 ns/op 197.29 ns/op 0.77
LinkedList of 24000 items push then pop 20.923 ns/op 17.396 ns/op 1.20
intersect bitArray bitLen 8 9.9380 ns/op 10.716 ns/op 0.93
intersect array and set length 8 139.88 ns/op 140.44 ns/op 1.00
intersect bitArray bitLen 128 54.230 ns/op 55.493 ns/op 0.98
intersect array and set length 128 1.8899 us/op 1.8558 us/op 1.02

by benchmarkbot/action

@dapplion dapplion left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGMT

@wemeetagain
wemeetagain merged commit 90a289a into unstable Jun 22, 2022
@wemeetagain
wemeetagain deleted the cayman/remove-validator-stop branch June 22, 2022 05:15
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.

2 participants