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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge Stable (v1.1.0) into Unstable #4593

Merged
merged 3 commits into from Sep 23, 2022
Merged

Merge Stable (v1.1.0) into Unstable #4593

merged 3 commits into from Sep 23, 2022

Conversation

twoeths
Copy link
Contributor

@twoeths twoeths commented Sep 23, 2022

No description provided.

@twoeths twoeths requested a review from a team as a code owner September 23, 2022 14:23
@github-actions
Copy link
Contributor

Performance Report

鉁旓笍 no performance regression detected

Full benchmark results
Benchmark suite Current: 7c93cef Previous: 8cac35f Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.0485 ms/op 2.2960 ms/op 0.89
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 75.170 us/op 75.519 us/op 1.00
BLS verify - blst-native 1.8570 ms/op 1.8506 ms/op 1.00
BLS verifyMultipleSignatures 3 - blst-native 3.8029 ms/op 3.7867 ms/op 1.00
BLS verifyMultipleSignatures 8 - blst-native 8.1866 ms/op 8.1535 ms/op 1.00
BLS verifyMultipleSignatures 32 - blst-native 29.676 ms/op 29.572 ms/op 1.00
BLS aggregatePubkeys 32 - blst-native 39.380 us/op 39.000 us/op 1.01
BLS aggregatePubkeys 128 - blst-native 152.81 us/op 152.63 us/op 1.00
getAttestationsForBlock 92.728 ms/op 89.046 ms/op 1.04
isKnown best case - 1 super set check 430.00 ns/op 415.00 ns/op 1.04
isKnown normal case - 2 super set checks 417.00 ns/op 418.00 ns/op 1.00
isKnown worse case - 16 super set checks 442.00 ns/op 424.00 ns/op 1.04
CheckpointStateCache - add get delete 9.3990 us/op 9.0560 us/op 1.04
validate gossip signedAggregateAndProof - struct 4.2584 ms/op 4.2842 ms/op 0.99
validate gossip attestation - struct 2.0283 ms/op 2.0362 ms/op 1.00
pickEth1Vote - no votes 2.1971 ms/op 2.2637 ms/op 0.97
pickEth1Vote - max votes 21.323 ms/op 21.448 ms/op 0.99
pickEth1Vote - Eth1Data hashTreeRoot value x2048 11.237 ms/op 11.374 ms/op 0.99
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 20.172 ms/op 21.291 ms/op 0.95
pickEth1Vote - Eth1Data fastSerialize value x2048 1.5662 ms/op 1.5902 ms/op 0.98
pickEth1Vote - Eth1Data fastSerialize tree x2048 15.051 ms/op 14.744 ms/op 1.02
bytes32 toHexString 1.0830 us/op 1.0800 us/op 1.00
bytes32 Buffer.toString(hex) 710.00 ns/op 745.00 ns/op 0.95
bytes32 Buffer.toString(hex) from Uint8Array 993.00 ns/op 1.0420 us/op 0.95
bytes32 Buffer.toString(hex) + 0x 729.00 ns/op 755.00 ns/op 0.97
Object access 1 prop 0.37600 ns/op 0.36300 ns/op 1.04
Map access 1 prop 0.28700 ns/op 0.29000 ns/op 0.99
Object get x1000 19.005 ns/op 18.297 ns/op 1.04
Map get x1000 1.0050 ns/op 1.1730 ns/op 0.86
Object set x1000 128.93 ns/op 127.02 ns/op 1.02
Map set x1000 77.695 ns/op 74.128 ns/op 1.05
Return object 10000 times 0.37560 ns/op 0.36650 ns/op 1.02
Throw Error 10000 times 5.9192 us/op 5.9967 us/op 0.99
enrSubnets - fastDeserialize 64 bits 2.8260 us/op 2.6480 us/op 1.07
enrSubnets - ssz BitVector 64 bits 793.00 ns/op 777.00 ns/op 1.02
enrSubnets - fastDeserialize 4 bits 403.00 ns/op 409.00 ns/op 0.99
enrSubnets - ssz BitVector 4 bits 802.00 ns/op 769.00 ns/op 1.04
prioritizePeers score -10:0 att 32-0.1 sync 2-0 96.414 us/op 94.434 us/op 1.02
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 137.10 us/op 125.68 us/op 1.09
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 237.36 us/op 223.48 us/op 1.06
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 386.16 us/op 479.85 us/op 0.80
prioritizePeers score 0:0 att 64-1 sync 4-1 457.54 us/op 467.57 us/op 0.98
RateTracker 1000000 limit, 1 obj count per request 211.95 ns/op 188.32 ns/op 1.13
RateTracker 1000000 limit, 2 obj count per request 161.61 ns/op 143.31 ns/op 1.13
RateTracker 1000000 limit, 4 obj count per request 135.65 ns/op 118.86 ns/op 1.14
RateTracker 1000000 limit, 8 obj count per request 125.01 ns/op 109.62 ns/op 1.14
RateTracker with prune 4.3320 us/op 4.5610 us/op 0.95
array of 16000 items push then shift 3.1828 us/op 3.0861 us/op 1.03
LinkedList of 16000 items push then shift 17.223 ns/op 18.879 ns/op 0.91
array of 16000 items push then pop 237.78 ns/op 242.10 ns/op 0.98
LinkedList of 16000 items push then pop 16.218 ns/op 17.735 ns/op 0.91
array of 24000 items push then shift 4.5607 us/op 4.5502 us/op 1.00
LinkedList of 24000 items push then shift 20.736 ns/op 23.514 ns/op 0.88
array of 24000 items push then pop 206.28 ns/op 213.13 ns/op 0.97
LinkedList of 24000 items push then pop 17.664 ns/op 19.672 ns/op 0.90
intersect bitArray bitLen 8 11.749 ns/op 11.753 ns/op 1.00
intersect array and set length 8 159.40 ns/op 164.91 ns/op 0.97
intersect bitArray bitLen 128 61.979 ns/op 62.074 ns/op 1.00
intersect array and set length 128 2.2997 us/op 2.4557 us/op 0.94
Buffer.concat 32 items 1.9040 ns/op 1.9040 ns/op 1.00
pass gossip attestations to forkchoice per slot 3.1230 ms/op 3.1884 ms/op 0.98
computeDeltas 3.9588 ms/op 3.9948 ms/op 0.99
computeProposerBoostScoreFromBalances 921.46 us/op 922.16 us/op 1.00
altair processAttestation - 250000 vs - 7PWei normalcase 3.7062 ms/op 3.9079 ms/op 0.95
altair processAttestation - 250000 vs - 7PWei worstcase 5.6696 ms/op 6.3342 ms/op 0.90
altair processAttestation - setStatus - 1/6 committees join 209.86 us/op 212.91 us/op 0.99
altair processAttestation - setStatus - 1/3 committees join 401.52 us/op 406.60 us/op 0.99
altair processAttestation - setStatus - 1/2 committees join 562.39 us/op 571.14 us/op 0.98
altair processAttestation - setStatus - 2/3 committees join 725.33 us/op 729.66 us/op 0.99
altair processAttestation - setStatus - 4/5 committees join 1.0073 ms/op 1.0106 ms/op 1.00
altair processAttestation - setStatus - 100% committees join 1.1992 ms/op 1.1988 ms/op 1.00
altair processBlock - 250000 vs - 7PWei normalcase 26.050 ms/op 30.072 ms/op 0.87
altair processBlock - 250000 vs - 7PWei normalcase hashState 41.962 ms/op 41.037 ms/op 1.02
altair processBlock - 250000 vs - 7PWei worstcase 79.805 ms/op 78.620 ms/op 1.02
altair processBlock - 250000 vs - 7PWei worstcase hashState 96.456 ms/op 99.601 ms/op 0.97
phase0 processBlock - 250000 vs - 7PWei normalcase 3.8243 ms/op 3.8108 ms/op 1.00
phase0 processBlock - 250000 vs - 7PWei worstcase 49.258 ms/op 47.351 ms/op 1.04
altair processEth1Data - 250000 vs - 7PWei normalcase 793.51 us/op 896.60 us/op 0.89
Tree 40 250000 create 799.45 ms/op 744.25 ms/op 1.07
Tree 40 250000 get(125000) 289.93 ns/op 289.77 ns/op 1.00
Tree 40 250000 set(125000) 2.3894 us/op 2.5812 us/op 0.93
Tree 40 250000 toArray() 31.968 ms/op 35.692 ms/op 0.90
Tree 40 250000 iterate all - toArray() + loop 32.376 ms/op 36.042 ms/op 0.90
Tree 40 250000 iterate all - get(i) 110.93 ms/op 114.61 ms/op 0.97
MutableVector 250000 create 15.985 ms/op 15.489 ms/op 1.03
MutableVector 250000 get(125000) 14.768 ns/op 14.722 ns/op 1.00
MutableVector 250000 set(125000) 629.03 ns/op 651.33 ns/op 0.97
MutableVector 250000 toArray() 7.3050 ms/op 7.7779 ms/op 0.94
MutableVector 250000 iterate all - toArray() + loop 7.4745 ms/op 7.9369 ms/op 0.94
MutableVector 250000 iterate all - get(i) 3.4371 ms/op 3.4384 ms/op 1.00
Array 250000 create 6.9254 ms/op 7.0503 ms/op 0.98
Array 250000 clone - spread 3.7573 ms/op 3.7466 ms/op 1.00
Array 250000 get(125000) 1.5870 ns/op 1.5150 ns/op 1.05
Array 250000 set(125000) 1.5830 ns/op 1.5660 ns/op 1.01
Array 250000 iterate all - loop 167.83 us/op 169.40 us/op 0.99
effectiveBalanceIncrements clone Uint8Array 300000 88.048 us/op 87.685 us/op 1.00
effectiveBalanceIncrements clone MutableVector 300000 1.2150 us/op 1.2050 us/op 1.01
effectiveBalanceIncrements rw all Uint8Array 300000 252.51 us/op 252.59 us/op 1.00
effectiveBalanceIncrements rw all MutableVector 300000 208.29 ms/op 215.56 ms/op 0.97
phase0 afterProcessEpoch - 250000 vs - 7PWei 187.17 ms/op 190.40 ms/op 0.98
phase0 beforeProcessEpoch - 250000 vs - 7PWei 71.755 ms/op 94.218 ms/op 0.76
altair processEpoch - mainnet_e81889 586.03 ms/op 519.63 ms/op 1.13
mainnet_e81889 - altair beforeProcessEpoch 151.31 ms/op 119.44 ms/op 1.27
mainnet_e81889 - altair processJustificationAndFinalization 21.299 us/op 22.355 us/op 0.95
mainnet_e81889 - altair processInactivityUpdates 11.096 ms/op 11.601 ms/op 0.96
mainnet_e81889 - altair processRewardsAndPenalties 92.389 ms/op 96.393 ms/op 0.96
mainnet_e81889 - altair processRegistryUpdates 3.5060 us/op 3.8550 us/op 0.91
mainnet_e81889 - altair processSlashings 800.00 ns/op 976.00 ns/op 0.82
mainnet_e81889 - altair processEth1DataReset 810.00 ns/op 813.00 ns/op 1.00
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.4544 ms/op 2.2736 ms/op 1.08
mainnet_e81889 - altair processSlashingsReset 6.5040 us/op 5.6610 us/op 1.15
mainnet_e81889 - altair processRandaoMixesReset 5.5470 us/op 5.3540 us/op 1.04
mainnet_e81889 - altair processHistoricalRootsUpdate 829.00 ns/op 853.00 ns/op 0.97
mainnet_e81889 - altair processParticipationFlagUpdates 2.7010 us/op 2.5280 us/op 1.07
mainnet_e81889 - altair processSyncCommitteeUpdates 713.00 ns/op 644.00 ns/op 1.11
mainnet_e81889 - altair afterProcessEpoch 196.01 ms/op 199.09 ms/op 0.98
phase0 processEpoch - mainnet_e58758 524.49 ms/op 558.21 ms/op 0.94
mainnet_e58758 - phase0 beforeProcessEpoch 233.32 ms/op 253.40 ms/op 0.92
mainnet_e58758 - phase0 processJustificationAndFinalization 24.892 us/op 22.095 us/op 1.13
mainnet_e58758 - phase0 processRewardsAndPenalties 144.26 ms/op 151.18 ms/op 0.95
mainnet_e58758 - phase0 processRegistryUpdates 10.612 us/op 11.711 us/op 0.91
mainnet_e58758 - phase0 processSlashings 809.00 ns/op 921.00 ns/op 0.88
mainnet_e58758 - phase0 processEth1DataReset 758.00 ns/op 967.00 ns/op 0.78
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 2.1642 ms/op 2.0702 ms/op 1.05
mainnet_e58758 - phase0 processSlashingsReset 5.0650 us/op 5.9060 us/op 0.86
mainnet_e58758 - phase0 processRandaoMixesReset 7.4490 us/op 5.8450 us/op 1.27
mainnet_e58758 - phase0 processHistoricalRootsUpdate 865.00 ns/op 880.00 ns/op 0.98
mainnet_e58758 - phase0 processParticipationRecordUpdates 6.4870 us/op 5.0380 us/op 1.29
mainnet_e58758 - phase0 afterProcessEpoch 160.62 ms/op 163.25 ms/op 0.98
phase0 processEffectiveBalanceUpdates - 250000 normalcase 2.7098 ms/op 2.6259 ms/op 1.03
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.9785 ms/op 3.4695 ms/op 0.86
altair processInactivityUpdates - 250000 normalcase 42.808 ms/op 40.551 ms/op 1.06
altair processInactivityUpdates - 250000 worstcase 52.940 ms/op 42.026 ms/op 1.26
phase0 processRegistryUpdates - 250000 normalcase 8.0280 us/op 9.2740 us/op 0.87
phase0 processRegistryUpdates - 250000 badcase_full_deposits 413.97 us/op 412.59 us/op 1.00
phase0 processRegistryUpdates - 250000 worstcase 0.5 217.44 ms/op 201.66 ms/op 1.08
altair processRewardsAndPenalties - 250000 normalcase 127.02 ms/op 91.232 ms/op 1.39
altair processRewardsAndPenalties - 250000 worstcase 87.470 ms/op 132.69 ms/op 0.66
phase0 getAttestationDeltas - 250000 normalcase 12.971 ms/op 13.820 ms/op 0.94
phase0 getAttestationDeltas - 250000 worstcase 12.871 ms/op 13.679 ms/op 0.94
phase0 processSlashings - 250000 worstcase 5.3598 ms/op 5.5365 ms/op 0.97
altair processSyncCommitteeUpdates - 250000 280.07 ms/op 289.80 ms/op 0.97
BeaconState.hashTreeRoot - No change 508.00 ns/op 510.00 ns/op 1.00
BeaconState.hashTreeRoot - 1 full validator 62.741 us/op 64.561 us/op 0.97
BeaconState.hashTreeRoot - 32 full validator 619.55 us/op 619.62 us/op 1.00
BeaconState.hashTreeRoot - 512 full validator 6.5208 ms/op 6.6576 ms/op 0.98
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 82.811 us/op 82.382 us/op 1.01
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.1609 ms/op 1.2471 ms/op 0.93
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 15.510 ms/op 24.475 ms/op 0.63
BeaconState.hashTreeRoot - 1 balances 65.560 us/op 60.472 us/op 1.08
BeaconState.hashTreeRoot - 32 balances 765.56 us/op 538.99 us/op 1.42
BeaconState.hashTreeRoot - 512 balances 5.4740 ms/op 5.9044 ms/op 0.93
BeaconState.hashTreeRoot - 250000 balances 88.967 ms/op 79.956 ms/op 1.11
aggregationBits - 2048 els - zipIndexesInBitList 30.947 us/op 36.758 us/op 0.84
regular array get 100000 times 67.408 us/op 67.470 us/op 1.00
wrappedArray get 100000 times 67.422 us/op 67.439 us/op 1.00
arrayWithProxy get 100000 times 28.952 ms/op 29.025 ms/op 1.00
ssz.Root.equals 513.00 ns/op 510.00 ns/op 1.01
byteArrayEquals 499.00 ns/op 500.00 ns/op 1.00
shuffle list - 16384 els 11.266 ms/op 11.158 ms/op 1.01
shuffle list - 250000 els 165.71 ms/op 168.29 ms/op 0.98
processSlot - 1 slots 12.597 us/op 12.758 us/op 0.99
processSlot - 32 slots 1.7663 ms/op 1.9054 ms/op 0.93
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 374.88 us/op 389.45 us/op 0.96
getCommitteeAssignments - req 1 vs - 250000 vc 5.2719 ms/op 5.3447 ms/op 0.99
getCommitteeAssignments - req 100 vs - 250000 vc 7.3057 ms/op 7.3063 ms/op 1.00
getCommitteeAssignments - req 1000 vs - 250000 vc 7.8179 ms/op 7.7609 ms/op 1.01
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 9.6600 ns/op 10.110 ns/op 0.96
state getBlockRootAtSlot - 250000 vs - 7PWei 1.3105 us/op 1.2151 us/op 1.08
computeProposers - vc 250000 16.580 ms/op 17.350 ms/op 0.96
computeEpochShuffling - vc 250000 169.75 ms/op 171.87 ms/op 0.99
getNextSyncCommittee - vc 250000 276.78 ms/op 287.20 ms/op 0.96

by benchmarkbot/action

@twoeths twoeths merged commit 8fb0d8b into unstable Sep 23, 2022
@dapplion
Copy link
Contributor

yay 馃コ clean stable -> unstable merge

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

3 participants