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

chore: merge stable to unstable #5679

Merged
merged 2 commits into from
Jun 22, 2023
Merged

chore: merge stable to unstable #5679

merged 2 commits into from
Jun 22, 2023

Conversation

twoeths
Copy link
Contributor

@twoeths twoeths commented Jun 22, 2023

Motivation

Merged rc/v1.9.0 to stable, now need to merge stable to unstable

@twoeths twoeths requested a review from a team as a code owner June 22, 2023 02:06
@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 92e9805 Previous: 9e57b7d Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 484.40 us/op 618.54 us/op 0.78
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 45.898 us/op 47.050 us/op 0.98
BLS verify - blst-native 1.2073 ms/op 1.2543 ms/op 0.96
BLS verifyMultipleSignatures 3 - blst-native 2.4548 ms/op 2.6148 ms/op 0.94
BLS verifyMultipleSignatures 8 - blst-native 5.3245 ms/op 5.2828 ms/op 1.01
BLS verifyMultipleSignatures 32 - blst-native 19.174 ms/op 19.258 ms/op 1.00
BLS aggregatePubkeys 32 - blst-native 25.419 us/op 26.006 us/op 0.98
BLS aggregatePubkeys 128 - blst-native 99.296 us/op 102.70 us/op 0.97
getAttestationsForBlock 55.398 ms/op 64.607 ms/op 0.86
isKnown best case - 1 super set check 252.00 ns/op 268.00 ns/op 0.94
isKnown normal case - 2 super set checks 246.00 ns/op 268.00 ns/op 0.92
isKnown worse case - 16 super set checks 249.00 ns/op 267.00 ns/op 0.93
CheckpointStateCache - add get delete 5.2300 us/op 5.2850 us/op 0.99
validate gossip signedAggregateAndProof - struct 2.7333 ms/op 2.8605 ms/op 0.96
validate gossip attestation - struct 1.3076 ms/op 1.3760 ms/op 0.95
pickEth1Vote - no votes 1.2512 ms/op 1.2900 ms/op 0.97
pickEth1Vote - max votes 8.9262 ms/op 10.928 ms/op 0.82
pickEth1Vote - Eth1Data hashTreeRoot value x2048 8.4431 ms/op 8.8318 ms/op 0.96
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 13.016 ms/op 18.468 ms/op 0.70
pickEth1Vote - Eth1Data fastSerialize value x2048 638.98 us/op 724.31 us/op 0.88
pickEth1Vote - Eth1Data fastSerialize tree x2048 4.5037 ms/op 8.8347 ms/op 0.51
bytes32 toHexString 498.00 ns/op 544.00 ns/op 0.92
bytes32 Buffer.toString(hex) 340.00 ns/op 391.00 ns/op 0.87
bytes32 Buffer.toString(hex) from Uint8Array 534.00 ns/op 607.00 ns/op 0.88
bytes32 Buffer.toString(hex) + 0x 349.00 ns/op 408.00 ns/op 0.86
Object access 1 prop 0.16600 ns/op 0.19800 ns/op 0.84
Map access 1 prop 0.15600 ns/op 0.17600 ns/op 0.89
Object get x1000 6.2450 ns/op 6.6780 ns/op 0.94
Map get x1000 0.61500 ns/op 0.61800 ns/op 1.00
Object set x1000 52.414 ns/op 61.303 ns/op 0.85
Map set x1000 44.653 ns/op 47.256 ns/op 0.94
Return object 10000 times 0.23630 ns/op 0.24830 ns/op 0.95
Throw Error 10000 times 4.1869 us/op 4.6202 us/op 0.91
fastMsgIdFn sha256 / 200 bytes 3.4050 us/op 3.6990 us/op 0.92
fastMsgIdFn h32 xxhash / 200 bytes 295.00 ns/op 323.00 ns/op 0.91
fastMsgIdFn h64 xxhash / 200 bytes 414.00 ns/op 445.00 ns/op 0.93
fastMsgIdFn sha256 / 1000 bytes 11.468 us/op 12.849 us/op 0.89
fastMsgIdFn h32 xxhash / 1000 bytes 414.00 ns/op 444.00 ns/op 0.93
fastMsgIdFn h64 xxhash / 1000 bytes 473.00 ns/op 532.00 ns/op 0.89
fastMsgIdFn sha256 / 10000 bytes 103.15 us/op 105.40 us/op 0.98
fastMsgIdFn h32 xxhash / 10000 bytes 1.9560 us/op 1.9750 us/op 0.99
fastMsgIdFn h64 xxhash / 10000 bytes 1.3930 us/op 1.4780 us/op 0.94
enrSubnets - fastDeserialize 64 bits 1.3420 us/op 1.4720 us/op 0.91
enrSubnets - ssz BitVector 64 bits 517.00 ns/op 547.00 ns/op 0.95
enrSubnets - fastDeserialize 4 bits 177.00 ns/op 171.00 ns/op 1.04
enrSubnets - ssz BitVector 4 bits 510.00 ns/op 503.00 ns/op 1.01
prioritizePeers score -10:0 att 32-0.1 sync 2-0 101.82 us/op 109.29 us/op 0.93
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 146.39 us/op 151.18 us/op 0.97
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 179.24 us/op 190.67 us/op 0.94
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 302.98 us/op 325.06 us/op 0.93
prioritizePeers score 0:0 att 64-1 sync 4-1 368.15 us/op 399.40 us/op 0.92
array of 16000 items push then shift 1.6153 us/op 1.7418 us/op 0.93
LinkedList of 16000 items push then shift 8.7040 ns/op 9.5000 ns/op 0.92
array of 16000 items push then pop 87.455 ns/op 104.73 ns/op 0.84
LinkedList of 16000 items push then pop 8.4010 ns/op 9.2090 ns/op 0.91
array of 24000 items push then shift 2.3579 us/op 2.5099 us/op 0.94
LinkedList of 24000 items push then shift 8.6630 ns/op 10.557 ns/op 0.82
array of 24000 items push then pop 71.743 ns/op 85.872 ns/op 0.84
LinkedList of 24000 items push then pop 8.4480 ns/op 9.1750 ns/op 0.92
intersect bitArray bitLen 8 13.138 ns/op 14.032 ns/op 0.94
intersect array and set length 8 74.874 ns/op 81.286 ns/op 0.92
intersect bitArray bitLen 128 43.814 ns/op 46.810 ns/op 0.94
intersect array and set length 128 1.0408 us/op 1.0870 us/op 0.96
Buffer.concat 32 items 2.5770 us/op 2.7320 us/op 0.94
Uint8Array.set 32 items 2.1190 us/op 2.5650 us/op 0.83
transfer serialized Status (84 B) 1.9890 us/op 2.2630 us/op 0.88
copy serialized Status (84 B) 1.6850 us/op 1.8580 us/op 0.91
transfer serialized SignedVoluntaryExit (112 B) 2.0550 us/op 2.2130 us/op 0.93
copy serialized SignedVoluntaryExit (112 B) 1.7090 us/op 1.9800 us/op 0.86
transfer serialized ProposerSlashing (416 B) 2.2310 us/op 2.6280 us/op 0.85
copy serialized ProposerSlashing (416 B) 2.0740 us/op 2.3940 us/op 0.87
transfer serialized Attestation (485 B) 2.7170 us/op 2.4560 us/op 1.11
copy serialized Attestation (485 B) 2.7820 us/op 2.1980 us/op 1.27
transfer serialized AttesterSlashing (33232 B) 2.6870 us/op 2.4090 us/op 1.12
copy serialized AttesterSlashing (33232 B) 5.7630 us/op 5.6940 us/op 1.01
transfer serialized Small SignedBeaconBlock (128000 B) 2.8990 us/op 2.7130 us/op 1.07
copy serialized Small SignedBeaconBlock (128000 B) 13.856 us/op 14.554 us/op 0.95
transfer serialized Avg SignedBeaconBlock (200000 B) 3.3350 us/op 3.0510 us/op 1.09
copy serialized Avg SignedBeaconBlock (200000 B) 19.771 us/op 21.663 us/op 0.91
transfer serialized BlobsSidecar (524380 B) 3.3440 us/op 3.1720 us/op 1.05
copy serialized BlobsSidecar (524380 B) 185.68 us/op 196.70 us/op 0.94
transfer serialized Big SignedBeaconBlock (1000000 B) 3.5300 us/op 3.2510 us/op 1.09
copy serialized Big SignedBeaconBlock (1000000 B) 268.75 us/op 295.17 us/op 0.91
pass gossip attestations to forkchoice per slot 2.6125 ms/op 2.7532 ms/op 0.95
forkChoice updateHead vc 100000 bc 64 eq 0 2.1067 ms/op 2.5097 ms/op 0.84
forkChoice updateHead vc 600000 bc 64 eq 0 12.513 ms/op 12.048 ms/op 1.04
forkChoice updateHead vc 1000000 bc 64 eq 0 19.132 ms/op 19.319 ms/op 0.99
forkChoice updateHead vc 600000 bc 320 eq 0 16.486 ms/op 17.339 ms/op 0.95
forkChoice updateHead vc 600000 bc 1200 eq 0 80.132 ms/op 91.262 ms/op 0.88
forkChoice updateHead vc 600000 bc 64 eq 1000 20.565 ms/op 21.551 ms/op 0.95
forkChoice updateHead vc 600000 bc 64 eq 10000 21.996 ms/op 24.553 ms/op 0.90
forkChoice updateHead vc 600000 bc 64 eq 300000 31.029 ms/op 34.560 ms/op 0.90
computeDeltas 3.0994 ms/op 4.0315 ms/op 0.77
computeProposerBoostScoreFromBalances 1.7724 ms/op 1.8415 ms/op 0.96
altair processAttestation - 250000 vs - 7PWei normalcase 2.1713 ms/op 2.6204 ms/op 0.83
altair processAttestation - 250000 vs - 7PWei worstcase 3.4636 ms/op 3.6288 ms/op 0.95
altair processAttestation - setStatus - 1/6 committees join 140.79 us/op 148.36 us/op 0.95
altair processAttestation - setStatus - 1/3 committees join 276.25 us/op 287.81 us/op 0.96
altair processAttestation - setStatus - 1/2 committees join 371.44 us/op 379.28 us/op 0.98
altair processAttestation - setStatus - 2/3 committees join 463.01 us/op 481.65 us/op 0.96
altair processAttestation - setStatus - 4/5 committees join 660.55 us/op 687.03 us/op 0.96
altair processAttestation - setStatus - 100% committees join 777.89 us/op 773.69 us/op 1.01
altair processBlock - 250000 vs - 7PWei normalcase 16.084 ms/op 19.235 ms/op 0.84
altair processBlock - 250000 vs - 7PWei normalcase hashState 23.005 ms/op 27.414 ms/op 0.84
altair processBlock - 250000 vs - 7PWei worstcase 48.545 ms/op 58.144 ms/op 0.83
altair processBlock - 250000 vs - 7PWei worstcase hashState 65.098 ms/op 81.321 ms/op 0.80
phase0 processBlock - 250000 vs - 7PWei normalcase 2.0694 ms/op 2.1093 ms/op 0.98
phase0 processBlock - 250000 vs - 7PWei worstcase 28.423 ms/op 29.657 ms/op 0.96
altair processEth1Data - 250000 vs - 7PWei normalcase 462.05 us/op 469.38 us/op 0.98
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 6.8610 us/op 8.5360 us/op 0.80
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 20.427 us/op 19.887 us/op 1.03
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 9.4180 us/op 13.088 us/op 0.72
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 6.6150 us/op 6.1860 us/op 1.07
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 74.495 us/op 87.705 us/op 0.85
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 616.02 us/op 1.2506 ms/op 0.49
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 795.90 us/op 1.3935 ms/op 0.57
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 882.21 us/op 1.0407 ms/op 0.85
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.2765 ms/op 2.3894 ms/op 0.95
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.6725 ms/op 2.2306 ms/op 0.75
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.8384 ms/op 3.9050 ms/op 0.98
Tree 40 250000 create 315.92 ms/op 324.95 ms/op 0.97
Tree 40 250000 get(125000) 179.24 ns/op 192.42 ns/op 0.93
Tree 40 250000 set(125000) 995.40 ns/op 999.17 ns/op 1.00
Tree 40 250000 toArray() 20.673 ms/op 19.792 ms/op 1.04
Tree 40 250000 iterate all - toArray() + loop 17.519 ms/op 20.427 ms/op 0.86
Tree 40 250000 iterate all - get(i) 67.405 ms/op 75.642 ms/op 0.89
MutableVector 250000 create 9.0142 ms/op 13.226 ms/op 0.68
MutableVector 250000 get(125000) 6.1880 ns/op 6.6350 ns/op 0.93
MutableVector 250000 set(125000) 254.78 ns/op 276.40 ns/op 0.92
MutableVector 250000 toArray() 2.7666 ms/op 3.0660 ms/op 0.90
MutableVector 250000 iterate all - toArray() + loop 2.7750 ms/op 3.4344 ms/op 0.81
MutableVector 250000 iterate all - get(i) 1.4838 ms/op 1.5520 ms/op 0.96
Array 250000 create 2.5466 ms/op 2.6868 ms/op 0.95
Array 250000 clone - spread 1.2236 ms/op 1.2420 ms/op 0.99
Array 250000 get(125000) 0.60000 ns/op 0.65200 ns/op 0.92
Array 250000 set(125000) 0.66000 ns/op 0.73500 ns/op 0.90
Array 250000 iterate all - loop 106.56 us/op 91.078 us/op 1.17
effectiveBalanceIncrements clone Uint8Array 300000 38.706 us/op 46.339 us/op 0.84
effectiveBalanceIncrements clone MutableVector 300000 373.00 ns/op 390.00 ns/op 0.96
effectiveBalanceIncrements rw all Uint8Array 300000 162.63 us/op 173.12 us/op 0.94
effectiveBalanceIncrements rw all MutableVector 300000 85.348 ms/op 91.917 ms/op 0.93
phase0 afterProcessEpoch - 250000 vs - 7PWei 114.09 ms/op 122.04 ms/op 0.93
phase0 beforeProcessEpoch - 250000 vs - 7PWei 34.372 ms/op 44.444 ms/op 0.77
altair processEpoch - mainnet_e81889 324.49 ms/op 331.80 ms/op 0.98
mainnet_e81889 - altair beforeProcessEpoch 68.261 ms/op 64.539 ms/op 1.06
mainnet_e81889 - altair processJustificationAndFinalization 16.115 us/op 23.697 us/op 0.68
mainnet_e81889 - altair processInactivityUpdates 5.3501 ms/op 6.3097 ms/op 0.85
mainnet_e81889 - altair processRewardsAndPenalties 51.577 ms/op 78.959 ms/op 0.65
mainnet_e81889 - altair processRegistryUpdates 2.5100 us/op 2.8750 us/op 0.87
mainnet_e81889 - altair processSlashings 453.00 ns/op 620.00 ns/op 0.73
mainnet_e81889 - altair processEth1DataReset 652.00 ns/op 772.00 ns/op 0.84
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.2864 ms/op 1.4216 ms/op 0.90
mainnet_e81889 - altair processSlashingsReset 3.7790 us/op 7.1410 us/op 0.53
mainnet_e81889 - altair processRandaoMixesReset 7.4200 us/op 5.7760 us/op 1.28
mainnet_e81889 - altair processHistoricalRootsUpdate 990.00 ns/op 1.2030 us/op 0.82
mainnet_e81889 - altair processParticipationFlagUpdates 2.5690 us/op 3.1890 us/op 0.81
mainnet_e81889 - altair processSyncCommitteeUpdates 617.00 ns/op 865.00 ns/op 0.71
mainnet_e81889 - altair afterProcessEpoch 131.67 ms/op 142.57 ms/op 0.92
phase0 processEpoch - mainnet_e58758 348.08 ms/op 402.92 ms/op 0.86
mainnet_e58758 - phase0 beforeProcessEpoch 144.52 ms/op 155.30 ms/op 0.93
mainnet_e58758 - phase0 processJustificationAndFinalization 16.073 us/op 22.658 us/op 0.71
mainnet_e58758 - phase0 processRewardsAndPenalties 66.229 ms/op 69.314 ms/op 0.96
mainnet_e58758 - phase0 processRegistryUpdates 7.8890 us/op 12.562 us/op 0.63
mainnet_e58758 - phase0 processSlashings 552.00 ns/op 985.00 ns/op 0.56
mainnet_e58758 - phase0 processEth1DataReset 546.00 ns/op 729.00 ns/op 0.75
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.1362 ms/op 1.2411 ms/op 0.92
mainnet_e58758 - phase0 processSlashingsReset 4.7060 us/op 7.0660 us/op 0.67
mainnet_e58758 - phase0 processRandaoMixesReset 6.0900 us/op 6.9280 us/op 0.88
mainnet_e58758 - phase0 processHistoricalRootsUpdate 647.00 ns/op 1.0550 us/op 0.61
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.1370 us/op 6.0340 us/op 0.69
mainnet_e58758 - phase0 afterProcessEpoch 101.30 ms/op 102.17 ms/op 0.99
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.2556 ms/op 1.3062 ms/op 0.96
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.5616 ms/op 1.5105 ms/op 1.03
altair processInactivityUpdates - 250000 normalcase 28.970 ms/op 29.002 ms/op 1.00
altair processInactivityUpdates - 250000 worstcase 29.030 ms/op 27.893 ms/op 1.04
phase0 processRegistryUpdates - 250000 normalcase 7.2080 us/op 9.0540 us/op 0.80
phase0 processRegistryUpdates - 250000 badcase_full_deposits 268.27 us/op 366.42 us/op 0.73
phase0 processRegistryUpdates - 250000 worstcase 0.5 139.43 ms/op 150.53 ms/op 0.93
altair processRewardsAndPenalties - 250000 normalcase 67.985 ms/op 75.835 ms/op 0.90
altair processRewardsAndPenalties - 250000 worstcase 72.045 ms/op 98.681 ms/op 0.73
phase0 getAttestationDeltas - 250000 normalcase 7.0321 ms/op 13.123 ms/op 0.54
phase0 getAttestationDeltas - 250000 worstcase 6.8745 ms/op 10.315 ms/op 0.67
phase0 processSlashings - 250000 worstcase 3.4950 ms/op 4.1540 ms/op 0.84
altair processSyncCommitteeUpdates - 250000 180.88 ms/op 262.54 ms/op 0.69
BeaconState.hashTreeRoot - No change 335.00 ns/op 389.00 ns/op 0.86
BeaconState.hashTreeRoot - 1 full validator 52.775 us/op 69.655 us/op 0.76
BeaconState.hashTreeRoot - 32 full validator 482.60 us/op 674.58 us/op 0.72
BeaconState.hashTreeRoot - 512 full validator 5.5126 ms/op 7.8286 ms/op 0.70
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 60.469 us/op 82.904 us/op 0.73
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 917.56 us/op 1.2685 ms/op 0.72
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 11.370 ms/op 17.744 ms/op 0.64
BeaconState.hashTreeRoot - 1 balances 51.856 us/op 64.322 us/op 0.81
BeaconState.hashTreeRoot - 32 balances 443.32 us/op 632.10 us/op 0.70
BeaconState.hashTreeRoot - 512 balances 4.2386 ms/op 6.9863 ms/op 0.61
BeaconState.hashTreeRoot - 250000 balances 77.262 ms/op 101.38 ms/op 0.76
aggregationBits - 2048 els - zipIndexesInBitList 16.364 us/op 34.100 us/op 0.48
regular array get 100000 times 32.753 us/op 55.916 us/op 0.59
wrappedArray get 100000 times 32.743 us/op 65.836 us/op 0.50
arrayWithProxy get 100000 times 15.328 ms/op 24.859 ms/op 0.62
ssz.Root.equals 545.00 ns/op 847.00 ns/op 0.64
byteArrayEquals 541.00 ns/op 835.00 ns/op 0.65
shuffle list - 16384 els 6.8168 ms/op 8.3242 ms/op 0.82
shuffle list - 250000 els 100.58 ms/op 136.43 ms/op 0.74
processSlot - 1 slots 9.2280 us/op 16.107 us/op 0.57
processSlot - 32 slots 1.3360 ms/op 1.7136 ms/op 0.78
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 36.339 ms/op 49.121 ms/op 0.74
getCommitteeAssignments - req 1 vs - 250000 vc 2.9038 ms/op 3.9612 ms/op 0.73
getCommitteeAssignments - req 100 vs - 250000 vc 3.9255 ms/op 5.5619 ms/op 0.71
getCommitteeAssignments - req 1000 vs - 250000 vc 4.3428 ms/op 5.5835 ms/op 0.78
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.8000 ns/op 8.5500 ns/op 0.56
state getBlockRootAtSlot - 250000 vs - 7PWei 725.15 ns/op 860.83 ns/op 0.84
computeProposers - vc 250000 10.158 ms/op 12.939 ms/op 0.79
computeEpochShuffling - vc 250000 101.44 ms/op 151.77 ms/op 0.67
getNextSyncCommittee - vc 250000 173.02 ms/op 291.45 ms/op 0.59
computeSigningRoot for AttestationData 13.927 us/op 19.902 us/op 0.70
hash AttestationData serialized data then Buffer.toString(base64) 2.3138 us/op 3.0234 us/op 0.77
toHexString serialized data 1.0275 us/op 2.0122 us/op 0.51
Buffer.toString(base64) 307.74 ns/op 557.65 ns/op 0.55

by benchmarkbot/action

@twoeths twoeths merged commit 498ee3e into unstable Jun 22, 2023
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.10.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