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

Upgrade spec to v1.3.0-rc.2-hotfix #5147

Merged
merged 2 commits into from
Feb 14, 2023

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Feb 14, 2023

Upgrade spec to v1.3.0-rc.2-hotfix

Right now skips 2 new tests added in v1.3.0-rc.2-hotfix regarding light sync beacon block merkle proofs, to be enabled in a followup PR

@g11tech g11tech requested a review from a team as a code owner February 14, 2023 09:26
@github-actions
Copy link
Contributor

github-actions bot commented Feb 14, 2023

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: d238cdf Previous: 4cec93e Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 971.66 us/op 502.86 us/op 1.93
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 49.614 us/op 45.782 us/op 1.08
BLS verify - blst-native 1.2215 ms/op 1.2111 ms/op 1.01
BLS verifyMultipleSignatures 3 - blst-native 2.4851 ms/op 2.4632 ms/op 1.01
BLS verifyMultipleSignatures 8 - blst-native 5.3267 ms/op 5.2826 ms/op 1.01
BLS verifyMultipleSignatures 32 - blst-native 19.332 ms/op 18.996 ms/op 1.02
BLS aggregatePubkeys 32 - blst-native 25.871 us/op 25.549 us/op 1.01
BLS aggregatePubkeys 128 - blst-native 100.56 us/op 100.18 us/op 1.00
getAttestationsForBlock 64.467 ms/op 57.158 ms/op 1.13
isKnown best case - 1 super set check 282.00 ns/op 277.00 ns/op 1.02
isKnown normal case - 2 super set checks 280.00 ns/op 269.00 ns/op 1.04
isKnown worse case - 16 super set checks 277.00 ns/op 264.00 ns/op 1.05
CheckpointStateCache - add get delete 6.3860 us/op 5.2570 us/op 1.21
validate gossip signedAggregateAndProof - struct 2.9848 ms/op 2.7790 ms/op 1.07
validate gossip attestation - struct 1.3377 ms/op 1.3179 ms/op 1.02
pickEth1Vote - no votes 1.4193 ms/op 1.2642 ms/op 1.12
pickEth1Vote - max votes 12.882 ms/op 8.8716 ms/op 1.45
pickEth1Vote - Eth1Data hashTreeRoot value x2048 9.5500 ms/op 8.5898 ms/op 1.11
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 17.870 ms/op 13.427 ms/op 1.33
pickEth1Vote - Eth1Data fastSerialize value x2048 745.28 us/op 643.47 us/op 1.16
pickEth1Vote - Eth1Data fastSerialize tree x2048 5.6743 ms/op 4.5120 ms/op 1.26
bytes32 toHexString 548.00 ns/op 487.00 ns/op 1.13
bytes32 Buffer.toString(hex) 387.00 ns/op 335.00 ns/op 1.16
bytes32 Buffer.toString(hex) from Uint8Array 590.00 ns/op 552.00 ns/op 1.07
bytes32 Buffer.toString(hex) + 0x 383.00 ns/op 348.00 ns/op 1.10
Object access 1 prop 0.18400 ns/op 0.16900 ns/op 1.09
Map access 1 prop 0.16600 ns/op 0.16200 ns/op 1.02
Object get x1000 6.4560 ns/op 6.7380 ns/op 0.96
Map get x1000 0.64900 ns/op 0.55600 ns/op 1.17
Object set x1000 61.044 ns/op 53.068 ns/op 1.15
Map set x1000 48.150 ns/op 43.205 ns/op 1.11
Return object 10000 times 0.24120 ns/op 0.23980 ns/op 1.01
Throw Error 10000 times 4.2296 us/op 4.0672 us/op 1.04
fastMsgIdFn sha256 / 200 bytes 3.5350 us/op 3.4260 us/op 1.03
fastMsgIdFn h32 xxhash / 200 bytes 316.00 ns/op 274.00 ns/op 1.15
fastMsgIdFn h64 xxhash / 200 bytes 485.00 ns/op 383.00 ns/op 1.27
fastMsgIdFn sha256 / 1000 bytes 11.826 us/op 11.466 us/op 1.03
fastMsgIdFn h32 xxhash / 1000 bytes 467.00 ns/op 393.00 ns/op 1.19
fastMsgIdFn h64 xxhash / 1000 bytes 574.00 ns/op 445.00 ns/op 1.29
fastMsgIdFn sha256 / 10000 bytes 103.83 us/op 102.96 us/op 1.01
fastMsgIdFn h32 xxhash / 10000 bytes 1.9830 us/op 1.9040 us/op 1.04
fastMsgIdFn h64 xxhash / 10000 bytes 1.4750 us/op 1.3310 us/op 1.11
enrSubnets - fastDeserialize 64 bits 1.4670 us/op 1.2770 us/op 1.15
enrSubnets - ssz BitVector 64 bits 575.00 ns/op 481.00 ns/op 1.20
enrSubnets - fastDeserialize 4 bits 196.00 ns/op 169.00 ns/op 1.16
enrSubnets - ssz BitVector 4 bits 558.00 ns/op 479.00 ns/op 1.16
prioritizePeers score -10:0 att 32-0.1 sync 2-0 103.04 us/op 93.220 us/op 1.11
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 138.40 us/op 123.69 us/op 1.12
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 193.24 us/op 190.08 us/op 1.02
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 357.80 us/op 298.68 us/op 1.20
prioritizePeers score 0:0 att 64-1 sync 4-1 439.22 us/op 353.22 us/op 1.24
array of 16000 items push then shift 1.6766 us/op 1.6024 us/op 1.05
LinkedList of 16000 items push then shift 9.0580 ns/op 8.6120 ns/op 1.05
array of 16000 items push then pop 117.07 ns/op 85.515 ns/op 1.37
LinkedList of 16000 items push then pop 9.0380 ns/op 8.4190 ns/op 1.07
array of 24000 items push then shift 2.3694 us/op 2.2952 us/op 1.03
LinkedList of 24000 items push then shift 9.1120 ns/op 8.7030 ns/op 1.05
array of 24000 items push then pop 89.321 ns/op 77.888 ns/op 1.15
LinkedList of 24000 items push then pop 8.9380 ns/op 8.4980 ns/op 1.05
intersect bitArray bitLen 8 15.745 ns/op 13.081 ns/op 1.20
intersect array and set length 8 96.854 ns/op 73.807 ns/op 1.31
intersect bitArray bitLen 128 46.452 ns/op 43.501 ns/op 1.07
intersect array and set length 128 1.3084 us/op 1.0195 us/op 1.28
Buffer.concat 32 items 2.8420 us/op 2.5980 us/op 1.09
Uint8Array.set 32 items 3.1380 us/op 2.1700 us/op 1.45
pass gossip attestations to forkchoice per slot 4.1451 ms/op 2.2845 ms/op 1.81
computeDeltas 3.3625 ms/op 3.3002 ms/op 1.02
computeProposerBoostScoreFromBalances 1.9574 ms/op 1.7708 ms/op 1.11
altair processAttestation - 250000 vs - 7PWei normalcase 3.3775 ms/op 2.1230 ms/op 1.59
altair processAttestation - 250000 vs - 7PWei worstcase 4.9729 ms/op 3.3531 ms/op 1.48
altair processAttestation - setStatus - 1/6 committees join 152.99 us/op 136.65 us/op 1.12
altair processAttestation - setStatus - 1/3 committees join 291.56 us/op 269.97 us/op 1.08
altair processAttestation - setStatus - 1/2 committees join 381.48 us/op 360.39 us/op 1.06
altair processAttestation - setStatus - 2/3 committees join 481.46 us/op 456.30 us/op 1.06
altair processAttestation - setStatus - 4/5 committees join 687.59 us/op 639.15 us/op 1.08
altair processAttestation - setStatus - 100% committees join 809.18 us/op 762.98 us/op 1.06
altair processBlock - 250000 vs - 7PWei normalcase 19.058 ms/op 17.047 ms/op 1.12
altair processBlock - 250000 vs - 7PWei normalcase hashState 27.876 ms/op 25.433 ms/op 1.10
altair processBlock - 250000 vs - 7PWei worstcase 55.237 ms/op 51.356 ms/op 1.08
altair processBlock - 250000 vs - 7PWei worstcase hashState 74.866 ms/op 66.497 ms/op 1.13
phase0 processBlock - 250000 vs - 7PWei normalcase 2.4539 ms/op 2.0127 ms/op 1.22
phase0 processBlock - 250000 vs - 7PWei worstcase 32.986 ms/op 28.564 ms/op 1.15
altair processEth1Data - 250000 vs - 7PWei normalcase 616.92 us/op 462.95 us/op 1.33
vc - 250000 eb 1 eth1 1 we 0 wn 0 - smpl 15 10.416 us/op 7.3190 us/op 1.42
vc - 250000 eb 0.95 eth1 0.1 we 0.05 wn 0 - smpl 219 32.928 us/op 25.566 us/op 1.29
vc - 250000 eb 0.95 eth1 0.3 we 0.05 wn 0 - smpl 42 13.445 us/op 8.8620 us/op 1.52
vc - 250000 eb 0.95 eth1 0.7 we 0.05 wn 0 - smpl 18 10.467 us/op 7.1950 us/op 1.45
vc - 250000 eb 0.1 eth1 0.1 we 0 wn 0 - smpl 1020 116.11 us/op 82.178 us/op 1.41
vc - 250000 eb 0.03 eth1 0.03 we 0 wn 0 - smpl 11777 669.50 us/op 655.07 us/op 1.02
vc - 250000 eb 0.01 eth1 0.01 we 0 wn 0 - smpl 16384 933.69 us/op 898.20 us/op 1.04
vc - 250000 eb 0 eth1 0 we 0 wn 0 - smpl 16384 910.36 us/op 867.25 us/op 1.05
vc - 250000 eb 0 eth1 0 we 0 wn 0 nocache - smpl 16384 2.4536 ms/op 2.3133 ms/op 1.06
vc - 250000 eb 0 eth1 1 we 0 wn 0 - smpl 16384 1.7688 ms/op 1.4629 ms/op 1.21
vc - 250000 eb 0 eth1 1 we 0 wn 0 nocache - smpl 16384 5.5339 ms/op 4.1564 ms/op 1.33
Tree 40 250000 create 457.91 ms/op 343.73 ms/op 1.33
Tree 40 250000 get(125000) 200.26 ns/op 190.85 ns/op 1.05
Tree 40 250000 set(125000) 1.3064 us/op 1.0179 us/op 1.28
Tree 40 250000 toArray() 23.017 ms/op 22.134 ms/op 1.04
Tree 40 250000 iterate all - toArray() + loop 23.310 ms/op 22.416 ms/op 1.04
Tree 40 250000 iterate all - get(i) 78.784 ms/op 74.668 ms/op 1.06
MutableVector 250000 create 12.239 ms/op 10.178 ms/op 1.20
MutableVector 250000 get(125000) 6.4530 ns/op 6.2340 ns/op 1.04
MutableVector 250000 set(125000) 296.52 ns/op 266.00 ns/op 1.11
MutableVector 250000 toArray() 3.7045 ms/op 3.1123 ms/op 1.19
MutableVector 250000 iterate all - toArray() + loop 3.8419 ms/op 2.9197 ms/op 1.32
MutableVector 250000 iterate all - get(i) 1.5610 ms/op 1.4986 ms/op 1.04
Array 250000 create 3.7573 ms/op 2.4677 ms/op 1.52
Array 250000 clone - spread 1.3471 ms/op 1.0781 ms/op 1.25
Array 250000 get(125000) 0.71700 ns/op 0.55400 ns/op 1.29
Array 250000 set(125000) 0.93900 ns/op 0.61700 ns/op 1.52
Array 250000 iterate all - loop 95.567 us/op 109.32 us/op 0.87
effectiveBalanceIncrements clone Uint8Array 300000 49.164 us/op 29.113 us/op 1.69
effectiveBalanceIncrements clone MutableVector 300000 420.00 ns/op 338.00 ns/op 1.24
effectiveBalanceIncrements rw all Uint8Array 300000 173.36 us/op 166.54 us/op 1.04
effectiveBalanceIncrements rw all MutableVector 300000 127.69 ms/op 78.676 ms/op 1.62
phase0 afterProcessEpoch - 250000 vs - 7PWei 118.18 ms/op 112.54 ms/op 1.05
phase0 beforeProcessEpoch - 250000 vs - 7PWei 38.482 ms/op 41.511 ms/op 0.93
altair processEpoch - mainnet_e81889 312.23 ms/op 335.22 ms/op 0.93
mainnet_e81889 - altair beforeProcessEpoch 69.409 ms/op 65.791 ms/op 1.05
mainnet_e81889 - altair processJustificationAndFinalization 21.307 us/op 18.027 us/op 1.18
mainnet_e81889 - altair processInactivityUpdates 6.3437 ms/op 5.2674 ms/op 1.20
mainnet_e81889 - altair processRewardsAndPenalties 71.579 ms/op 65.025 ms/op 1.10
mainnet_e81889 - altair processRegistryUpdates 3.3700 us/op 3.0340 us/op 1.11
mainnet_e81889 - altair processSlashings 662.00 ns/op 465.00 ns/op 1.42
mainnet_e81889 - altair processEth1DataReset 845.00 ns/op 503.00 ns/op 1.68
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.2904 ms/op 1.2407 ms/op 1.04
mainnet_e81889 - altair processSlashingsReset 7.5710 us/op 4.6940 us/op 1.61
mainnet_e81889 - altair processRandaoMixesReset 11.180 us/op 4.4470 us/op 2.51
mainnet_e81889 - altair processHistoricalRootsUpdate 1.1590 us/op 648.00 ns/op 1.79
mainnet_e81889 - altair processParticipationFlagUpdates 3.1640 us/op 2.4090 us/op 1.31
mainnet_e81889 - altair processSyncCommitteeUpdates 972.00 ns/op 516.00 ns/op 1.88
mainnet_e81889 - altair afterProcessEpoch 132.70 ms/op 115.98 ms/op 1.14
phase0 processEpoch - mainnet_e58758 418.88 ms/op 312.07 ms/op 1.34
mainnet_e58758 - phase0 beforeProcessEpoch 201.26 ms/op 120.57 ms/op 1.67
mainnet_e58758 - phase0 processJustificationAndFinalization 33.680 us/op 15.841 us/op 2.13
mainnet_e58758 - phase0 processRewardsAndPenalties 84.429 ms/op 52.409 ms/op 1.61
mainnet_e58758 - phase0 processRegistryUpdates 14.920 us/op 7.9270 us/op 1.88
mainnet_e58758 - phase0 processSlashings 1.2920 us/op 509.00 ns/op 2.54
mainnet_e58758 - phase0 processEth1DataReset 1.3940 us/op 502.00 ns/op 2.78
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.9047 ms/op 944.78 us/op 2.02
mainnet_e58758 - phase0 processSlashingsReset 7.6090 us/op 3.1480 us/op 2.42
mainnet_e58758 - phase0 processRandaoMixesReset 10.088 us/op 4.7840 us/op 2.11
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.6900 us/op 559.00 ns/op 3.02
mainnet_e58758 - phase0 processParticipationRecordUpdates 7.1440 us/op 3.9740 us/op 1.80
mainnet_e58758 - phase0 afterProcessEpoch 106.37 ms/op 95.524 ms/op 1.11
phase0 processEffectiveBalanceUpdates - 250000 normalcase 2.0708 ms/op 1.2161 ms/op 1.70
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.1632 ms/op 1.4597 ms/op 1.48
altair processInactivityUpdates - 250000 normalcase 33.772 ms/op 22.872 ms/op 1.48
altair processInactivityUpdates - 250000 worstcase 32.812 ms/op 22.782 ms/op 1.44
phase0 processRegistryUpdates - 250000 normalcase 16.563 us/op 6.2040 us/op 2.67
phase0 processRegistryUpdates - 250000 badcase_full_deposits 319.34 us/op 235.60 us/op 1.36
phase0 processRegistryUpdates - 250000 worstcase 0.5 176.76 ms/op 112.91 ms/op 1.57
altair processRewardsAndPenalties - 250000 normalcase 97.924 ms/op 54.278 ms/op 1.80
altair processRewardsAndPenalties - 250000 worstcase 92.348 ms/op 54.773 ms/op 1.69
phase0 getAttestationDeltas - 250000 normalcase 10.315 ms/op 6.3509 ms/op 1.62
phase0 getAttestationDeltas - 250000 worstcase 12.417 ms/op 6.4087 ms/op 1.94
phase0 processSlashings - 250000 worstcase 4.3629 ms/op 3.4977 ms/op 1.25
altair processSyncCommitteeUpdates - 250000 193.03 ms/op 176.58 ms/op 1.09
BeaconState.hashTreeRoot - No change 289.00 ns/op 258.00 ns/op 1.12
BeaconState.hashTreeRoot - 1 full validator 52.855 us/op 49.428 us/op 1.07
BeaconState.hashTreeRoot - 32 full validator 536.29 us/op 485.40 us/op 1.10
BeaconState.hashTreeRoot - 512 full validator 6.5322 ms/op 4.8286 ms/op 1.35
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 69.150 us/op 63.269 us/op 1.09
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 993.91 us/op 856.36 us/op 1.16
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 13.780 ms/op 10.813 ms/op 1.27
BeaconState.hashTreeRoot - 1 balances 51.905 us/op 46.021 us/op 1.13
BeaconState.hashTreeRoot - 32 balances 499.95 us/op 433.92 us/op 1.15
BeaconState.hashTreeRoot - 512 balances 5.1835 ms/op 4.2742 ms/op 1.21
BeaconState.hashTreeRoot - 250000 balances 93.306 ms/op 71.441 ms/op 1.31
aggregationBits - 2048 els - zipIndexesInBitList 31.346 us/op 16.482 us/op 1.90
regular array get 100000 times 36.524 us/op 41.488 us/op 0.88
wrappedArray get 100000 times 36.564 us/op 32.335 us/op 1.13
arrayWithProxy get 100000 times 19.530 ms/op 15.627 ms/op 1.25
ssz.Root.equals 761.00 ns/op 531.00 ns/op 1.43
byteArrayEquals 702.00 ns/op 525.00 ns/op 1.34
shuffle list - 16384 els 7.6311 ms/op 6.6013 ms/op 1.16
shuffle list - 250000 els 116.17 ms/op 96.839 ms/op 1.20
processSlot - 1 slots 10.464 us/op 8.3860 us/op 1.25
processSlot - 32 slots 1.6432 ms/op 1.2915 ms/op 1.27
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 265.71 us/op 191.96 us/op 1.38
getCommitteeAssignments - req 1 vs - 250000 vc 3.0613 ms/op 2.8271 ms/op 1.08
getCommitteeAssignments - req 100 vs - 250000 vc 4.2524 ms/op 4.0807 ms/op 1.04
getCommitteeAssignments - req 1000 vs - 250000 vc 4.6796 ms/op 4.4202 ms/op 1.06
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.1700 ns/op 4.5000 ns/op 1.15
state getBlockRootAtSlot - 250000 vs - 7PWei 710.75 ns/op 558.27 ns/op 1.27
computeProposers - vc 250000 11.122 ms/op 10.233 ms/op 1.09
computeEpochShuffling - vc 250000 106.30 ms/op 101.89 ms/op 1.04
getNextSyncCommittee - vc 250000 180.27 ms/op 167.61 ms/op 1.08

by benchmarkbot/action

@g11tech g11tech added this pull request to the merge queue Feb 14, 2023
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to no response for status checks Feb 14, 2023
@wemeetagain wemeetagain added this pull request to the merge queue Feb 14, 2023
@wemeetagain wemeetagain removed this pull request from the merge queue due to a manual request Feb 14, 2023
@wemeetagain wemeetagain merged commit ec331d6 into unstable Feb 14, 2023
@wemeetagain wemeetagain deleted the g11tech/spec-v1.3.0-rc.2-hotfix branch February 14, 2023 15:35
@wemeetagain
Copy link
Member

🎉 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