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

Configuring nethermind with jwtAuth in CI #3827

Merged
merged 12 commits into from
Mar 7, 2022
Merged

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Mar 4, 2022

This PR updates our merge-interop sim in CI with jwt compatible build of nethermind.

It also fixes the options merging in the dev beacon node as the provided eth1provider urls and executions urls were getting merged with defaults instead of being replaced, leading to wrong url configuration in the eth1 tracker, executionEngine modules

@codecov
Copy link

codecov bot commented Mar 4, 2022

Codecov Report

Merging #3827 (6c04174) into master (bdeef8d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #3827   +/-   ##
=======================================
  Coverage   36.43%   36.43%           
=======================================
  Files         325      325           
  Lines        8984     8984           
  Branches     1402     1402           
=======================================
  Hits         3273     3273           
  Misses       5568     5568           
  Partials      143      143           

@github-actions
Copy link
Contributor

github-actions bot commented Mar 4, 2022

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: b3539c5 Previous: bdeef8d Ratio
BeaconState.hashTreeRoot - No change 561.00 ns/op 638.00 ns/op 0.88
BeaconState.hashTreeRoot - 1 full validator 81.585 us/op 109.29 us/op 0.75
BeaconState.hashTreeRoot - 32 full validator 1.1796 ms/op 1.4755 ms/op 0.80
BeaconState.hashTreeRoot - 512 full validator 15.922 ms/op 17.924 ms/op 0.89
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 79.743 us/op 102.94 us/op 0.77
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.6039 ms/op 1.8943 ms/op 0.85
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 19.189 ms/op 22.565 ms/op 0.85
BeaconState.hashTreeRoot - 1 balances 58.431 us/op 78.495 us/op 0.74
BeaconState.hashTreeRoot - 32 balances 497.29 us/op 652.86 us/op 0.76
BeaconState.hashTreeRoot - 512 balances 4.9295 ms/op 6.2422 ms/op 0.79
BeaconState.hashTreeRoot - 250000 balances 93.041 ms/op 117.75 ms/op 0.79
processSlot - 1 slots 45.563 us/op 57.153 us/op 0.80
processSlot - 32 slots 2.1639 ms/op 2.9053 ms/op 0.74
getCommitteeAssignments - req 1 vs - 250000 vc 5.2833 ms/op 5.3693 ms/op 0.98
getCommitteeAssignments - req 100 vs - 250000 vc 7.3220 ms/op 7.5564 ms/op 0.97
getCommitteeAssignments - req 1000 vs - 250000 vc 7.8309 ms/op 8.3590 ms/op 0.94
computeProposers - vc 250000 21.658 ms/op 28.733 ms/op 0.75
computeEpochShuffling - vc 250000 192.23 ms/op 201.94 ms/op 0.95
getNextSyncCommittee - vc 250000 353.25 ms/op 447.79 ms/op 0.79
altair processAttestation - 250000 vs - 7PWei normalcase 31.672 ms/op 39.193 ms/op 0.81
altair processAttestation - 250000 vs - 7PWei worstcase 36.148 ms/op 40.749 ms/op 0.89
altair processAttestation - setStatus - 1/6 committees join 13.426 ms/op 14.650 ms/op 0.92
altair processAttestation - setStatus - 1/3 committees join 24.586 ms/op 29.854 ms/op 0.82
altair processAttestation - setStatus - 1/2 committees join 35.778 ms/op 43.931 ms/op 0.81
altair processAttestation - setStatus - 2/3 committees join 48.038 ms/op 60.111 ms/op 0.80
altair processAttestation - setStatus - 4/5 committees join 57.223 ms/op 77.730 ms/op 0.74
altair processAttestation - setStatus - 100% committees join 71.067 ms/op 92.568 ms/op 0.77
altair processAttestation - updateEpochParticipants - 1/6 committees join 12.140 ms/op 16.126 ms/op 0.75
altair processAttestation - updateEpochParticipants - 1/3 committees join 25.698 ms/op 30.495 ms/op 0.84
altair processAttestation - updateEpochParticipants - 1/2 committees join 20.848 ms/op 33.818 ms/op 0.62
altair processAttestation - updateEpochParticipants - 2/3 committees join 37.676 ms/op 33.826 ms/op 1.11
altair processAttestation - updateEpochParticipants - 4/5 committees join 21.302 ms/op 27.166 ms/op 0.78
altair processAttestation - updateEpochParticipants - 100% committees join 24.670 ms/op 35.146 ms/op 0.70
altair processAttestation - updateAllStatus 19.153 ms/op 31.195 ms/op 0.61
altair processBlock - 250000 vs - 7PWei normalcase 34.384 ms/op 53.373 ms/op 0.64
altair processBlock - 250000 vs - 7PWei worstcase 105.78 ms/op 189.73 ms/op 0.56
altair processEpoch - mainnet_e81889 815.82 ms/op 1.1793 s/op 0.69
mainnet_e81889 - altair beforeProcessEpoch 398.72 ms/op 322.91 ms/op 1.23
mainnet_e81889 - altair processJustificationAndFinalization 70.494 us/op 118.23 us/op 0.60
mainnet_e81889 - altair processInactivityUpdates 18.516 ms/op 19.590 ms/op 0.95
mainnet_e81889 - altair processRewardsAndPenalties 95.196 ms/op 148.71 ms/op 0.64
mainnet_e81889 - altair processRegistryUpdates 6.7360 us/op 25.976 us/op 0.26
mainnet_e81889 - altair processSlashings 1.6540 us/op 6.9020 us/op 0.24
mainnet_e81889 - altair processEth1DataReset 1.7160 us/op 6.2770 us/op 0.27
mainnet_e81889 - altair processEffectiveBalanceUpdates 6.3096 ms/op 7.2618 ms/op 0.87
mainnet_e81889 - altair processSlashingsReset 12.615 us/op 30.600 us/op 0.41
mainnet_e81889 - altair processRandaoMixesReset 15.366 us/op 40.805 us/op 0.38
mainnet_e81889 - altair processHistoricalRootsUpdate 2.4370 us/op 8.7130 us/op 0.28
mainnet_e81889 - altair processParticipationFlagUpdates 67.247 ms/op 73.817 ms/op 0.91
mainnet_e81889 - altair processSyncCommitteeUpdates 2.2100 us/op 5.2490 us/op 0.42
mainnet_e81889 - altair afterProcessEpoch 238.78 ms/op 246.27 ms/op 0.97
altair processInactivityUpdates - 250000 normalcase 82.479 ms/op 92.030 ms/op 0.90
altair processInactivityUpdates - 250000 worstcase 71.989 ms/op 90.065 ms/op 0.80
altair processParticipationFlagUpdates - 250000 anycase 61.228 ms/op 69.090 ms/op 0.89
altair processRewardsAndPenalties - 250000 normalcase 98.534 ms/op 96.028 ms/op 1.03
altair processRewardsAndPenalties - 250000 worstcase 113.80 ms/op 87.253 ms/op 1.30
altair processSyncCommitteeUpdates - 250000 359.71 ms/op 431.87 ms/op 0.83
Tree 40 250000 create 672.88 ms/op 860.71 ms/op 0.78
Tree 40 250000 get(125000) 325.63 ns/op 330.65 ns/op 0.98
Tree 40 250000 set(125000) 2.2802 us/op 3.0717 us/op 0.74
Tree 40 250000 toArray() 46.638 ms/op 48.506 ms/op 0.96
Tree 40 250000 iterate all - toArray() + loop 46.597 ms/op 51.508 ms/op 0.90
Tree 40 250000 iterate all - get(i) 126.81 ms/op 125.85 ms/op 1.01
MutableVector 250000 create 23.028 ms/op 19.904 ms/op 1.16
MutableVector 250000 get(125000) 13.115 ns/op 14.419 ns/op 0.91
MutableVector 250000 set(125000) 592.27 ns/op 657.79 ns/op 0.90
MutableVector 250000 toArray() 9.0693 ms/op 8.4345 ms/op 1.08
MutableVector 250000 iterate all - toArray() + loop 9.0213 ms/op 9.6872 ms/op 0.93
MutableVector 250000 iterate all - get(i) 3.3163 ms/op 3.7757 ms/op 0.88
Array 250000 create 5.7059 ms/op 6.5166 ms/op 0.88
Array 250000 clone - spread 2.4242 ms/op 2.5012 ms/op 0.97
Array 250000 get(125000) 1.1140 ns/op 1.0490 ns/op 1.06
Array 250000 set(125000) 1.1240 ns/op 1.0840 ns/op 1.04
Array 250000 iterate all - loop 167.88 us/op 133.41 us/op 1.26
effectiveBalanceIncrements clone Uint8Array 300000 228.07 us/op 83.208 us/op 2.74
effectiveBalanceIncrements clone MutableVector 300000 499.00 ns/op 670.00 ns/op 0.74
effectiveBalanceIncrements rw all Uint8Array 300000 267.01 us/op 181.27 us/op 1.47
effectiveBalanceIncrements rw all MutableVector 300000 169.00 ms/op 242.62 ms/op 0.70
aggregationBits - 2048 els - readonlyValues 157.59 us/op 207.63 us/op 0.76
aggregationBits - 2048 els - zipIndexesInBitList 31.927 us/op 45.183 us/op 0.71
regular array get 100000 times 59.668 us/op 55.874 us/op 1.07
wrappedArray get 100000 times 59.530 us/op 57.056 us/op 1.04
arrayWithProxy get 100000 times 29.262 ms/op 34.153 ms/op 0.86
ssz.Root.equals 1.1150 us/op 1.3540 us/op 0.82
ssz.Root.equals with valueOf() 1.3580 us/op 1.5760 us/op 0.86
byteArrayEquals with valueOf() 1.3970 us/op 1.5270 us/op 0.91
phase0 processBlock - 250000 vs - 7PWei normalcase 8.0297 ms/op 9.7673 ms/op 0.82
phase0 processBlock - 250000 vs - 7PWei worstcase 75.339 ms/op 97.176 ms/op 0.78
phase0 afterProcessEpoch - 250000 vs - 7PWei 208.79 ms/op 251.51 ms/op 0.83
phase0 beforeProcessEpoch - 250000 vs - 7PWei 564.58 ms/op 705.24 ms/op 0.80
phase0 processEpoch - mainnet_e58758 793.01 ms/op 940.32 ms/op 0.84
mainnet_e58758 - phase0 beforeProcessEpoch 446.47 ms/op 551.66 ms/op 0.81
mainnet_e58758 - phase0 processJustificationAndFinalization 56.844 us/op 120.56 us/op 0.47
mainnet_e58758 - phase0 processRewardsAndPenalties 85.051 ms/op 123.58 ms/op 0.69
mainnet_e58758 - phase0 processRegistryUpdates 37.220 us/op 82.496 us/op 0.45
mainnet_e58758 - phase0 processSlashings 1.5330 us/op 6.3980 us/op 0.24
mainnet_e58758 - phase0 processEth1DataReset 1.3840 us/op 5.8000 us/op 0.24
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 5.1576 ms/op 5.9643 ms/op 0.86
mainnet_e58758 - phase0 processSlashingsReset 8.9140 us/op 32.039 us/op 0.28
mainnet_e58758 - phase0 processRandaoMixesReset 13.772 us/op 43.222 us/op 0.32
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.8690 us/op 8.1930 us/op 0.23
mainnet_e58758 - phase0 processParticipationRecordUpdates 11.783 us/op 26.516 us/op 0.44
mainnet_e58758 - phase0 afterProcessEpoch 185.07 ms/op 201.17 ms/op 0.92
phase0 processEffectiveBalanceUpdates - 250000 normalcase 5.9460 ms/op 6.4980 ms/op 0.92
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 6.5785 ms/op 7.0830 ms/op 0.93
phase0 processRegistryUpdates - 250000 normalcase 53.193 us/op 92.396 us/op 0.58
phase0 processRegistryUpdates - 250000 badcase_full_deposits 3.1615 ms/op 4.2409 ms/op 0.75
phase0 processRegistryUpdates - 250000 worstcase 0.5 1.5325 s/op 2.3735 s/op 0.65
phase0 getAttestationDeltas - 250000 normalcase 14.613 ms/op 14.544 ms/op 1.00
phase0 getAttestationDeltas - 250000 worstcase 13.165 ms/op 14.632 ms/op 0.90
phase0 processSlashings - 250000 worstcase 34.489 ms/op 46.621 ms/op 0.74
shuffle list - 16384 els 13.097 ms/op 13.620 ms/op 0.96
shuffle list - 250000 els 187.27 ms/op 192.37 ms/op 0.97
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 457.21 us/op 531.82 us/op 0.86
pass gossip attestations to forkchoice per slot 15.248 ms/op 18.515 ms/op 0.82
computeDeltas 3.6858 ms/op 3.6151 ms/op 1.02
computeProposerBoostScoreFromBalances 503.13 us/op 456.99 us/op 1.10
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.1982 ms/op 1.6834 ms/op 1.31
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 705.77 us/op 734.91 us/op 0.96
BLS verify - blst-native 1.8615 ms/op 2.5522 ms/op 0.73
BLS verifyMultipleSignatures 3 - blst-native 3.8199 ms/op 5.1193 ms/op 0.75
BLS verifyMultipleSignatures 8 - blst-native 8.2382 ms/op 11.354 ms/op 0.73
BLS verifyMultipleSignatures 32 - blst-native 29.879 ms/op 38.573 ms/op 0.77
BLS aggregatePubkeys 32 - blst-native 40.679 us/op 53.770 us/op 0.76
BLS aggregatePubkeys 128 - blst-native 154.19 us/op 212.47 us/op 0.73
getAttestationsForBlock 61.814 ms/op 62.653 ms/op 0.99
CheckpointStateCache - add get delete 17.610 us/op 21.734 us/op 0.81
validate gossip signedAggregateAndProof - struct 4.4753 ms/op 6.1676 ms/op 0.73
validate gossip signedAggregateAndProof - treeBacked 4.4112 ms/op 6.1974 ms/op 0.71
validate gossip attestation - struct 2.0894 ms/op 2.8695 ms/op 0.73
validate gossip attestation - treeBacked 2.1276 ms/op 2.9262 ms/op 0.73
pickEth1Vote - no votes 10.086 ms/op 11.675 ms/op 0.86
pickEth1Vote - max votes 52.161 ms/op 56.285 ms/op 0.93
pickEth1Vote - Eth1Data hashTreeRoot value x2048 25.391 ms/op 29.391 ms/op 0.86
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 9.8276 ms/op 11.348 ms/op 0.87
pickEth1Vote - Eth1Data fastSerialize value x2048 5.5168 ms/op 6.3818 ms/op 0.86
pickEth1Vote - Eth1Data fastSerialize tree x2048 24.289 ms/op 25.979 ms/op 0.93
bytes32 toHexString 1.8340 us/op 1.7310 us/op 1.06
bytes32 Buffer.toString(hex) 715.00 ns/op 777.00 ns/op 0.92
bytes32 Buffer.toString(hex) from Uint8Array 981.00 ns/op 1.0990 us/op 0.89
bytes32 Buffer.toString(hex) + 0x 703.00 ns/op 774.00 ns/op 0.91
Object access 1 prop 0.35900 ns/op 0.38200 ns/op 0.94
Map access 1 prop 0.29800 ns/op 0.32500 ns/op 0.92
Object get x1000 17.294 ns/op 15.637 ns/op 1.11
Map get x1000 0.99300 ns/op 0.94900 ns/op 1.05
Object set x1000 112.04 ns/op 111.62 ns/op 1.00
Map set x1000 68.547 ns/op 77.509 ns/op 0.88
Return object 10000 times 0.37050 ns/op 0.40940 ns/op 0.90
Throw Error 10000 times 5.9078 us/op 6.8334 us/op 0.86
enrSubnets - fastDeserialize 64 bits 1.2980 us/op 1.4260 us/op 0.91
enrSubnets - ssz BitVector 64 bits 16.537 us/op 17.619 us/op 0.94
enrSubnets - fastDeserialize 4 bits 473.00 ns/op 501.00 ns/op 0.94
enrSubnets - ssz BitVector 4 bits 2.8890 us/op 3.2440 us/op 0.89
RateTracker 1000000 limit, 1 obj count per request 182.59 ns/op 216.97 ns/op 0.84
RateTracker 1000000 limit, 2 obj count per request 137.62 ns/op 162.56 ns/op 0.85
RateTracker 1000000 limit, 4 obj count per request 114.74 ns/op 121.92 ns/op 0.94
RateTracker 1000000 limit, 8 obj count per request 103.07 ns/op 115.88 ns/op 0.89
RateTracker with prune 4.3280 us/op 5.1330 us/op 0.84
array of 16000 items push then shift 3.0877 us/op 5.3222 us/op 0.58
LinkedList of 16000 items push then shift 18.928 ns/op 17.583 ns/op 1.08
array of 16000 items push then pop 214.24 ns/op 224.09 ns/op 0.96
LinkedList of 16000 items push then pop 16.502 ns/op 17.542 ns/op 0.94
array of 24000 items push then shift 4.5653 us/op 7.5602 us/op 0.60
LinkedList of 24000 items push then shift 22.816 ns/op 19.156 ns/op 1.19
array of 24000 items push then pop 196.42 ns/op 206.40 ns/op 0.95
LinkedList of 24000 items push then pop 18.898 ns/op 18.647 ns/op 1.01

by benchmarkbot/action

@g11tech g11tech marked this pull request as ready for review March 6, 2022 08:43
@g11tech g11tech merged commit e52f24f into master Mar 7, 2022
@g11tech g11tech deleted the g11tech/nethermindjwt branch March 7, 2022 18:40
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.

None yet

2 participants