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

Merge Stable #5075

Merged
merged 2 commits into from
Jan 30, 2023
Merged

Merge Stable #5075

merged 2 commits into from
Jan 30, 2023

Conversation

wemeetagain
Copy link
Member

Motivation

Description

Closes #issue_number

Steps to test or reproduce

@wemeetagain wemeetagain requested a review from a team as a code owner January 30, 2023 04:25
@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: f84ddce Previous: aaf134a Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.2334 ms/op 1.3982 ms/op 0.88
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 75.332 us/op 99.136 us/op 0.76
BLS verify - blst-native 1.8612 ms/op 2.2561 ms/op 0.82
BLS verifyMultipleSignatures 3 - blst-native 3.8076 ms/op 4.7099 ms/op 0.81
BLS verifyMultipleSignatures 8 - blst-native 8.2002 ms/op 9.7621 ms/op 0.84
BLS verifyMultipleSignatures 32 - blst-native 29.784 ms/op 35.248 ms/op 0.84
BLS aggregatePubkeys 32 - blst-native 39.817 us/op 46.776 us/op 0.85
BLS aggregatePubkeys 128 - blst-native 153.96 us/op 180.97 us/op 0.85
getAttestationsForBlock 92.278 ms/op 108.00 ms/op 0.85
isKnown best case - 1 super set check 436.00 ns/op 519.00 ns/op 0.84
isKnown normal case - 2 super set checks 427.00 ns/op 516.00 ns/op 0.83
isKnown worse case - 16 super set checks 418.00 ns/op 517.00 ns/op 0.81
CheckpointStateCache - add get delete 8.7940 us/op 10.228 us/op 0.86
validate gossip signedAggregateAndProof - struct 4.2667 ms/op 5.1922 ms/op 0.82
validate gossip attestation - struct 2.0218 ms/op 2.3588 ms/op 0.86
pickEth1Vote - no votes 2.2744 ms/op 2.6109 ms/op 0.87
pickEth1Vote - max votes 17.464 ms/op 20.443 ms/op 0.85
pickEth1Vote - Eth1Data hashTreeRoot value x2048 12.059 ms/op 14.186 ms/op 0.85
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 21.688 ms/op 24.809 ms/op 0.87
pickEth1Vote - Eth1Data fastSerialize value x2048 1.3512 ms/op 1.4978 ms/op 0.90
pickEth1Vote - Eth1Data fastSerialize tree x2048 9.8932 ms/op 11.609 ms/op 0.85
bytes32 toHexString 1.0880 us/op 1.2540 us/op 0.87
bytes32 Buffer.toString(hex) 633.00 ns/op 708.00 ns/op 0.89
bytes32 Buffer.toString(hex) from Uint8Array 938.00 ns/op 1.0760 us/op 0.87
bytes32 Buffer.toString(hex) + 0x 630.00 ns/op 701.00 ns/op 0.90
Object access 1 prop 0.28700 ns/op 0.34900 ns/op 0.82
Map access 1 prop 0.27000 ns/op 0.34200 ns/op 0.79
Object get x1000 16.257 ns/op 19.034 ns/op 0.85
Map get x1000 1.0110 ns/op 1.1900 ns/op 0.85
Object set x1000 113.19 ns/op 130.15 ns/op 0.87
Map set x1000 71.463 ns/op 83.747 ns/op 0.85
Return object 10000 times 0.37720 ns/op 0.44000 ns/op 0.86
Throw Error 10000 times 6.8975 us/op 8.2474 us/op 0.84
fastMsgIdFn sha256 / 200 bytes 4.3370 us/op 5.2040 us/op 0.83
fastMsgIdFn h32 xxhash / 200 bytes 500.00 ns/op 579.00 ns/op 0.86
fastMsgIdFn h64 xxhash / 200 bytes 653.00 ns/op 756.00 ns/op 0.86
fastMsgIdFn sha256 / 1000 bytes 13.491 us/op 15.913 us/op 0.85
fastMsgIdFn h32 xxhash / 1000 bytes 649.00 ns/op 748.00 ns/op 0.87
fastMsgIdFn h64 xxhash / 1000 bytes 749.00 ns/op 872.00 ns/op 0.86
fastMsgIdFn sha256 / 10000 bytes 116.86 us/op 139.24 us/op 0.84
fastMsgIdFn h32 xxhash / 10000 bytes 2.4090 us/op 2.7330 us/op 0.88
fastMsgIdFn h64 xxhash / 10000 bytes 1.7330 us/op 1.9570 us/op 0.89
enrSubnets - fastDeserialize 64 bits 2.4620 us/op 2.8370 us/op 0.87
enrSubnets - ssz BitVector 64 bits 839.00 ns/op 977.00 ns/op 0.86
enrSubnets - fastDeserialize 4 bits 329.00 ns/op 349.00 ns/op 0.94
enrSubnets - ssz BitVector 4 bits 855.00 ns/op 1.0250 us/op 0.83
prioritizePeers score -10:0 att 32-0.1 sync 2-0 171.57 us/op 209.36 us/op 0.82
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 216.63 us/op 238.55 us/op 0.91
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 316.02 us/op 356.22 us/op 0.89
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 559.67 us/op 635.09 us/op 0.88
prioritizePeers score 0:0 att 64-1 sync 4-1 643.45 us/op 722.33 us/op 0.89
array of 16000 items push then shift 2.7399 us/op 3.3472 us/op 0.82
LinkedList of 16000 items push then shift 19.252 ns/op 20.080 ns/op 0.96
array of 16000 items push then pop 227.35 ns/op 251.75 ns/op 0.90
LinkedList of 16000 items push then pop 17.771 ns/op 19.091 ns/op 0.93
array of 24000 items push then shift 3.9686 us/op 4.6922 us/op 0.85
LinkedList of 24000 items push then shift 22.369 ns/op 23.638 ns/op 0.95
array of 24000 items push then pop 218.21 ns/op 242.46 ns/op 0.90
LinkedList of 24000 items push then pop 19.728 ns/op 20.366 ns/op 0.97
intersect bitArray bitLen 8 29.278 ns/op 33.869 ns/op 0.86
intersect array and set length 8 166.60 ns/op 191.75 ns/op 0.87
intersect bitArray bitLen 128 118.75 ns/op 137.68 ns/op 0.86
intersect array and set length 128 2.3425 us/op 2.6380 us/op 0.89
Buffer.concat 32 items 5.1600 us/op 6.0330 us/op 0.86
Uint8Array.set 32 items 4.2990 us/op 4.5330 us/op 0.95
pass gossip attestations to forkchoice per slot 4.3149 ms/op 5.0857 ms/op 0.85
computeDeltas 6.1386 ms/op 7.6181 ms/op 0.81
computeProposerBoostScoreFromBalances 2.8405 ms/op 3.1741 ms/op 0.89
altair processAttestation - 250000 vs - 7PWei normalcase 4.1553 ms/op 4.4735 ms/op 0.93
altair processAttestation - 250000 vs - 7PWei worstcase 6.5421 ms/op 7.2759 ms/op 0.90
altair processAttestation - setStatus - 1/6 committees join 215.12 us/op 248.06 us/op 0.87
altair processAttestation - setStatus - 1/3 committees join 404.72 us/op 481.61 us/op 0.84
altair processAttestation - setStatus - 1/2 committees join 569.75 us/op 648.62 us/op 0.88
altair processAttestation - setStatus - 2/3 committees join 731.60 us/op 846.76 us/op 0.86
altair processAttestation - setStatus - 4/5 committees join 1.0072 ms/op 1.1415 ms/op 0.88
altair processAttestation - setStatus - 100% committees join 1.1925 ms/op 1.3832 ms/op 0.86
altair processBlock - 250000 vs - 7PWei normalcase 28.202 ms/op 31.003 ms/op 0.91
altair processBlock - 250000 vs - 7PWei normalcase hashState 52.366 ms/op 44.145 ms/op 1.19
altair processBlock - 250000 vs - 7PWei worstcase 79.116 ms/op 95.878 ms/op 0.83
altair processBlock - 250000 vs - 7PWei worstcase hashState 99.250 ms/op 113.58 ms/op 0.87
phase0 processBlock - 250000 vs - 7PWei normalcase 3.7204 ms/op 4.4323 ms/op 0.84
phase0 processBlock - 250000 vs - 7PWei worstcase 45.738 ms/op 57.071 ms/op 0.80
altair processEth1Data - 250000 vs - 7PWei normalcase 963.66 us/op 997.24 us/op 0.97
vc - 250000 eb 1 eth1 1 we 0 wn 0 - smpl 15 9.3680 us/op 15.495 us/op 0.60
vc - 250000 eb 0.95 eth1 0.1 we 0.05 wn 0 - smpl 219 28.908 us/op 45.621 us/op 0.63
vc - 250000 eb 0.95 eth1 0.3 we 0.05 wn 0 - smpl 42 12.866 us/op 19.247 us/op 0.67
vc - 250000 eb 0.95 eth1 0.7 we 0.05 wn 0 - smpl 18 10.293 us/op 16.381 us/op 0.63
vc - 250000 eb 0.1 eth1 0.1 we 0 wn 0 - smpl 1020 102.80 us/op 146.58 us/op 0.70
vc - 250000 eb 0.03 eth1 0.03 we 0 wn 0 - smpl 11777 1.0236 ms/op 1.2100 ms/op 0.85
vc - 250000 eb 0.01 eth1 0.01 we 0 wn 0 - smpl 16384 1.3760 ms/op 1.6268 ms/op 0.85
vc - 250000 eb 0 eth1 0 we 0 wn 0 - smpl 16384 1.3442 ms/op 1.6167 ms/op 0.83
vc - 250000 eb 0 eth1 0 we 0 wn 0 nocache - smpl 16384 4.4029 ms/op 5.4212 ms/op 0.81
vc - 250000 eb 0 eth1 1 we 0 wn 0 - smpl 16384 2.8891 ms/op 3.8367 ms/op 0.75
vc - 250000 eb 0 eth1 1 we 0 wn 0 nocache - smpl 16384 7.0292 ms/op 8.7499 ms/op 0.80
Tree 40 250000 create 742.58 ms/op 810.12 ms/op 0.92
Tree 40 250000 get(125000) 299.42 ns/op 341.76 ns/op 0.88
Tree 40 250000 set(125000) 2.5347 us/op 2.3681 us/op 1.07
Tree 40 250000 toArray() 33.790 ms/op 36.240 ms/op 0.93
Tree 40 250000 iterate all - toArray() + loop 33.703 ms/op 36.243 ms/op 0.93
Tree 40 250000 iterate all - get(i) 107.37 ms/op 120.64 ms/op 0.89
MutableVector 250000 create 18.423 ms/op 18.211 ms/op 1.01
MutableVector 250000 get(125000) 13.172 ns/op 17.388 ns/op 0.76
MutableVector 250000 set(125000) 654.34 ns/op 702.25 ns/op 0.93
MutableVector 250000 toArray() 7.2703 ms/op 7.7647 ms/op 0.94
MutableVector 250000 iterate all - toArray() + loop 6.7699 ms/op 7.9399 ms/op 0.85
MutableVector 250000 iterate all - get(i) 3.5213 ms/op 4.2956 ms/op 0.82
Array 250000 create 6.3528 ms/op 7.6978 ms/op 0.83
Array 250000 clone - spread 3.0346 ms/op 3.2141 ms/op 0.94
Array 250000 get(125000) 1.2410 ns/op 1.4140 ns/op 0.88
Array 250000 set(125000) 1.2500 ns/op 1.4540 ns/op 0.86
Array 250000 iterate all - loop 167.83 us/op 209.25 us/op 0.80
effectiveBalanceIncrements clone Uint8Array 300000 88.122 us/op 96.722 us/op 0.91
effectiveBalanceIncrements clone MutableVector 300000 921.00 ns/op 1.0450 us/op 0.88
effectiveBalanceIncrements rw all Uint8Array 300000 252.70 us/op 310.54 us/op 0.81
effectiveBalanceIncrements rw all MutableVector 300000 217.21 ms/op 238.68 ms/op 0.91
phase0 afterProcessEpoch - 250000 vs - 7PWei 189.34 ms/op 244.72 ms/op 0.77
phase0 beforeProcessEpoch - 250000 vs - 7PWei 100.34 ms/op 79.867 ms/op 1.26
altair processEpoch - mainnet_e81889 511.42 ms/op 668.94 ms/op 0.76
mainnet_e81889 - altair beforeProcessEpoch 167.93 ms/op 179.07 ms/op 0.94
mainnet_e81889 - altair processJustificationAndFinalization 21.367 us/op 31.840 us/op 0.67
mainnet_e81889 - altair processInactivityUpdates 11.484 ms/op 12.740 ms/op 0.90
mainnet_e81889 - altair processRewardsAndPenalties 95.032 ms/op 160.88 ms/op 0.59
mainnet_e81889 - altair processRegistryUpdates 3.3490 us/op 6.7660 us/op 0.49
mainnet_e81889 - altair processSlashings 808.00 ns/op 1.4360 us/op 0.56
mainnet_e81889 - altair processEth1DataReset 855.00 ns/op 1.6310 us/op 0.52
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.4531 ms/op 2.7524 ms/op 0.89
mainnet_e81889 - altair processSlashingsReset 5.9480 us/op 10.398 us/op 0.57
mainnet_e81889 - altair processRandaoMixesReset 6.4590 us/op 11.897 us/op 0.54
mainnet_e81889 - altair processHistoricalRootsUpdate 879.00 ns/op 2.0710 us/op 0.42
mainnet_e81889 - altair processParticipationFlagUpdates 3.2400 us/op 7.9040 us/op 0.41
mainnet_e81889 - altair processSyncCommitteeUpdates 695.00 ns/op 1.5100 us/op 0.46
mainnet_e81889 - altair afterProcessEpoch 196.88 ms/op 234.76 ms/op 0.84
phase0 processEpoch - mainnet_e58758 544.44 ms/op 609.77 ms/op 0.89
mainnet_e58758 - phase0 beforeProcessEpoch 245.34 ms/op 252.16 ms/op 0.97
mainnet_e58758 - phase0 processJustificationAndFinalization 21.732 us/op 35.688 us/op 0.61
mainnet_e58758 - phase0 processRewardsAndPenalties 138.59 ms/op 162.04 ms/op 0.86
mainnet_e58758 - phase0 processRegistryUpdates 9.9200 us/op 19.092 us/op 0.52
mainnet_e58758 - phase0 processSlashings 633.00 ns/op 1.7470 us/op 0.36
mainnet_e58758 - phase0 processEth1DataReset 671.00 ns/op 1.5890 us/op 0.42
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.9711 ms/op 2.5413 ms/op 0.78
mainnet_e58758 - phase0 processSlashingsReset 4.4660 us/op 9.2300 us/op 0.48
mainnet_e58758 - phase0 processRandaoMixesReset 5.7600 us/op 13.695 us/op 0.42
mainnet_e58758 - phase0 processHistoricalRootsUpdate 742.00 ns/op 1.9230 us/op 0.39
mainnet_e58758 - phase0 processParticipationRecordUpdates 5.1390 us/op 12.360 us/op 0.42
mainnet_e58758 - phase0 afterProcessEpoch 160.60 ms/op 193.16 ms/op 0.83
phase0 processEffectiveBalanceUpdates - 250000 normalcase 2.7984 ms/op 3.3788 ms/op 0.83
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 3.3189 ms/op 3.5444 ms/op 0.94
altair processInactivityUpdates - 250000 normalcase 41.262 ms/op 46.880 ms/op 0.88
altair processInactivityUpdates - 250000 worstcase 50.702 ms/op 103.63 ms/op 0.49
phase0 processRegistryUpdates - 250000 normalcase 8.0170 us/op 14.092 us/op 0.57
phase0 processRegistryUpdates - 250000 badcase_full_deposits 440.43 us/op 590.98 us/op 0.75
phase0 processRegistryUpdates - 250000 worstcase 0.5 226.78 ms/op 252.04 ms/op 0.90
altair processRewardsAndPenalties - 250000 normalcase 123.78 ms/op 101.59 ms/op 1.22
altair processRewardsAndPenalties - 250000 worstcase 88.615 ms/op 131.01 ms/op 0.68
phase0 getAttestationDeltas - 250000 normalcase 13.158 ms/op 13.999 ms/op 0.94
phase0 getAttestationDeltas - 250000 worstcase 13.434 ms/op 14.168 ms/op 0.95
phase0 processSlashings - 250000 worstcase 5.6045 ms/op 6.7150 ms/op 0.83
altair processSyncCommitteeUpdates - 250000 266.01 ms/op 324.89 ms/op 0.82
BeaconState.hashTreeRoot - No change 433.00 ns/op 557.00 ns/op 0.78
BeaconState.hashTreeRoot - 1 full validator 64.707 us/op 74.643 us/op 0.87
BeaconState.hashTreeRoot - 32 full validator 717.92 us/op 778.87 us/op 0.92
BeaconState.hashTreeRoot - 512 full validator 6.6055 ms/op 7.8698 ms/op 0.84
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 80.509 us/op 94.986 us/op 0.85
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.2303 ms/op 1.4032 ms/op 0.88
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 16.726 ms/op 18.064 ms/op 0.93
BeaconState.hashTreeRoot - 1 balances 60.267 us/op 77.349 us/op 0.78
BeaconState.hashTreeRoot - 32 balances 588.48 us/op 635.37 us/op 0.93
BeaconState.hashTreeRoot - 512 balances 5.7911 ms/op 7.3081 ms/op 0.79
BeaconState.hashTreeRoot - 250000 balances 95.701 ms/op 97.238 ms/op 0.98
aggregationBits - 2048 els - zipIndexesInBitList 28.766 us/op 31.009 us/op 0.93
regular array get 100000 times 67.318 us/op 80.510 us/op 0.84
wrappedArray get 100000 times 67.354 us/op 77.545 us/op 0.87
arrayWithProxy get 100000 times 33.330 ms/op 32.213 ms/op 1.03
ssz.Root.equals 1.0990 us/op 1.2700 us/op 0.87
byteArrayEquals 1.0810 us/op 1.2530 us/op 0.86
shuffle list - 16384 els 11.294 ms/op 13.703 ms/op 0.82
shuffle list - 250000 els 166.35 ms/op 197.49 ms/op 0.84
processSlot - 1 slots 12.431 us/op 13.753 us/op 0.90
processSlot - 32 slots 1.7525 ms/op 2.0767 ms/op 0.84
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 339.32 us/op 405.22 us/op 0.84
getCommitteeAssignments - req 1 vs - 250000 vc 5.6006 ms/op 6.4981 ms/op 0.86
getCommitteeAssignments - req 100 vs - 250000 vc 7.5695 ms/op 8.6383 ms/op 0.88
getCommitteeAssignments - req 1000 vs - 250000 vc 8.0420 ms/op 9.4214 ms/op 0.85
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 9.6200 ns/op 11.500 ns/op 0.84
state getBlockRootAtSlot - 250000 vs - 7PWei 1.1885 us/op 1.3977 us/op 0.85
computeProposers - vc 250000 15.981 ms/op 19.715 ms/op 0.81
computeEpochShuffling - vc 250000 172.70 ms/op 205.88 ms/op 0.84
getNextSyncCommittee - vc 250000 265.99 ms/op 320.05 ms/op 0.83

by benchmarkbot/action

@wemeetagain wemeetagain merged commit 2a2a9ef into unstable Jan 30, 2023
@wemeetagain
Copy link
Member Author

🎉 This PR is included in v1.6.0 🎉

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.

3 participants