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

Add ability to spin up sepolia network via merge setup #4193

Merged
merged 2 commits into from
Jun 25, 2022

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Jun 25, 2022

Add ability to spin up sepolia network via merge setup
Example:
./setup.sh --dataDir sepolia-data --elClient nethermind --devnetVars ./sepolia.vars --dockerWithSudo --withTerminal "gnome-terminal --disable-factory --"

Tested against nethermind + geth

@g11tech g11tech requested a review from a team as a code owner June 25, 2022 12:44
@github-actions
Copy link
Contributor

github-actions bot commented Jun 25, 2022

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 6871776 Previous: f8f7466 Ratio
altair processAttestation - 250000 vs - 7PWei normalcase 3.0988 ms/op 3.7985 ms/op 0.82
altair processAttestation - 250000 vs - 7PWei worstcase 5.0104 ms/op 6.1904 ms/op 0.81
altair processAttestation - setStatus - 1/6 committees join 170.16 us/op 212.35 us/op 0.80
altair processAttestation - setStatus - 1/3 committees join 341.44 us/op 366.58 us/op 0.93
altair processAttestation - setStatus - 1/2 committees join 493.75 us/op 573.87 us/op 0.86
altair processAttestation - setStatus - 2/3 committees join 659.62 us/op 657.84 us/op 1.00
altair processAttestation - setStatus - 4/5 committees join 906.04 us/op 1.0304 ms/op 0.88
altair processAttestation - setStatus - 100% committees join 1.1071 ms/op 1.0660 ms/op 1.04
altair processBlock - 250000 vs - 7PWei normalcase 19.929 ms/op 32.197 ms/op 0.62
altair processBlock - 250000 vs - 7PWei normalcase hashState 31.619 ms/op 32.676 ms/op 0.97
altair processBlock - 250000 vs - 7PWei worstcase 76.207 ms/op 72.803 ms/op 1.05
altair processBlock - 250000 vs - 7PWei worstcase hashState 94.662 ms/op 95.891 ms/op 0.99
phase0 processBlock - 250000 vs - 7PWei normalcase 3.0348 ms/op 3.3926 ms/op 0.89
phase0 processBlock - 250000 vs - 7PWei worstcase 49.534 ms/op 42.309 ms/op 1.17
altair processEth1Data - 250000 vs - 7PWei normalcase 599.87 us/op 759.84 us/op 0.79
Tree 40 250000 create 649.04 ms/op 960.34 ms/op 0.68
Tree 40 250000 get(125000) 232.43 ns/op 264.78 ns/op 0.88
Tree 40 250000 set(125000) 1.9505 us/op 2.9821 us/op 0.65
Tree 40 250000 toArray() 25.042 ms/op 32.053 ms/op 0.78
Tree 40 250000 iterate all - toArray() + loop 25.374 ms/op 32.316 ms/op 0.79
Tree 40 250000 iterate all - get(i) 107.33 ms/op 104.09 ms/op 1.03
MutableVector 250000 create 11.560 ms/op 18.274 ms/op 0.63
MutableVector 250000 get(125000) 10.970 ns/op 11.544 ns/op 0.95
MutableVector 250000 set(125000) 470.13 ns/op 684.78 ns/op 0.69
MutableVector 250000 toArray() 5.1011 ms/op 7.2433 ms/op 0.70
MutableVector 250000 iterate all - toArray() + loop 5.2452 ms/op 7.5686 ms/op 0.69
MutableVector 250000 iterate all - get(i) 2.6627 ms/op 3.0341 ms/op 0.88
Array 250000 create 5.1005 ms/op 6.8418 ms/op 0.75
Array 250000 clone - spread 2.8647 ms/op 3.6401 ms/op 0.79
Array 250000 get(125000) 1.3750 ns/op 1.4710 ns/op 0.93
Array 250000 set(125000) 1.3770 ns/op 1.5030 ns/op 0.92
Array 250000 iterate all - loop 163.81 us/op 148.28 us/op 1.10
effectiveBalanceIncrements clone Uint8Array 300000 51.589 us/op 96.702 us/op 0.53
effectiveBalanceIncrements clone MutableVector 300000 624.00 ns/op 1.1190 us/op 0.56
effectiveBalanceIncrements rw all Uint8Array 300000 247.31 us/op 223.02 us/op 1.11
effectiveBalanceIncrements rw all MutableVector 300000 123.05 ms/op 215.34 ms/op 0.57
phase0 afterProcessEpoch - 250000 vs - 7PWei 187.34 ms/op 164.58 ms/op 1.14
phase0 beforeProcessEpoch - 250000 vs - 7PWei 56.505 ms/op 77.025 ms/op 0.73
altair processEpoch - mainnet_e81889 528.51 ms/op 463.19 ms/op 1.14
mainnet_e81889 - altair beforeProcessEpoch 110.57 ms/op 146.92 ms/op 0.75
mainnet_e81889 - altair processJustificationAndFinalization 31.212 us/op 20.570 us/op 1.52
mainnet_e81889 - altair processInactivityUpdates 8.8729 ms/op 11.725 ms/op 0.76
mainnet_e81889 - altair processRewardsAndPenalties 73.160 ms/op 127.29 ms/op 0.57
mainnet_e81889 - altair processRegistryUpdates 4.1240 us/op 4.5750 us/op 0.90
mainnet_e81889 - altair processSlashings 1.2930 us/op 671.00 ns/op 1.93
mainnet_e81889 - altair processEth1DataReset 1.3030 us/op 746.00 ns/op 1.75
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.5854 ms/op 2.0006 ms/op 1.29
mainnet_e81889 - altair processSlashingsReset 8.3190 us/op 5.2990 us/op 1.57
mainnet_e81889 - altair processRandaoMixesReset 8.7530 us/op 6.3360 us/op 1.38
mainnet_e81889 - altair processHistoricalRootsUpdate 1.2540 us/op 887.00 ns/op 1.41
mainnet_e81889 - altair processParticipationFlagUpdates 5.0420 us/op 3.3080 us/op 1.52
mainnet_e81889 - altair processSyncCommitteeUpdates 1.3460 us/op 1.1770 us/op 1.14
mainnet_e81889 - altair afterProcessEpoch 198.37 ms/op 186.33 ms/op 1.06
phase0 processEpoch - mainnet_e58758 571.23 ms/op 500.55 ms/op 1.14
mainnet_e58758 - phase0 beforeProcessEpoch 213.96 ms/op 201.77 ms/op 1.06
mainnet_e58758 - phase0 processJustificationAndFinalization 27.618 us/op 18.522 us/op 1.49
mainnet_e58758 - phase0 processRewardsAndPenalties 117.53 ms/op 71.867 ms/op 1.64
mainnet_e58758 - phase0 processRegistryUpdates 15.292 us/op 9.4400 us/op 1.62
mainnet_e58758 - phase0 processSlashings 1.2220 us/op 761.00 ns/op 1.61
mainnet_e58758 - phase0 processEth1DataReset 1.0710 us/op 735.00 ns/op 1.46
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.9484 ms/op 1.6563 ms/op 1.18
mainnet_e58758 - phase0 processSlashingsReset 7.3190 us/op 5.5990 us/op 1.31
mainnet_e58758 - phase0 processRandaoMixesReset 4.5310 us/op 5.6330 us/op 0.80
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.1200 us/op 789.00 ns/op 1.42
mainnet_e58758 - phase0 processParticipationRecordUpdates 7.2040 us/op 5.1380 us/op 1.40
mainnet_e58758 - phase0 afterProcessEpoch 163.31 ms/op 143.89 ms/op 1.13
phase0 processEffectiveBalanceUpdates - 250000 normalcase 2.0813 ms/op 2.6158 ms/op 0.80
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.3847 ms/op 2.7516 ms/op 0.87
altair processInactivityUpdates - 250000 normalcase 38.858 ms/op 25.168 ms/op 1.54
altair processInactivityUpdates - 250000 worstcase 36.121 ms/op 34.864 ms/op 1.04
phase0 processRegistryUpdates - 250000 normalcase 11.224 us/op 12.723 us/op 0.88
phase0 processRegistryUpdates - 250000 badcase_full_deposits 596.63 us/op 487.84 us/op 1.22
phase0 processRegistryUpdates - 250000 worstcase 0.5 216.49 ms/op 205.83 ms/op 1.05
altair processRewardsAndPenalties - 250000 normalcase 118.77 ms/op 108.19 ms/op 1.10
altair processRewardsAndPenalties - 250000 worstcase 116.61 ms/op 112.98 ms/op 1.03
phase0 getAttestationDeltas - 250000 normalcase 10.934 ms/op 12.519 ms/op 0.87
phase0 getAttestationDeltas - 250000 worstcase 11.309 ms/op 12.440 ms/op 0.91
phase0 processSlashings - 250000 worstcase 5.1766 ms/op 4.8480 ms/op 1.07
altair processSyncCommitteeUpdates - 250000 280.54 ms/op 261.03 ms/op 1.07
BeaconState.hashTreeRoot - No change 557.00 ns/op 517.00 ns/op 1.08
BeaconState.hashTreeRoot - 1 full validator 70.471 us/op 53.354 us/op 1.32
BeaconState.hashTreeRoot - 32 full validator 842.29 us/op 558.84 us/op 1.51
BeaconState.hashTreeRoot - 512 full validator 6.7977 ms/op 6.0122 ms/op 1.13
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 86.686 us/op 72.362 us/op 1.20
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.4218 ms/op 1.0356 ms/op 1.37
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 15.629 ms/op 15.570 ms/op 1.00
BeaconState.hashTreeRoot - 1 balances 74.459 us/op 54.472 us/op 1.37
BeaconState.hashTreeRoot - 32 balances 557.04 us/op 446.53 us/op 1.25
BeaconState.hashTreeRoot - 512 balances 6.0490 ms/op 4.4104 ms/op 1.37
BeaconState.hashTreeRoot - 250000 balances 108.57 ms/op 75.834 ms/op 1.43
aggregationBits - 2048 els - zipIndexesInBitList 23.453 us/op 35.749 us/op 0.66
regular array get 100000 times 60.549 us/op 59.251 us/op 1.02
wrappedArray get 100000 times 60.532 us/op 59.214 us/op 1.02
arrayWithProxy get 100000 times 28.239 ms/op 27.054 ms/op 1.04
ssz.Root.equals 437.00 ns/op 482.00 ns/op 0.91
byteArrayEquals 437.00 ns/op 464.00 ns/op 0.94
shuffle list - 16384 els 11.582 ms/op 9.7154 ms/op 1.19
shuffle list - 250000 els 168.34 ms/op 143.10 ms/op 1.18
processSlot - 1 slots 12.227 us/op 10.508 us/op 1.16
processSlot - 32 slots 1.8535 ms/op 1.5324 ms/op 1.21
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 409.84 us/op 342.17 us/op 1.20
getCommitteeAssignments - req 1 vs - 250000 vc 5.3647 ms/op 4.7154 ms/op 1.14
getCommitteeAssignments - req 100 vs - 250000 vc 7.8561 ms/op 6.4699 ms/op 1.21
getCommitteeAssignments - req 1000 vs - 250000 vc 8.4377 ms/op 6.8730 ms/op 1.23
computeProposers - vc 250000 17.558 ms/op 16.494 ms/op 1.06
computeEpochShuffling - vc 250000 171.68 ms/op 163.34 ms/op 1.05
getNextSyncCommittee - vc 250000 271.20 ms/op 262.14 ms/op 1.03
pass gossip attestations to forkchoice per slot 5.9116 ms/op 5.9092 ms/op 1.00
computeDeltas 3.5890 ms/op 3.3301 ms/op 1.08
computeProposerBoostScoreFromBalances 810.26 us/op 812.87 us/op 1.00
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.6309 ms/op 2.2135 ms/op 0.74
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 65.034 us/op 78.722 us/op 0.83
BLS verify - blst-native 2.1664 ms/op 1.6474 ms/op 1.32
BLS verifyMultipleSignatures 3 - blst-native 4.4807 ms/op 3.3468 ms/op 1.34
BLS verifyMultipleSignatures 8 - blst-native 9.6697 ms/op 7.2089 ms/op 1.34
BLS verifyMultipleSignatures 32 - blst-native 35.152 ms/op 26.114 ms/op 1.35
BLS aggregatePubkeys 32 - blst-native 46.784 us/op 34.757 us/op 1.35
BLS aggregatePubkeys 128 - blst-native 182.06 us/op 134.68 us/op 1.35
getAttestationsForBlock 48.931 ms/op 62.255 ms/op 0.79
isKnown best case - 1 super set check 496.00 ns/op 376.00 ns/op 1.32
isKnown normal case - 2 super set checks 483.00 ns/op 371.00 ns/op 1.30
isKnown worse case - 16 super set checks 484.00 ns/op 374.00 ns/op 1.29
CheckpointStateCache - add get delete 10.273 us/op 9.7810 us/op 1.05
validate gossip signedAggregateAndProof - struct 5.0028 ms/op 3.7612 ms/op 1.33
validate gossip attestation - struct 2.3622 ms/op 1.7764 ms/op 1.33
altair verifyImport mainnet_s3766816:31 6.7943 s/op 5.6520 s/op 1.20
pickEth1Vote - no votes 2.0463 ms/op 1.9174 ms/op 1.07
pickEth1Vote - max votes 19.419 ms/op 25.012 ms/op 0.78
pickEth1Vote - Eth1Data hashTreeRoot value x2048 12.752 ms/op 11.282 ms/op 1.13
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 19.298 ms/op 20.776 ms/op 0.93
pickEth1Vote - Eth1Data fastSerialize value x2048 1.4733 ms/op 1.4618 ms/op 1.01
pickEth1Vote - Eth1Data fastSerialize tree x2048 14.138 ms/op 18.257 ms/op 0.77
bytes32 toHexString 1.0680 us/op 1.0140 us/op 1.05
bytes32 Buffer.toString(hex) 730.00 ns/op 656.00 ns/op 1.11
bytes32 Buffer.toString(hex) from Uint8Array 965.00 ns/op 833.00 ns/op 1.16
bytes32 Buffer.toString(hex) + 0x 718.00 ns/op 666.00 ns/op 1.08
Object access 1 prop 0.32000 ns/op 0.34700 ns/op 0.92
Map access 1 prop 0.34200 ns/op 0.27300 ns/op 1.25
Object get x1000 11.358 ns/op 15.674 ns/op 0.72
Map get x1000 0.91800 ns/op 0.92900 ns/op 0.99
Object set x1000 64.016 ns/op 112.67 ns/op 0.57
Map set x1000 41.848 ns/op 69.528 ns/op 0.60
Return object 10000 times 0.43410 ns/op 0.33170 ns/op 1.31
Throw Error 10000 times 6.1332 us/op 5.3052 us/op 1.16
enrSubnets - fastDeserialize 64 bits 2.4630 us/op 2.4890 us/op 0.99
enrSubnets - ssz BitVector 64 bits 770.00 ns/op 722.00 ns/op 1.07
enrSubnets - fastDeserialize 4 bits 358.00 ns/op 393.00 ns/op 0.91
enrSubnets - ssz BitVector 4 bits 748.00 ns/op 728.00 ns/op 1.03
prioritizePeers score -10:0 att 32-0.1 sync 2-0 77.341 us/op 86.397 us/op 0.90
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 114.75 us/op 126.45 us/op 0.91
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 183.72 us/op 217.65 us/op 0.84
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 353.45 us/op 349.45 us/op 1.01
prioritizePeers score 0:0 att 64-1 sync 4-1 407.79 us/op 413.33 us/op 0.99
RateTracker 1000000 limit, 1 obj count per request 171.67 ns/op 175.85 ns/op 0.98
RateTracker 1000000 limit, 2 obj count per request 124.27 ns/op 135.33 ns/op 0.92
RateTracker 1000000 limit, 4 obj count per request 101.52 ns/op 112.10 ns/op 0.91
RateTracker 1000000 limit, 8 obj count per request 89.474 ns/op 101.11 ns/op 0.88
RateTracker with prune 3.4390 us/op 4.2400 us/op 0.81
array of 16000 items push then shift 51.577 us/op 2.7841 us/op 18.53
LinkedList of 16000 items push then shift 15.264 ns/op 27.374 ns/op 0.56
array of 16000 items push then pop 182.19 ns/op 239.17 ns/op 0.76
LinkedList of 16000 items push then pop 13.770 ns/op 21.903 ns/op 0.63
array of 24000 items push then shift 77.334 us/op 4.0057 us/op 19.31
LinkedList of 24000 items push then shift 17.271 ns/op 29.141 ns/op 0.59
array of 24000 items push then pop 180.68 ns/op 182.25 ns/op 0.99
LinkedList of 24000 items push then pop 14.292 ns/op 21.506 ns/op 0.66
intersect bitArray bitLen 8 10.829 ns/op 10.187 ns/op 1.06
intersect array and set length 8 119.43 ns/op 150.10 ns/op 0.80
intersect bitArray bitLen 128 55.699 ns/op 63.662 ns/op 0.87
intersect array and set length 128 1.6524 us/op 2.0211 us/op 0.82

by benchmarkbot/action

@g11tech g11tech enabled auto-merge (squash) June 25, 2022 14:06
@g11tech g11tech force-pushed the g11tech/merge-script-sepolia branch from f186445 to cd1013f Compare June 25, 2022 14:38
@g11tech g11tech merged commit a21514a into unstable Jun 25, 2022
@g11tech g11tech deleted the g11tech/merge-script-sepolia branch June 25, 2022 15:02
wemeetagain pushed a commit that referenced this pull request Jun 28, 2022
* Add ability to spin up sepolia network via merge setup

* sepolia network arg for besu
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