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

Removed fork_version from LightClientUpdate #4613

Merged
merged 2 commits into from Oct 2, 2022

Conversation

dadepo
Copy link
Contributor

@dadepo dadepo commented Sep 29, 2022

Closes #4610

@dadepo dadepo requested a review from a team as a code owner September 29, 2022 17:15
@github-actions
Copy link
Contributor

github-actions bot commented Sep 29, 2022

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 1101ed6 Previous: 631b6e7 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.8998 ms/op 2.5178 ms/op 0.75
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 71.814 us/op 88.488 us/op 0.81
BLS verify - blst-native 2.0851 ms/op 2.7559 ms/op 0.76
BLS verifyMultipleSignatures 3 - blst-native 4.3776 ms/op 5.8292 ms/op 0.75
BLS verifyMultipleSignatures 8 - blst-native 8.9378 ms/op 12.634 ms/op 0.71
BLS verifyMultipleSignatures 32 - blst-native 27.122 ms/op 47.107 ms/op 0.58
BLS aggregatePubkeys 32 - blst-native 44.050 us/op 62.136 us/op 0.71
BLS aggregatePubkeys 128 - blst-native 186.47 us/op 242.02 us/op 0.77
getAttestationsForBlock 91.094 ms/op 120.39 ms/op 0.76
isKnown best case - 1 super set check 455.00 ns/op 527.00 ns/op 0.86
isKnown normal case - 2 super set checks 414.00 ns/op 510.00 ns/op 0.81
isKnown worse case - 16 super set checks 421.00 ns/op 510.00 ns/op 0.83
CheckpointStateCache - add get delete 9.5070 us/op 11.402 us/op 0.83
validate gossip signedAggregateAndProof - struct 4.3642 ms/op 6.4156 ms/op 0.68
validate gossip attestation - struct 2.2434 ms/op 3.1043 ms/op 0.72
pickEth1Vote - no votes 2.3118 ms/op 2.6895 ms/op 0.86
pickEth1Vote - max votes 20.605 ms/op 24.399 ms/op 0.84
pickEth1Vote - Eth1Data hashTreeRoot value x2048 12.646 ms/op 14.723 ms/op 0.86
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 22.044 ms/op 25.169 ms/op 0.88
pickEth1Vote - Eth1Data fastSerialize value x2048 1.4267 ms/op 1.8511 ms/op 0.77
pickEth1Vote - Eth1Data fastSerialize tree x2048 14.052 ms/op 15.722 ms/op 0.89
bytes32 toHexString 1.0360 us/op 1.3600 us/op 0.76
bytes32 Buffer.toString(hex) 686.00 ns/op 818.00 ns/op 0.84
bytes32 Buffer.toString(hex) from Uint8Array 938.00 ns/op 1.1120 us/op 0.84
bytes32 Buffer.toString(hex) + 0x 793.00 ns/op 850.00 ns/op 0.93
Object access 1 prop 0.36000 ns/op 0.46100 ns/op 0.78
Map access 1 prop 0.27500 ns/op 0.34500 ns/op 0.80
Object get x1000 17.575 ns/op 16.726 ns/op 1.05
Map get x1000 0.93500 ns/op 0.97300 ns/op 0.96
Object set x1000 114.74 ns/op 121.00 ns/op 0.95
Map set x1000 65.945 ns/op 83.230 ns/op 0.79
Return object 10000 times 0.34800 ns/op 0.42220 ns/op 0.82
Throw Error 10000 times 5.5506 us/op 8.2622 us/op 0.67
enrSubnets - fastDeserialize 64 bits 2.5690 us/op 3.2130 us/op 0.80
enrSubnets - ssz BitVector 64 bits 702.00 ns/op 882.00 ns/op 0.80
enrSubnets - fastDeserialize 4 bits 374.00 ns/op 506.00 ns/op 0.74
enrSubnets - ssz BitVector 4 bits 757.00 ns/op 914.00 ns/op 0.83
prioritizePeers score -10:0 att 32-0.1 sync 2-0 87.679 us/op 117.03 us/op 0.75
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 120.83 us/op 156.81 us/op 0.77
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 204.41 us/op 280.63 us/op 0.73
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 440.44 us/op 618.52 us/op 0.71
prioritizePeers score 0:0 att 64-1 sync 4-1 464.08 us/op 660.53 us/op 0.70
RateTracker 1000000 limit, 1 obj count per request 181.95 ns/op 223.97 ns/op 0.81
RateTracker 1000000 limit, 2 obj count per request 138.38 ns/op 167.83 ns/op 0.82
RateTracker 1000000 limit, 4 obj count per request 117.88 ns/op 138.81 ns/op 0.85
RateTracker 1000000 limit, 8 obj count per request 105.32 ns/op 122.47 ns/op 0.86
RateTracker with prune 5.4160 us/op 5.9220 us/op 0.91
array of 16000 items push then shift 3.2966 us/op 5.5657 us/op 0.59
LinkedList of 16000 items push then shift 17.834 ns/op 20.520 ns/op 0.87
array of 16000 items push then pop 258.38 ns/op 265.92 ns/op 0.97
LinkedList of 16000 items push then pop 18.764 ns/op 19.384 ns/op 0.97
array of 24000 items push then shift 4.7883 us/op 7.9826 us/op 0.60
LinkedList of 24000 items push then shift 20.693 ns/op 20.745 ns/op 1.00
array of 24000 items push then pop 221.87 ns/op 240.24 ns/op 0.92
LinkedList of 24000 items push then pop 19.056 ns/op 19.001 ns/op 1.00
intersect bitArray bitLen 8 12.358 ns/op 13.105 ns/op 0.94
intersect array and set length 8 173.30 ns/op 213.39 ns/op 0.81
intersect bitArray bitLen 128 75.920 ns/op 71.633 ns/op 1.06
intersect array and set length 128 2.2781 us/op 2.5736 us/op 0.89
Buffer.concat 32 items 2.3710 ns/op 2.2980 ns/op 1.03
pass gossip attestations to forkchoice per slot 4.5814 ms/op 5.0237 ms/op 0.91
computeDeltas 5.5563 ms/op 5.8283 ms/op 0.95
computeProposerBoostScoreFromBalances 842.31 us/op 906.21 us/op 0.93
altair processAttestation - 250000 vs - 7PWei normalcase 3.7658 ms/op 5.4242 ms/op 0.69
altair processAttestation - 250000 vs - 7PWei worstcase 7.0453 ms/op 7.7645 ms/op 0.91
altair processAttestation - setStatus - 1/6 committees join 223.81 us/op 254.87 us/op 0.88
altair processAttestation - setStatus - 1/3 committees join 447.73 us/op 467.44 us/op 0.96
altair processAttestation - setStatus - 1/2 committees join 624.13 us/op 670.30 us/op 0.93
altair processAttestation - setStatus - 2/3 committees join 851.63 us/op 874.48 us/op 0.97
altair processAttestation - setStatus - 4/5 committees join 1.1750 ms/op 1.2395 ms/op 0.95
altair processAttestation - setStatus - 100% committees join 1.4014 ms/op 1.5947 ms/op 0.88
altair processBlock - 250000 vs - 7PWei normalcase 30.911 ms/op 30.270 ms/op 1.02
altair processBlock - 250000 vs - 7PWei normalcase hashState 42.419 ms/op 44.464 ms/op 0.95
altair processBlock - 250000 vs - 7PWei worstcase 105.91 ms/op 115.71 ms/op 0.92
altair processBlock - 250000 vs - 7PWei worstcase hashState 105.11 ms/op 129.83 ms/op 0.81
phase0 processBlock - 250000 vs - 7PWei normalcase 4.0831 ms/op 4.5454 ms/op 0.90
phase0 processBlock - 250000 vs - 7PWei worstcase 56.314 ms/op 64.822 ms/op 0.87
altair processEth1Data - 250000 vs - 7PWei normalcase 962.93 us/op 1.1481 ms/op 0.84
Tree 40 250000 create 858.05 ms/op 1.1148 s/op 0.77
Tree 40 250000 get(125000) 316.89 ns/op 339.30 ns/op 0.93
Tree 40 250000 set(125000) 2.1459 us/op 3.7037 us/op 0.58
Tree 40 250000 toArray() 31.904 ms/op 36.401 ms/op 0.88
Tree 40 250000 iterate all - toArray() + loop 30.269 ms/op 38.208 ms/op 0.79
Tree 40 250000 iterate all - get(i) 107.10 ms/op 139.07 ms/op 0.77
MutableVector 250000 create 14.310 ms/op 18.449 ms/op 0.78
MutableVector 250000 get(125000) 14.304 ns/op 14.793 ns/op 0.97
MutableVector 250000 set(125000) 537.94 ns/op 1.0093 us/op 0.53
MutableVector 250000 toArray() 6.7948 ms/op 9.1026 ms/op 0.75
MutableVector 250000 iterate all - toArray() + loop 6.9394 ms/op 7.6148 ms/op 0.91
MutableVector 250000 iterate all - get(i) 3.3087 ms/op 3.5671 ms/op 0.93
Array 250000 create 6.3803 ms/op 7.1128 ms/op 0.90
Array 250000 clone - spread 3.5315 ms/op 3.2954 ms/op 1.07
Array 250000 get(125000) 1.4620 ns/op 1.4700 ns/op 0.99
Array 250000 set(125000) 1.4150 ns/op 1.5060 ns/op 0.94
Array 250000 iterate all - loop 170.75 us/op 146.63 us/op 1.16
effectiveBalanceIncrements clone Uint8Array 300000 76.874 us/op 105.21 us/op 0.73
effectiveBalanceIncrements clone MutableVector 300000 1.1170 us/op 1.0370 us/op 1.08
effectiveBalanceIncrements rw all Uint8Array 300000 275.96 us/op 310.03 us/op 0.89
effectiveBalanceIncrements rw all MutableVector 300000 201.48 ms/op 245.94 ms/op 0.82
phase0 afterProcessEpoch - 250000 vs - 7PWei 231.30 ms/op 198.76 ms/op 1.16
phase0 beforeProcessEpoch - 250000 vs - 7PWei 77.100 ms/op 78.604 ms/op 0.98
altair processEpoch - mainnet_e81889 600.70 ms/op 677.31 ms/op 0.89
mainnet_e81889 - altair beforeProcessEpoch 157.24 ms/op 191.62 ms/op 0.82
mainnet_e81889 - altair processJustificationAndFinalization 52.534 us/op 66.006 us/op 0.80
mainnet_e81889 - altair processInactivityUpdates 11.022 ms/op 13.444 ms/op 0.82
mainnet_e81889 - altair processRewardsAndPenalties 96.207 ms/op 107.34 ms/op 0.90
mainnet_e81889 - altair processRegistryUpdates 13.834 us/op 16.249 us/op 0.85
mainnet_e81889 - altair processSlashings 2.2150 us/op 3.8470 us/op 0.58
mainnet_e81889 - altair processEth1DataReset 2.5070 us/op 4.1370 us/op 0.61
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.4394 ms/op 2.7409 ms/op 0.89
mainnet_e81889 - altair processSlashingsReset 16.496 us/op 20.596 us/op 0.80
mainnet_e81889 - altair processRandaoMixesReset 19.985 us/op 24.157 us/op 0.83
mainnet_e81889 - altair processHistoricalRootsUpdate 3.4200 us/op 4.3450 us/op 0.79
mainnet_e81889 - altair processParticipationFlagUpdates 8.1970 us/op 13.834 us/op 0.59
mainnet_e81889 - altair processSyncCommitteeUpdates 1.6120 us/op 3.2440 us/op 0.50
mainnet_e81889 - altair afterProcessEpoch 213.53 ms/op 214.42 ms/op 1.00
phase0 processEpoch - mainnet_e58758 704.98 ms/op 655.95 ms/op 1.07
mainnet_e58758 - phase0 beforeProcessEpoch 241.78 ms/op 323.02 ms/op 0.75
mainnet_e58758 - phase0 processJustificationAndFinalization 36.890 us/op 56.508 us/op 0.65
mainnet_e58758 - phase0 processRewardsAndPenalties 141.96 ms/op 90.012 ms/op 1.58
mainnet_e58758 - phase0 processRegistryUpdates 27.411 us/op 32.621 us/op 0.84
mainnet_e58758 - phase0 processSlashings 2.0150 us/op 3.5380 us/op 0.57
mainnet_e58758 - phase0 processEth1DataReset 2.2770 us/op 3.8230 us/op 0.60
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 2.4754 ms/op 2.1674 ms/op 1.14
mainnet_e58758 - phase0 processSlashingsReset 9.9020 us/op 16.933 us/op 0.58
mainnet_e58758 - phase0 processRandaoMixesReset 12.413 us/op 24.873 us/op 0.50
mainnet_e58758 - phase0 processHistoricalRootsUpdate 2.2050 us/op 4.0910 us/op 0.54
mainnet_e58758 - phase0 processParticipationRecordUpdates 12.271 us/op 23.440 us/op 0.52
mainnet_e58758 - phase0 afterProcessEpoch 187.86 ms/op 178.63 ms/op 1.05
phase0 processEffectiveBalanceUpdates - 250000 normalcase 3.0593 ms/op 2.5436 ms/op 1.20
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 4.0579 ms/op 2.8807 ms/op 1.41
altair processInactivityUpdates - 250000 normalcase 47.891 ms/op 58.913 ms/op 0.81
altair processInactivityUpdates - 250000 worstcase 41.231 ms/op 52.648 ms/op 0.78
phase0 processRegistryUpdates - 250000 normalcase 26.037 us/op 29.230 us/op 0.89
phase0 processRegistryUpdates - 250000 badcase_full_deposits 618.54 us/op 534.14 us/op 1.16
phase0 processRegistryUpdates - 250000 worstcase 0.5 217.57 ms/op 306.05 ms/op 0.71
altair processRewardsAndPenalties - 250000 normalcase 126.81 ms/op 150.68 ms/op 0.84
altair processRewardsAndPenalties - 250000 worstcase 91.646 ms/op 103.75 ms/op 0.88
phase0 getAttestationDeltas - 250000 normalcase 15.135 ms/op 14.988 ms/op 1.01
phase0 getAttestationDeltas - 250000 worstcase 14.145 ms/op 15.204 ms/op 0.93
phase0 processSlashings - 250000 worstcase 5.6163 ms/op 6.7230 ms/op 0.84
altair processSyncCommitteeUpdates - 250000 308.95 ms/op 356.24 ms/op 0.87
BeaconState.hashTreeRoot - No change 530.00 ns/op 755.00 ns/op 0.70
BeaconState.hashTreeRoot - 1 full validator 72.838 us/op 78.774 us/op 0.92
BeaconState.hashTreeRoot - 32 full validator 892.58 us/op 765.19 us/op 1.17
BeaconState.hashTreeRoot - 512 full validator 6.9642 ms/op 8.0122 ms/op 0.87
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 82.386 us/op 101.01 us/op 0.82
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.3181 ms/op 1.4244 ms/op 0.93
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 20.530 ms/op 18.623 ms/op 1.10
BeaconState.hashTreeRoot - 1 balances 77.805 us/op 73.398 us/op 1.06
BeaconState.hashTreeRoot - 32 balances 688.40 us/op 681.55 us/op 1.01
BeaconState.hashTreeRoot - 512 balances 6.4119 ms/op 6.1572 ms/op 1.04
BeaconState.hashTreeRoot - 250000 balances 107.98 ms/op 117.75 ms/op 0.92
aggregationBits - 2048 els - zipIndexesInBitList 30.398 us/op 40.901 us/op 0.74
regular array get 100000 times 67.316 us/op 60.941 us/op 1.10
wrappedArray get 100000 times 66.699 us/op 59.127 us/op 1.13
arrayWithProxy get 100000 times 28.341 ms/op 36.872 ms/op 0.77
ssz.Root.equals 446.00 ns/op 604.00 ns/op 0.74
byteArrayEquals 458.00 ns/op 603.00 ns/op 0.76
shuffle list - 16384 els 11.210 ms/op 12.578 ms/op 0.89
shuffle list - 250000 els 162.88 ms/op 178.11 ms/op 0.91
processSlot - 1 slots 15.856 us/op 18.611 us/op 0.85
processSlot - 32 slots 1.6125 ms/op 2.4800 ms/op 0.65
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 422.65 us/op 567.30 us/op 0.75
getCommitteeAssignments - req 1 vs - 250000 vc 5.7296 ms/op 5.5623 ms/op 1.03
getCommitteeAssignments - req 100 vs - 250000 vc 7.7207 ms/op 8.2358 ms/op 0.94
getCommitteeAssignments - req 1000 vs - 250000 vc 9.0677 ms/op 8.5726 ms/op 1.06
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 10.300 ns/op 11.440 ns/op 0.90
state getBlockRootAtSlot - 250000 vs - 7PWei 1.2651 us/op 1.4364 us/op 0.88
computeProposers - vc 250000 16.714 ms/op 21.070 ms/op 0.79
computeEpochShuffling - vc 250000 170.50 ms/op 186.96 ms/op 0.91
getNextSyncCommittee - vc 250000 297.55 ms/op 349.06 ms/op 0.85

by benchmarkbot/action

@dapplion dapplion merged commit 4677950 into unstable Oct 2, 2022
@dapplion dapplion deleted the dadepo/remove_fork_version_lc_update branch October 2, 2022 10:39
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.

Remove fork_version from LightClientUpdate
2 participants