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 mainnet-shadow-4 configs #3983

Merged
merged 1 commit into from
May 7, 2022
Merged

add mainnet-shadow-4 configs #3983

merged 1 commit into from
May 7, 2022

Conversation

philknows
Copy link
Member

Update configs for upcoming mainnet shadow fork 4.
Reference: https://github.com/eth-clients/merge-testnets/tree/main/mainnet-shadow-fork-4.

Adds ability to follow mnsf4 using lodestar <> geth | nethermind | besu

ethereumjs *should( work but is not yet performant for mainnet blocks, so might not sync up.

Commands
nethermind: ./setup.sh --dataDir mainnet-shadow3 --elClient nethermind --devnetVars ./mainnetshadow-3.vars --dockerWithSudo --withTerminal "gnome-terminal --disable-factory --"

geth: ./setup.sh --dataDir mainnet-shadow3 --elClient geth --devnetVars ./mainnetshadow-3.vars --dockerWithSudo --withTerminal "gnome-terminal --disable-factory --"

besu: ./setup.sh --dataDir mainnet-shadow3 --elClient besu --devnetVars ./mainnetshadow-3.vars --dockerWithSudo --withTerminal "gnome-terminal --disable-factory --"

@philknows philknows requested a review from a team as a code owner May 6, 2022 19:42
@codecov
Copy link

codecov bot commented May 6, 2022

Codecov Report

Merging #3983 (924044d) into master (d7a3211) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #3983   +/-   ##
=======================================
  Coverage   36.77%   36.77%           
=======================================
  Files         325      325           
  Lines        9223     9223           
  Branches     1498     1498           
=======================================
  Hits         3392     3392           
  Misses       5640     5640           
  Partials      191      191           

@github-actions
Copy link
Contributor

github-actions bot commented May 6, 2022

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: b43baea Previous: d7a3211 Ratio
BeaconState.hashTreeRoot - No change 534.00 ns/op 437.00 ns/op 1.22
BeaconState.hashTreeRoot - 1 full validator 56.050 us/op 56.807 us/op 0.99
BeaconState.hashTreeRoot - 32 full validator 575.82 us/op 545.63 us/op 1.06
BeaconState.hashTreeRoot - 512 full validator 6.1298 ms/op 6.0610 ms/op 1.01
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 70.498 us/op 68.824 us/op 1.02
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 961.28 us/op 958.93 us/op 1.00
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 13.240 ms/op 13.401 ms/op 0.99
BeaconState.hashTreeRoot - 1 balances 52.625 us/op 53.426 us/op 0.99
BeaconState.hashTreeRoot - 32 balances 473.75 us/op 462.96 us/op 1.02
BeaconState.hashTreeRoot - 512 balances 4.5533 ms/op 4.5849 ms/op 0.99
BeaconState.hashTreeRoot - 250000 balances 103.99 ms/op 110.96 ms/op 0.94
processSlot - 1 slots 9.4570 us/op 9.5990 us/op 0.99
processSlot - 32 slots 1.5631 ms/op 1.5855 ms/op 0.99
getCommitteeAssignments - req 1 vs - 250000 vc 5.2320 ms/op 5.2799 ms/op 0.99
getCommitteeAssignments - req 100 vs - 250000 vc 7.2399 ms/op 7.4979 ms/op 0.97
getCommitteeAssignments - req 1000 vs - 250000 vc 7.7559 ms/op 8.0069 ms/op 0.97
computeProposers - vc 250000 15.750 ms/op 17.220 ms/op 0.91
computeEpochShuffling - vc 250000 157.92 ms/op 159.03 ms/op 0.99
getNextSyncCommittee - vc 250000 265.56 ms/op 280.64 ms/op 0.95
altair processAttestation - 250000 vs - 7PWei normalcase 3.6984 ms/op 4.1538 ms/op 0.89
altair processAttestation - 250000 vs - 7PWei worstcase 5.7897 ms/op 5.9040 ms/op 0.98
altair processAttestation - setStatus - 1/6 committees join 195.39 us/op 199.22 us/op 0.98
altair processAttestation - setStatus - 1/3 committees join 375.12 us/op 381.84 us/op 0.98
altair processAttestation - setStatus - 1/2 committees join 526.27 us/op 533.00 us/op 0.99
altair processAttestation - setStatus - 2/3 committees join 686.53 us/op 684.08 us/op 1.00
altair processAttestation - setStatus - 4/5 committees join 947.84 us/op 946.65 us/op 1.00
altair processAttestation - setStatus - 100% committees join 1.1131 ms/op 1.1343 ms/op 0.98
altair processBlock - 250000 vs - 7PWei normalcase 23.706 ms/op 26.736 ms/op 0.89
altair processBlock - 250000 vs - 7PWei normalcase hashState 34.117 ms/op 36.259 ms/op 0.94
altair processBlock - 250000 vs - 7PWei worstcase 70.777 ms/op 74.926 ms/op 0.94
altair processBlock - 250000 vs - 7PWei worstcase hashState 104.80 ms/op 112.93 ms/op 0.93
altair processEth1Data - 250000 vs - 7PWei normalcase 734.32 us/op 878.36 us/op 0.84
altair processEpoch - mainnet_e81889 540.81 ms/op 578.45 ms/op 0.93
mainnet_e81889 - altair beforeProcessEpoch 140.30 ms/op 144.21 ms/op 0.97
mainnet_e81889 - altair processJustificationAndFinalization 22.622 us/op 26.382 us/op 0.86
mainnet_e81889 - altair processInactivityUpdates 9.9544 ms/op 12.211 ms/op 0.82
mainnet_e81889 - altair processRewardsAndPenalties 126.78 ms/op 133.17 ms/op 0.95
mainnet_e81889 - altair processRegistryUpdates 3.7630 us/op 4.2590 us/op 0.88
mainnet_e81889 - altair processSlashings 1000.0 ns/op 1.2850 us/op 0.78
mainnet_e81889 - altair processEth1DataReset 1.0680 us/op 1.4380 us/op 0.74
mainnet_e81889 - altair processEffectiveBalanceUpdates 7.7109 ms/op 7.1801 ms/op 1.07
mainnet_e81889 - altair processSlashingsReset 4.6950 us/op 6.5980 us/op 0.71
mainnet_e81889 - altair processRandaoMixesReset 5.1390 us/op 7.1100 us/op 0.72
mainnet_e81889 - altair processHistoricalRootsUpdate 1.1260 us/op 1.6000 us/op 0.70
mainnet_e81889 - altair processParticipationFlagUpdates 3.4830 us/op 5.5780 us/op 0.62
mainnet_e81889 - altair processSyncCommitteeUpdates 909.00 ns/op 2.2380 us/op 0.41
mainnet_e81889 - altair afterProcessEpoch 182.65 ms/op 191.38 ms/op 0.95
altair processInactivityUpdates - 250000 normalcase 31.552 ms/op 35.750 ms/op 0.88
altair processInactivityUpdates - 250000 worstcase 26.023 ms/op 30.729 ms/op 0.85
altair processRewardsAndPenalties - 250000 normalcase 76.547 ms/op 147.12 ms/op 0.52
altair processRewardsAndPenalties - 250000 worstcase 103.88 ms/op 117.17 ms/op 0.89
altair processSyncCommitteeUpdates - 250000 274.39 ms/op 287.82 ms/op 0.95
Tree 40 250000 create 631.09 ms/op 865.71 ms/op 0.73
Tree 40 250000 get(125000) 288.78 ns/op 287.41 ns/op 1.00
Tree 40 250000 set(125000) 2.1039 us/op 2.4431 us/op 0.86
Tree 40 250000 toArray() 31.253 ms/op 33.016 ms/op 0.95
Tree 40 250000 iterate all - toArray() + loop 31.139 ms/op 33.790 ms/op 0.92
Tree 40 250000 iterate all - get(i) 108.99 ms/op 112.77 ms/op 0.97
MutableVector 250000 create 14.242 ms/op 18.099 ms/op 0.79
MutableVector 250000 get(125000) 14.804 ns/op 13.129 ns/op 1.13
MutableVector 250000 set(125000) 525.15 ns/op 648.89 ns/op 0.81
MutableVector 250000 toArray() 6.2507 ms/op 6.7370 ms/op 0.93
MutableVector 250000 iterate all - toArray() + loop 6.7374 ms/op 6.7497 ms/op 1.00
MutableVector 250000 iterate all - get(i) 3.4439 ms/op 3.4408 ms/op 1.00
Array 250000 create 5.5751 ms/op 6.2128 ms/op 0.90
Array 250000 clone - spread 3.5287 ms/op 2.8005 ms/op 1.26
Array 250000 get(125000) 1.2130 ns/op 1.2320 ns/op 0.98
Array 250000 set(125000) 1.1360 ns/op 1.2310 ns/op 0.92
Array 250000 iterate all - loop 169.02 us/op 167.82 us/op 1.01
effectiveBalanceIncrements clone Uint8Array 300000 71.077 us/op 86.557 us/op 0.82
effectiveBalanceIncrements clone MutableVector 300000 520.00 ns/op 852.00 ns/op 0.61
effectiveBalanceIncrements rw all Uint8Array 300000 301.76 us/op 303.97 us/op 0.99
effectiveBalanceIncrements rw all MutableVector 300000 157.40 ms/op 213.01 ms/op 0.74
aggregationBits - 2048 els - zipIndexesInBitList 23.918 us/op 40.275 us/op 0.59
regular array get 100000 times 67.426 us/op 67.461 us/op 1.00
wrappedArray get 100000 times 67.467 us/op 67.570 us/op 1.00
arrayWithProxy get 100000 times 33.182 ms/op 29.477 ms/op 1.13
ssz.Root.equals 445.00 ns/op 507.00 ns/op 0.88
byteArrayEquals 439.00 ns/op 493.00 ns/op 0.89
phase0 processBlock - 250000 vs - 7PWei normalcase 3.3543 ms/op 4.6924 ms/op 0.71
phase0 processBlock - 250000 vs - 7PWei worstcase 45.756 ms/op 47.302 ms/op 0.97
phase0 afterProcessEpoch - 250000 vs - 7PWei 173.90 ms/op 182.28 ms/op 0.95
phase0 beforeProcessEpoch - 250000 vs - 7PWei 71.670 ms/op 83.623 ms/op 0.86
phase0 processEpoch - mainnet_e58758 485.32 ms/op 557.91 ms/op 0.87
mainnet_e58758 - phase0 beforeProcessEpoch 215.05 ms/op 263.45 ms/op 0.82
mainnet_e58758 - phase0 processJustificationAndFinalization 24.772 us/op 29.850 us/op 0.83
mainnet_e58758 - phase0 processRewardsAndPenalties 102.33 ms/op 132.31 ms/op 0.77
mainnet_e58758 - phase0 processRegistryUpdates 9.9550 us/op 17.222 us/op 0.58
mainnet_e58758 - phase0 processSlashings 1.2150 us/op 2.5670 us/op 0.47
mainnet_e58758 - phase0 processEth1DataReset 1.0460 us/op 1.6300 us/op 0.64
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 5.6666 ms/op 7.3095 ms/op 0.78
mainnet_e58758 - phase0 processSlashingsReset 5.8190 us/op 8.6820 us/op 0.67
mainnet_e58758 - phase0 processRandaoMixesReset 5.6520 us/op 8.2130 us/op 0.69
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.2240 us/op 1.6750 us/op 0.73
mainnet_e58758 - phase0 processParticipationRecordUpdates 5.0970 us/op 7.4930 us/op 0.68
mainnet_e58758 - phase0 afterProcessEpoch 152.07 ms/op 152.83 ms/op 1.00
phase0 processEffectiveBalanceUpdates - 250000 normalcase 6.3573 ms/op 6.4453 ms/op 0.99
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 6.8268 ms/op 6.7858 ms/op 1.01
phase0 processRegistryUpdates - 250000 normalcase 8.1410 us/op 9.9810 us/op 0.82
phase0 processRegistryUpdates - 250000 badcase_full_deposits 410.04 us/op 415.39 us/op 0.99
phase0 processRegistryUpdates - 250000 worstcase 0.5 233.10 ms/op 220.56 ms/op 1.06
phase0 getAttestationDeltas - 250000 normalcase 15.080 ms/op 16.321 ms/op 0.92
phase0 getAttestationDeltas - 250000 worstcase 14.711 ms/op 17.633 ms/op 0.83
phase0 processSlashings - 250000 worstcase 5.4714 ms/op 6.1938 ms/op 0.88
shuffle list - 16384 els 10.657 ms/op 10.700 ms/op 1.00
shuffle list - 250000 els 154.62 ms/op 153.85 ms/op 1.00
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 363.57 us/op 360.94 us/op 1.01
pass gossip attestations to forkchoice per slot 3.3761 ms/op 3.5094 ms/op 0.96
computeDeltas 3.1523 ms/op 3.7564 ms/op 0.84
computeProposerBoostScoreFromBalances 503.20 us/op 503.43 us/op 1.00
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.8346 ms/op 2.4246 ms/op 0.76
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 74.839 us/op 98.613 us/op 0.76
BLS verify - blst-native 1.8612 ms/op 1.8528 ms/op 1.00
BLS verifyMultipleSignatures 3 - blst-native 3.8056 ms/op 3.8176 ms/op 1.00
BLS verifyMultipleSignatures 8 - blst-native 8.1864 ms/op 8.2007 ms/op 1.00
BLS verifyMultipleSignatures 32 - blst-native 29.666 ms/op 29.653 ms/op 1.00
BLS aggregatePubkeys 32 - blst-native 39.471 us/op 39.747 us/op 0.99
BLS aggregatePubkeys 128 - blst-native 153.99 us/op 153.97 us/op 1.00
getAttestationsForBlock 56.214 ms/op 61.962 ms/op 0.91
CheckpointStateCache - add get delete 10.566 us/op 11.115 us/op 0.95
validate gossip signedAggregateAndProof - struct 4.2667 ms/op 4.2517 ms/op 1.00
validate gossip attestation - struct 2.0231 ms/op 2.0260 ms/op 1.00
pickEth1Vote - no votes 2.1787 ms/op 2.2468 ms/op 0.97
pickEth1Vote - max votes 19.629 ms/op 21.473 ms/op 0.91
pickEth1Vote - Eth1Data hashTreeRoot value x2048 11.086 ms/op 11.343 ms/op 0.98
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 19.242 ms/op 21.066 ms/op 0.91
pickEth1Vote - Eth1Data fastSerialize value x2048 1.6340 ms/op 1.6295 ms/op 1.00
pickEth1Vote - Eth1Data fastSerialize tree x2048 12.565 ms/op 13.928 ms/op 0.90
bytes32 toHexString 953.00 ns/op 998.00 ns/op 0.95
bytes32 Buffer.toString(hex) 657.00 ns/op 680.00 ns/op 0.97
bytes32 Buffer.toString(hex) from Uint8Array 894.00 ns/op 902.00 ns/op 0.99
bytes32 Buffer.toString(hex) + 0x 668.00 ns/op 694.00 ns/op 0.96
Object access 1 prop 0.32900 ns/op 0.35300 ns/op 0.93
Map access 1 prop 0.29300 ns/op 0.29900 ns/op 0.98
Object get x1000 17.272 ns/op 17.670 ns/op 0.98
Map get x1000 0.96800 ns/op 1.0950 ns/op 0.88
Object set x1000 102.77 ns/op 111.48 ns/op 0.92
Map set x1000 64.084 ns/op 69.217 ns/op 0.93
Return object 10000 times 0.37590 ns/op 0.37050 ns/op 1.01
Throw Error 10000 times 5.9410 us/op 5.8959 us/op 1.01
enrSubnets - fastDeserialize 64 bits 2.4910 us/op 2.8300 us/op 0.88
enrSubnets - ssz BitVector 64 bits 711.00 ns/op 751.00 ns/op 0.95
enrSubnets - fastDeserialize 4 bits 377.00 ns/op 402.00 ns/op 0.94
enrSubnets - ssz BitVector 4 bits 703.00 ns/op 739.00 ns/op 0.95
prioritizePeers score -10:0 att 32-0.1 sync 2-0 87.669 us/op 92.868 us/op 0.94
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 123.24 us/op 124.56 us/op 0.99
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 198.31 us/op 210.50 us/op 0.94
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 429.02 us/op 448.95 us/op 0.96
prioritizePeers score 0:0 att 64-1 sync 4-1 457.35 us/op 471.44 us/op 0.97
RateTracker 1000000 limit, 1 obj count per request 176.40 ns/op 183.13 ns/op 0.96
RateTracker 1000000 limit, 2 obj count per request 129.40 ns/op 137.56 ns/op 0.94
RateTracker 1000000 limit, 4 obj count per request 110.25 ns/op 116.35 ns/op 0.95
RateTracker 1000000 limit, 8 obj count per request 96.023 ns/op 103.40 ns/op 0.93
RateTracker with prune 3.5720 us/op 4.6360 us/op 0.77
array of 16000 items push then shift 3.1156 us/op 3.1724 us/op 0.98
LinkedList of 16000 items push then shift 16.297 ns/op 20.128 ns/op 0.81
array of 16000 items push then pop 203.35 ns/op 221.89 ns/op 0.92
LinkedList of 16000 items push then pop 15.212 ns/op 17.618 ns/op 0.86
array of 24000 items push then shift 4.5402 us/op 4.5682 us/op 0.99
LinkedList of 24000 items push then shift 19.588 ns/op 23.213 ns/op 0.84
array of 24000 items push then pop 192.32 ns/op 223.87 ns/op 0.86
LinkedList of 24000 items push then pop 16.882 ns/op 19.778 ns/op 0.85

by benchmarkbot/action

@g11tech g11tech merged commit 2d7741c into master May 7, 2022
@g11tech g11tech deleted the philknows/mainnet-shadow-4 branch May 7, 2022 08:15
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