Skip to content

Add connectToDiscv5Bootnodes option - #3343

Merged
dapplion merged 2 commits into
masterfrom
dapplion/connect-to-bootnodes
Oct 8, 2021
Merged

Add connectToDiscv5Bootnodes option#3343
dapplion merged 2 commits into
masterfrom
dapplion/connect-to-bootnodes

Conversation

@dapplion

@dapplion dapplion commented Oct 8, 2021

Copy link
Copy Markdown
Contributor

Motivation

Necessary in merge interop to connect to bootnodes without having to pass the bootnode's data in a different format

Description

  • Add connectToDiscv5Bootnodes option
  • If true, append parsed bootnode ENRs to bootMultiaddrs

@qlty-cloud-legacy

qlty-cloud-legacy Bot commented Oct 8, 2021

Copy link
Copy Markdown

Code Climate has analyzed commit 40dbc92 and detected 1 issue on this pull request.

Here's the issue category breakdown:

Category Count
Complexity 1

View more on Code Climate.

wemeetagain
wemeetagain previously approved these changes Oct 8, 2021
@github-actions

github-actions Bot commented Oct 8, 2021

Copy link
Copy Markdown
Contributor

Performance Report

鉁旓笍 no performance regression detected

Full benchmark results
Benchmark suite Current: 88eef57 Previous: 84ef48f Ratio
BeaconState.hashTreeRoot - No change 685.00 ns/op 899.00 ns/op 0.76
BeaconState.hashTreeRoot - 1 full validator 78.390 us/op 110.99 us/op 0.71
BeaconState.hashTreeRoot - 32 full validator 1.1436 ms/op 1.5436 ms/op 0.74
BeaconState.hashTreeRoot - 512 full validator 13.901 ms/op 19.783 ms/op 0.70
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 79.752 us/op 107.17 us/op 0.74
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.0679 ms/op 1.4835 ms/op 0.72
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 17.108 ms/op 23.474 ms/op 0.73
BeaconState.hashTreeRoot - 1 balances 60.082 us/op 74.896 us/op 0.80
BeaconState.hashTreeRoot - 32 balances 478.50 us/op 666.09 us/op 0.72
BeaconState.hashTreeRoot - 512 balances 4.8779 ms/op 6.0670 ms/op 0.80
BeaconState.hashTreeRoot - 250000 balances 89.806 ms/op 119.07 ms/op 0.75
processSlot - 1 slots 38.162 us/op 54.777 us/op 0.70
processSlot - 32 slots 2.0523 ms/op 2.9464 ms/op 0.70
getCommitteeAssignments - req 1 vs - 250000 vc 5.2188 ms/op 5.3650 ms/op 0.97
getCommitteeAssignments - req 100 vs - 250000 vc 7.1312 ms/op 7.3423 ms/op 0.97
getCommitteeAssignments - req 1000 vs - 250000 vc 7.6231 ms/op 8.3180 ms/op 0.92
computeProposers - vc 250000 21.439 ms/op 24.608 ms/op 0.87
computeEpochShuffling - vc 250000 196.71 ms/op 205.98 ms/op 0.95
getNextSyncCommittee - vc 250000 347.16 ms/op 407.08 ms/op 0.85
altair processAttestation - 250000 vs - 7PWei normalcase 33.885 ms/op 45.977 ms/op 0.74
altair processAttestation - 250000 vs - 7PWei worstcase 39.159 ms/op 50.862 ms/op 0.77
altair processAttestation - setStatus - 1/6 committees join 9.2479 ms/op 13.899 ms/op 0.67
altair processAttestation - setStatus - 1/3 committees join 19.251 ms/op 29.145 ms/op 0.66
altair processAttestation - setStatus - 1/2 committees join 30.406 ms/op 41.846 ms/op 0.73
altair processAttestation - setStatus - 2/3 committees join 40.293 ms/op 57.475 ms/op 0.70
altair processAttestation - setStatus - 4/5 committees join 49.306 ms/op 70.245 ms/op 0.70
altair processAttestation - setStatus - 100% committees join 62.838 ms/op 89.436 ms/op 0.70
altair processAttestation - updateEpochParticipants - 1/6 committees join 8.6769 ms/op 14.746 ms/op 0.59
altair processAttestation - updateEpochParticipants - 1/3 committees join 18.452 ms/op 29.222 ms/op 0.63
altair processAttestation - updateEpochParticipants - 1/2 committees join 20.269 ms/op 26.693 ms/op 0.76
altair processAttestation - updateEpochParticipants - 2/3 committees join 21.736 ms/op 29.101 ms/op 0.75
altair processAttestation - updateEpochParticipants - 4/5 committees join 22.836 ms/op 31.298 ms/op 0.73
altair processAttestation - updateEpochParticipants - 100% committees join 24.458 ms/op 28.392 ms/op 0.86
altair processAttestation - updateAllStatus 18.696 ms/op 20.453 ms/op 0.91
altair processBlock - 250000 vs - 7PWei normalcase 40.278 ms/op 47.436 ms/op 0.85
altair processBlock - 250000 vs - 7PWei worstcase 102.60 ms/op 138.14 ms/op 0.74
altair processEpoch - pyrmont_e62330 437.36 ms/op 536.12 ms/op 0.82
pyrmont_e62330 - altair beforeProcessEpoch 137.72 ms/op 175.89 ms/op 0.78
pyrmont_e62330 - altair processJustificationAndFinalization 86.551 us/op 122.53 us/op 0.71
pyrmont_e62330 - altair processInactivityUpdates 7.7792 ms/op 9.3499 ms/op 0.83
pyrmont_e62330 - altair processRewardsAndPenalties 56.416 ms/op 69.122 ms/op 0.82
pyrmont_e62330 - altair processRegistryUpdates 9.2690 us/op 19.923 us/op 0.47
pyrmont_e62330 - altair processSlashings 2.2090 us/op 6.4480 us/op 0.34
pyrmont_e62330 - altair processEth1DataReset 1.8460 us/op 6.1230 us/op 0.30
pyrmont_e62330 - altair processEffectiveBalanceUpdates 6.4738 ms/op 9.6814 ms/op 0.67
pyrmont_e62330 - altair processSlashingsReset 14.530 us/op 38.131 us/op 0.38
pyrmont_e62330 - altair processRandaoMixesReset 23.263 us/op 43.660 us/op 0.53
pyrmont_e62330 - altair processHistoricalRootsUpdate 2.6780 us/op 8.1320 us/op 0.33
pyrmont_e62330 - altair processParticipationFlagUpdates 42.495 ms/op 51.457 ms/op 0.83
pyrmont_e62330 - altair processSyncCommitteeUpdates 2.0890 us/op 5.8860 us/op 0.35
pyrmont_e62330 - altair afterProcessEpoch 117.69 ms/op 127.59 ms/op 0.92
altair processInactivityUpdates - 250000 normalcase 61.386 ms/op 70.012 ms/op 0.88
altair processInactivityUpdates - 250000 worstcase 57.987 ms/op 69.010 ms/op 0.84
altair processParticipationFlagUpdates - 250000 anycase 89.472 ms/op 97.623 ms/op 0.92
altair processRewardsAndPenalties - 250000 normalcase 110.79 ms/op 131.74 ms/op 0.84
altair processRewardsAndPenalties - 250000 worstcase 120.92 ms/op 145.18 ms/op 0.83
altair processSyncCommitteeUpdates - 250000 362.18 ms/op 450.62 ms/op 0.80
Tree 40 250000 create 442.87 ms/op 669.78 ms/op 0.66
Tree 40 250000 get(125000) 266.70 ns/op 289.94 ns/op 0.92
Tree 40 250000 set(125000) 1.4098 us/op 2.1511 us/op 0.66
Tree 40 250000 toArray() 36.237 ms/op 49.016 ms/op 0.74
Tree 40 250000 iterate all - toArray() + loop 36.371 ms/op 48.991 ms/op 0.74
Tree 40 250000 iterate all - get(i) 101.52 ms/op 118.24 ms/op 0.86
MutableVector 250000 create 20.911 ms/op 27.225 ms/op 0.77
MutableVector 250000 get(125000) 12.914 ns/op 15.424 ns/op 0.84
MutableVector 250000 set(125000) 547.00 ns/op 884.55 ns/op 0.62
MutableVector 250000 toArray() 8.2496 ms/op 9.0156 ms/op 0.92
MutableVector 250000 iterate all - toArray() + loop 7.5004 ms/op 9.3346 ms/op 0.80
MutableVector 250000 iterate all - get(i) 3.5367 ms/op 3.6855 ms/op 0.96
Array 250000 create 4.8604 ms/op 7.9405 ms/op 0.61
Array 250000 clone - spread 1.8484 ms/op 1.7738 ms/op 1.04
Array 250000 get(125000) 1.0980 ns/op 1.0520 ns/op 1.04
Array 250000 set(125000) 1.0920 ns/op 0.89500 ns/op 1.22
Array 250000 iterate all - loop 167.86 us/op 141.87 us/op 1.18
aggregationBits - 2048 els - readonlyValues 239.94 us/op 246.00 us/op 0.98
aggregationBits - 2048 els - zipIndexesInBitList 39.977 us/op 37.771 us/op 1.06
ssz.Root.equals 1.2660 us/op 1.4730 us/op 0.86
ssz.Root.equals with valueOf() 1.5580 us/op 1.9390 us/op 0.80
byteArrayEquals with valueOf() 1.5160 us/op 1.6370 us/op 0.93
phase0 processBlock - 250000 vs - 7PWei normalcase 9.7472 ms/op 13.976 ms/op 0.70
phase0 processBlock - 250000 vs - 7PWei worstcase 70.707 ms/op 95.106 ms/op 0.74
phase0 afterProcessEpoch - 250000 vs - 7PWei 216.34 ms/op 238.90 ms/op 0.91
phase0 beforeProcessEpoch - 250000 vs - 7PWei 501.49 ms/op 731.18 ms/op 0.69
phase0 processEpoch - mainnet_e58758 744.68 ms/op 918.53 ms/op 0.81
mainnet_e58758 - phase0 beforeProcessEpoch 427.48 ms/op 613.04 ms/op 0.70
mainnet_e58758 - phase0 processJustificationAndFinalization 81.532 us/op 117.44 us/op 0.69
mainnet_e58758 - phase0 processRewardsAndPenalties 78.491 ms/op 95.510 ms/op 0.82
mainnet_e58758 - phase0 processRegistryUpdates 64.412 us/op 85.832 us/op 0.75
mainnet_e58758 - phase0 processSlashings 2.3900 us/op 6.6790 us/op 0.36
mainnet_e58758 - phase0 processEth1DataReset 2.5630 us/op 5.9330 us/op 0.43
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 9.5908 ms/op 11.560 ms/op 0.83
mainnet_e58758 - phase0 processSlashingsReset 13.839 us/op 33.176 us/op 0.42
mainnet_e58758 - phase0 processRandaoMixesReset 20.137 us/op 44.020 us/op 0.46
mainnet_e58758 - phase0 processHistoricalRootsUpdate 2.8590 us/op 8.3080 us/op 0.34
mainnet_e58758 - phase0 processParticipationRecordUpdates 16.878 us/op 30.128 us/op 0.56
mainnet_e58758 - phase0 afterProcessEpoch 191.55 ms/op 209.30 ms/op 0.92
phase0 processEffectiveBalanceUpdates - 250000 normalcase 11.331 ms/op 12.948 ms/op 0.88
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.0433 s/op 1.6894 s/op 0.62
phase0 processRegistryUpdates - 250000 normalcase 59.591 us/op 92.421 us/op 0.64
phase0 processRegistryUpdates - 250000 badcase_full_deposits 2.9455 ms/op 4.3787 ms/op 0.67
phase0 processRegistryUpdates - 250000 worstcase 0.5 1.3625 s/op 2.1363 s/op 0.64
phase0 getAttestationDeltas - 250000 normalcase 33.548 ms/op 40.832 ms/op 0.82
phase0 getAttestationDeltas - 250000 worstcase 37.081 ms/op 41.244 ms/op 0.90
phase0 processSlashings - 250000 worstcase 31.733 ms/op 43.135 ms/op 0.74
shuffle list - 16384 els 14.018 ms/op 15.017 ms/op 0.93
shuffle list - 250000 els 191.35 ms/op 209.59 ms/op 0.91
getEffectiveBalances - 250000 vs - 7PWei 9.2753 ms/op 14.550 ms/op 0.64
computeDeltas 4.2983 ms/op 4.3414 ms/op 0.99
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.3128 ms/op 3.0415 ms/op 0.76
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 902.86 us/op 1.1279 ms/op 0.80
BLS verify - blst-native 1.8590 ms/op 2.3539 ms/op 0.79
BLS verifyMultipleSignatures 3 - blst-native 3.8079 ms/op 4.8069 ms/op 0.79
BLS verifyMultipleSignatures 8 - blst-native 8.2053 ms/op 10.122 ms/op 0.81
BLS verifyMultipleSignatures 32 - blst-native 29.768 ms/op 36.896 ms/op 0.81
BLS aggregatePubkeys 32 - blst-native 39.734 us/op 52.138 us/op 0.76
BLS aggregatePubkeys 128 - blst-native 155.24 us/op 196.16 us/op 0.79
getAttestationsForBlock 69.856 ms/op 88.896 ms/op 0.79
CheckpointStateCache - add get delete 14.823 us/op 20.140 us/op 0.74
validate gossip signedAggregateAndProof - struct 4.4577 ms/op 5.3589 ms/op 0.83
validate gossip signedAggregateAndProof - treeBacked 4.4139 ms/op 5.3043 ms/op 0.83
validate gossip attestation - struct 2.0784 ms/op 2.5524 ms/op 0.81
validate gossip attestation - treeBacked 2.0855 ms/op 2.6400 ms/op 0.79

by benchmarkbot/action

@codecov

codecov Bot commented Oct 8, 2021

Copy link
Copy Markdown

Codecov Report

Merging #3343 (40dbc92) into master (84ef48f) will decrease coverage by 0.04%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #3343      +/-   ##
==========================================
- Coverage   38.49%   38.45%   -0.05%     
==========================================
  Files         303      303              
  Lines        7663     7672       +9     
  Branches     1134     1138       +4     
==========================================
  Hits         2950     2950              
- Misses       4578     4587       +9     
  Partials      135      135              

@dapplion
dapplion merged commit d85cf0a into master Oct 8, 2021
@dapplion
dapplion deleted the dapplion/connect-to-bootnodes branch October 8, 2021 12:12
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.

2 participants