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

feat: simplify bootnode enr initialization #5945

Merged
merged 4 commits into from
Sep 12, 2023
Merged

Conversation

wemeetagain
Copy link
Member

Motivation

Especially when running a bootnode, its convenient, tho not strictly necessary, to have an ENR that changes as little as possible.

Description

On enr initialization, update the enr as little as possible.
On the bootnode setup, don't update the enr tcp or tcp6 fields

@wemeetagain wemeetagain requested a review from a team as a code owner September 7, 2023 19:10
@github-actions
Copy link
Contributor

github-actions bot commented Sep 7, 2023

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: a5c934d Previous: d51ee94 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 475.10 us/op 989.95 us/op 0.48
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 78.430 us/op 99.049 us/op 0.79
BLS verify - blst-native 1.3665 ms/op 1.3403 ms/op 1.02
BLS verifyMultipleSignatures 3 - blst-native 2.8612 ms/op 2.8101 ms/op 1.02
BLS verifyMultipleSignatures 8 - blst-native 6.2789 ms/op 6.3816 ms/op 0.98
BLS verifyMultipleSignatures 32 - blst-native 22.965 ms/op 22.790 ms/op 1.01
BLS verifyMultipleSignatures 64 - blst-native 45.097 ms/op 44.655 ms/op 1.01
BLS verifyMultipleSignatures 128 - blst-native 89.920 ms/op 90.877 ms/op 0.99
BLS deserializing 10000 signatures 924.07 ms/op 915.27 ms/op 1.01
BLS deserializing 100000 signatures 9.1031 s/op 9.0618 s/op 1.00
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.3706 ms/op 1.3601 ms/op 1.01
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.5506 ms/op 1.5152 ms/op 1.02
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.3893 ms/op 2.3320 ms/op 1.02
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.5033 ms/op 3.8011 ms/op 0.92
BLS verifyMultipleSignatures - same message - 128 - blst-native 6.3819 ms/op 6.4160 ms/op 0.99
BLS aggregatePubkeys 32 - blst-native 26.191 us/op 26.075 us/op 1.00
BLS aggregatePubkeys 128 - blst-native 102.85 us/op 99.855 us/op 1.03
getAttestationsForBlock 41.534 ms/op 34.173 ms/op 1.22
isKnown best case - 1 super set check 294.00 ns/op 267.00 ns/op 1.10
isKnown normal case - 2 super set checks 280.00 ns/op 267.00 ns/op 1.05
isKnown worse case - 16 super set checks 282.00 ns/op 268.00 ns/op 1.05
CheckpointStateCache - add get delete 5.0190 us/op 4.9110 us/op 1.02
validate api signedAggregateAndProof - struct 2.8479 ms/op 2.6347 ms/op 1.08
validate gossip signedAggregateAndProof - struct 2.8497 ms/op 2.6576 ms/op 1.07
validate gossip attestation - vc 640000 1.3830 ms/op 1.2981 ms/op 1.07
batch validate gossip attestation - vc 640000 - chunk 32 155.10 us/op 143.89 us/op 1.08
batch validate gossip attestation - vc 640000 - chunk 64 130.64 us/op 123.25 us/op 1.06
batch validate gossip attestation - vc 640000 - chunk 128 122.01 us/op 114.00 us/op 1.07
batch validate gossip attestation - vc 640000 - chunk 256 120.52 us/op 112.97 us/op 1.07
pickEth1Vote - no votes 1.2623 ms/op 1.1343 ms/op 1.11
pickEth1Vote - max votes 11.686 ms/op 9.9728 ms/op 1.17
pickEth1Vote - Eth1Data hashTreeRoot value x2048 9.0763 ms/op 8.7616 ms/op 1.04
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 17.718 ms/op 15.427 ms/op 1.15
pickEth1Vote - Eth1Data fastSerialize value x2048 700.23 us/op 581.54 us/op 1.20
pickEth1Vote - Eth1Data fastSerialize tree x2048 6.7339 ms/op 4.1979 ms/op 1.60
bytes32 toHexString 509.00 ns/op 465.00 ns/op 1.09
bytes32 Buffer.toString(hex) 305.00 ns/op 283.00 ns/op 1.08
bytes32 Buffer.toString(hex) from Uint8Array 477.00 ns/op 437.00 ns/op 1.09
bytes32 Buffer.toString(hex) + 0x 294.00 ns/op 288.00 ns/op 1.02
Object access 1 prop 0.15300 ns/op 0.15900 ns/op 0.96
Map access 1 prop 0.14800 ns/op 0.14000 ns/op 1.06
Object get x1000 7.8630 ns/op 7.5740 ns/op 1.04
Map get x1000 0.67000 ns/op 0.59000 ns/op 1.14
Object set x1000 51.073 ns/op 48.165 ns/op 1.06
Map set x1000 40.867 ns/op 38.493 ns/op 1.06
Return object 10000 times 0.24400 ns/op 0.24170 ns/op 1.01
Throw Error 10000 times 3.8930 us/op 3.8557 us/op 1.01
fastMsgIdFn sha256 / 200 bytes 3.4540 us/op 3.3080 us/op 1.04
fastMsgIdFn h32 xxhash / 200 bytes 311.00 ns/op 304.00 ns/op 1.02
fastMsgIdFn h64 xxhash / 200 bytes 350.00 ns/op 348.00 ns/op 1.01
fastMsgIdFn sha256 / 1000 bytes 11.696 us/op 11.366 us/op 1.03
fastMsgIdFn h32 xxhash / 1000 bytes 445.00 ns/op 454.00 ns/op 0.98
fastMsgIdFn h64 xxhash / 1000 bytes 426.00 ns/op 426.00 ns/op 1.00
fastMsgIdFn sha256 / 10000 bytes 106.94 us/op 101.89 us/op 1.05
fastMsgIdFn h32 xxhash / 10000 bytes 2.0140 us/op 1.9550 us/op 1.03
fastMsgIdFn h64 xxhash / 10000 bytes 1.3880 us/op 1.3040 us/op 1.06
enrSubnets - fastDeserialize 64 bits 1.2380 us/op 1.1840 us/op 1.05
enrSubnets - ssz BitVector 64 bits 433.00 ns/op 412.00 ns/op 1.05
enrSubnets - fastDeserialize 4 bits 182.00 ns/op 157.00 ns/op 1.16
enrSubnets - ssz BitVector 4 bits 468.00 ns/op 410.00 ns/op 1.14
prioritizePeers score -10:0 att 32-0.1 sync 2-0 105.58 us/op 99.464 us/op 1.06
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 131.70 us/op 127.62 us/op 1.03
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 178.39 us/op 157.16 us/op 1.14
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 336.06 us/op 282.59 us/op 1.19
prioritizePeers score 0:0 att 64-1 sync 4-1 397.17 us/op 327.68 us/op 1.21
array of 16000 items push then shift 1.7642 us/op 1.6375 us/op 1.08
LinkedList of 16000 items push then shift 9.7140 ns/op 8.9530 ns/op 1.08
array of 16000 items push then pop 106.25 ns/op 89.209 ns/op 1.19
LinkedList of 16000 items push then pop 9.1060 ns/op 8.9150 ns/op 1.02
array of 24000 items push then shift 2.5723 us/op 2.4434 us/op 1.05
LinkedList of 24000 items push then shift 9.5820 ns/op 9.0880 ns/op 1.05
array of 24000 items push then pop 150.26 ns/op 108.72 ns/op 1.38
LinkedList of 24000 items push then pop 9.6780 ns/op 8.6450 ns/op 1.12
intersect bitArray bitLen 8 7.3750 ns/op 6.8270 ns/op 1.08
intersect array and set length 8 62.284 ns/op 55.384 ns/op 1.12
intersect bitArray bitLen 128 35.477 ns/op 31.934 ns/op 1.11
intersect array and set length 128 871.74 ns/op 760.04 ns/op 1.15
bitArray.getTrueBitIndexes() bitLen 128 1.6540 us/op 1.5290 us/op 1.08
bitArray.getTrueBitIndexes() bitLen 248 2.8120 us/op 2.4960 us/op 1.13
bitArray.getTrueBitIndexes() bitLen 512 5.1440 us/op 5.0720 us/op 1.01
Buffer.concat 32 items 1.0900 us/op 983.00 ns/op 1.11
Uint8Array.set 32 items 2.3750 us/op 1.8830 us/op 1.26
Set add up to 64 items then delete first 4.6094 us/op 4.6642 us/op 0.99
OrderedSet add up to 64 items then delete first 6.0206 us/op 5.5821 us/op 1.08
Set add up to 64 items then delete last 5.0595 us/op 5.0399 us/op 1.00
OrderedSet add up to 64 items then delete last 6.2233 us/op 5.9604 us/op 1.04
Set add up to 64 items then delete middle 5.0235 us/op 4.6665 us/op 1.08
OrderedSet add up to 64 items then delete middle 7.4618 us/op 7.3428 us/op 1.02
Set add up to 128 items then delete first 10.046 us/op 9.8546 us/op 1.02
OrderedSet add up to 128 items then delete first 13.078 us/op 12.584 us/op 1.04
Set add up to 128 items then delete last 10.312 us/op 9.5131 us/op 1.08
OrderedSet add up to 128 items then delete last 12.753 us/op 11.881 us/op 1.07
Set add up to 128 items then delete middle 10.001 us/op 9.6559 us/op 1.04
OrderedSet add up to 128 items then delete middle 18.352 us/op 17.798 us/op 1.03
Set add up to 256 items then delete first 20.255 us/op 19.654 us/op 1.03
OrderedSet add up to 256 items then delete first 26.180 us/op 25.480 us/op 1.03
Set add up to 256 items then delete last 19.489 us/op 19.445 us/op 1.00
OrderedSet add up to 256 items then delete last 24.583 us/op 24.046 us/op 1.02
Set add up to 256 items then delete middle 19.890 us/op 19.186 us/op 1.04
OrderedSet add up to 256 items then delete middle 48.727 us/op 45.806 us/op 1.06
transfer serialized Status (84 B) 2.0540 us/op 1.9010 us/op 1.08
copy serialized Status (84 B) 1.7820 us/op 1.6600 us/op 1.07
transfer serialized SignedVoluntaryExit (112 B) 2.2760 us/op 2.1250 us/op 1.07
copy serialized SignedVoluntaryExit (112 B) 1.8800 us/op 1.7570 us/op 1.07
transfer serialized ProposerSlashing (416 B) 2.7980 us/op 3.0670 us/op 0.91
copy serialized ProposerSlashing (416 B) 2.4090 us/op 2.6860 us/op 0.90
transfer serialized Attestation (485 B) 2.6490 us/op 2.5640 us/op 1.03
copy serialized Attestation (485 B) 2.3180 us/op 2.1370 us/op 1.08
transfer serialized AttesterSlashing (33232 B) 2.3960 us/op 2.2940 us/op 1.04
copy serialized AttesterSlashing (33232 B) 7.8520 us/op 6.1610 us/op 1.27
transfer serialized Small SignedBeaconBlock (128000 B) 2.9030 us/op 2.8870 us/op 1.01
copy serialized Small SignedBeaconBlock (128000 B) 18.866 us/op 13.625 us/op 1.38
transfer serialized Avg SignedBeaconBlock (200000 B) 3.4490 us/op 3.1480 us/op 1.10
copy serialized Avg SignedBeaconBlock (200000 B) 31.008 us/op 20.419 us/op 1.52
transfer serialized BlobsSidecar (524380 B) 5.1810 us/op 3.1730 us/op 1.63
copy serialized BlobsSidecar (524380 B) 129.86 us/op 79.050 us/op 1.64
transfer serialized Big SignedBeaconBlock (1000000 B) 4.5640 us/op 3.0230 us/op 1.51
copy serialized Big SignedBeaconBlock (1000000 B) 194.16 us/op 161.25 us/op 1.20
pass gossip attestations to forkchoice per slot 4.5128 ms/op 3.6629 ms/op 1.23
forkChoice updateHead vc 100000 bc 64 eq 0 755.99 us/op 667.39 us/op 1.13
forkChoice updateHead vc 600000 bc 64 eq 0 7.1304 ms/op 4.2037 ms/op 1.70
forkChoice updateHead vc 1000000 bc 64 eq 0 8.3539 ms/op 7.2906 ms/op 1.15
forkChoice updateHead vc 600000 bc 320 eq 0 4.6356 ms/op 4.1531 ms/op 1.12
forkChoice updateHead vc 600000 bc 1200 eq 0 4.9553 ms/op 4.2444 ms/op 1.17
forkChoice updateHead vc 600000 bc 7200 eq 0 6.1621 ms/op 5.2219 ms/op 1.18
forkChoice updateHead vc 600000 bc 64 eq 1000 12.709 ms/op 11.416 ms/op 1.11
forkChoice updateHead vc 600000 bc 64 eq 10000 14.667 ms/op 12.104 ms/op 1.21
forkChoice updateHead vc 600000 bc 64 eq 300000 33.208 ms/op 16.095 ms/op 2.06
computeDeltas 500000 validators 300 proto nodes 6.7523 ms/op 6.2620 ms/op 1.08
computeDeltas 500000 validators 1200 proto nodes 6.6812 ms/op 6.1801 ms/op 1.08
computeDeltas 500000 validators 7200 proto nodes 6.7182 ms/op 6.1750 ms/op 1.09
computeDeltas 750000 validators 300 proto nodes 10.194 ms/op 9.2956 ms/op 1.10
computeDeltas 750000 validators 1200 proto nodes 10.283 ms/op 9.3243 ms/op 1.10
computeDeltas 750000 validators 7200 proto nodes 10.075 ms/op 9.3666 ms/op 1.08
computeDeltas 1400000 validators 300 proto nodes 19.750 ms/op 17.714 ms/op 1.11
computeDeltas 1400000 validators 1200 proto nodes 20.672 ms/op 17.848 ms/op 1.16
computeDeltas 1400000 validators 7200 proto nodes 21.399 ms/op 18.440 ms/op 1.16
computeDeltas 2100000 validators 300 proto nodes 30.525 ms/op 26.702 ms/op 1.14
computeDeltas 2100000 validators 1200 proto nodes 30.395 ms/op 26.983 ms/op 1.13
computeDeltas 2100000 validators 7200 proto nodes 31.056 ms/op 27.433 ms/op 1.13
computeProposerBoostScoreFromBalances 500000 validators 3.8382 ms/op 3.4012 ms/op 1.13
computeProposerBoostScoreFromBalances 750000 validators 3.9279 ms/op 3.3007 ms/op 1.19
computeProposerBoostScoreFromBalances 1400000 validators 3.9126 ms/op 3.2428 ms/op 1.21
computeProposerBoostScoreFromBalances 2100000 validators 3.8563 ms/op 3.2122 ms/op 1.20
altair processAttestation - 250000 vs - 7PWei normalcase 3.8324 ms/op 2.3164 ms/op 1.65
altair processAttestation - 250000 vs - 7PWei worstcase 5.4375 ms/op 3.2420 ms/op 1.68
altair processAttestation - setStatus - 1/6 committees join 209.87 us/op 181.53 us/op 1.16
altair processAttestation - setStatus - 1/3 committees join 411.07 us/op 347.12 us/op 1.18
altair processAttestation - setStatus - 1/2 committees join 535.07 us/op 465.05 us/op 1.15
altair processAttestation - setStatus - 2/3 committees join 731.57 us/op 592.72 us/op 1.23
altair processAttestation - setStatus - 4/5 committees join 928.24 us/op 794.05 us/op 1.17
altair processAttestation - setStatus - 100% committees join 1.1893 ms/op 955.21 us/op 1.25
altair processBlock - 250000 vs - 7PWei normalcase 10.665 ms/op 9.1252 ms/op 1.17
altair processBlock - 250000 vs - 7PWei normalcase hashState 21.495 ms/op 17.396 ms/op 1.24
altair processBlock - 250000 vs - 7PWei worstcase 47.367 ms/op 39.131 ms/op 1.21
altair processBlock - 250000 vs - 7PWei worstcase hashState 68.936 ms/op 59.609 ms/op 1.16
phase0 processBlock - 250000 vs - 7PWei normalcase 3.4610 ms/op 2.8829 ms/op 1.20
phase0 processBlock - 250000 vs - 7PWei worstcase 38.595 ms/op 29.315 ms/op 1.32
altair processEth1Data - 250000 vs - 7PWei normalcase 753.35 us/op 610.90 us/op 1.23
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 12.447 us/op 10.173 us/op 1.22
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 70.355 us/op 71.276 us/op 0.99
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 29.655 us/op 19.316 us/op 1.54
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 13.722 us/op 14.557 us/op 0.94
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 192.62 us/op 154.14 us/op 1.25
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.5764 ms/op 1.3824 ms/op 1.14
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 2.1609 ms/op 1.6765 ms/op 1.29
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.7607 ms/op 1.7787 ms/op 0.99
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 4.2999 ms/op 3.3238 ms/op 1.29
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.7763 ms/op 2.3987 ms/op 1.16
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 7.1454 ms/op 4.4988 ms/op 1.59
Tree 40 250000 create 411.55 ms/op 316.14 ms/op 1.30
Tree 40 250000 get(125000) 220.50 ns/op 198.44 ns/op 1.11
Tree 40 250000 set(125000) 986.95 ns/op 922.57 ns/op 1.07
Tree 40 250000 toArray() 22.498 ms/op 18.733 ms/op 1.20
Tree 40 250000 iterate all - toArray() + loop 23.243 ms/op 18.764 ms/op 1.24
Tree 40 250000 iterate all - get(i) 74.333 ms/op 67.587 ms/op 1.10
MutableVector 250000 create 14.766 ms/op 9.6366 ms/op 1.53
MutableVector 250000 get(125000) 7.2500 ns/op 6.4840 ns/op 1.12
MutableVector 250000 set(125000) 280.56 ns/op 260.76 ns/op 1.08
MutableVector 250000 toArray() 3.6325 ms/op 3.2982 ms/op 1.10
MutableVector 250000 iterate all - toArray() + loop 3.7114 ms/op 3.3726 ms/op 1.10
MutableVector 250000 iterate all - get(i) 1.7380 ms/op 1.5069 ms/op 1.15
Array 250000 create 3.7971 ms/op 3.0693 ms/op 1.24
Array 250000 clone - spread 1.2733 ms/op 1.3167 ms/op 0.97
Array 250000 get(125000) 0.62800 ns/op 0.61700 ns/op 1.02
Array 250000 set(125000) 0.70500 ns/op 0.70600 ns/op 1.00
Array 250000 iterate all - loop 90.428 us/op 83.088 us/op 1.09
effectiveBalanceIncrements clone Uint8Array 300000 40.187 us/op 31.857 us/op 1.26
effectiveBalanceIncrements clone MutableVector 300000 377.00 ns/op 393.00 ns/op 0.96
effectiveBalanceIncrements rw all Uint8Array 300000 197.06 us/op 182.41 us/op 1.08
effectiveBalanceIncrements rw all MutableVector 300000 92.331 ms/op 85.195 ms/op 1.08
phase0 afterProcessEpoch - 250000 vs - 7PWei 123.41 ms/op 119.98 ms/op 1.03
phase0 beforeProcessEpoch - 250000 vs - 7PWei 40.015 ms/op 33.629 ms/op 1.19
altair processEpoch - mainnet_e81889 349.54 ms/op 325.35 ms/op 1.07
mainnet_e81889 - altair beforeProcessEpoch 68.000 ms/op 63.630 ms/op 1.07
mainnet_e81889 - altair processJustificationAndFinalization 18.029 us/op 16.659 us/op 1.08
mainnet_e81889 - altair processInactivityUpdates 6.2263 ms/op 7.2124 ms/op 0.86
mainnet_e81889 - altair processRewardsAndPenalties 64.095 ms/op 63.494 ms/op 1.01
mainnet_e81889 - altair processRegistryUpdates 2.8800 us/op 2.5010 us/op 1.15
mainnet_e81889 - altair processSlashings 759.00 ns/op 407.00 ns/op 1.86
mainnet_e81889 - altair processEth1DataReset 603.00 ns/op 770.00 ns/op 0.78
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.4879 ms/op 1.2815 ms/op 1.16
mainnet_e81889 - altair processSlashingsReset 3.9740 us/op 5.1190 us/op 0.78
mainnet_e81889 - altair processRandaoMixesReset 5.6390 us/op 6.2880 us/op 0.90
mainnet_e81889 - altair processHistoricalRootsUpdate 807.00 ns/op 782.00 ns/op 1.03
mainnet_e81889 - altair processParticipationFlagUpdates 2.2370 us/op 2.6680 us/op 0.84
mainnet_e81889 - altair processSyncCommitteeUpdates 464.00 ns/op 542.00 ns/op 0.86
mainnet_e81889 - altair afterProcessEpoch 136.67 ms/op 134.27 ms/op 1.02
capella processEpoch - mainnet_e217614 1.1437 s/op 1.0225 s/op 1.12
mainnet_e217614 - capella beforeProcessEpoch 253.60 ms/op 245.97 ms/op 1.03
mainnet_e217614 - capella processJustificationAndFinalization 13.784 us/op 16.338 us/op 0.84
mainnet_e217614 - capella processInactivityUpdates 20.151 ms/op 15.230 ms/op 1.32
mainnet_e217614 - capella processRewardsAndPenalties 321.06 ms/op 288.79 ms/op 1.11
mainnet_e217614 - capella processRegistryUpdates 24.252 us/op 19.449 us/op 1.25
mainnet_e217614 - capella processSlashings 556.00 ns/op 592.00 ns/op 0.94
mainnet_e217614 - capella processEth1DataReset 527.00 ns/op 1.0020 us/op 0.53
mainnet_e217614 - capella processEffectiveBalanceUpdates 4.2620 ms/op 4.1389 ms/op 1.03
mainnet_e217614 - capella processSlashingsReset 3.0150 us/op 3.0660 us/op 0.98
mainnet_e217614 - capella processRandaoMixesReset 7.8110 us/op 6.3260 us/op 1.23
mainnet_e217614 - capella processHistoricalRootsUpdate 683.00 ns/op 920.00 ns/op 0.74
mainnet_e217614 - capella processParticipationFlagUpdates 1.5720 us/op 3.9550 us/op 0.40
mainnet_e217614 - capella afterProcessEpoch 315.58 ms/op 333.58 ms/op 0.95
phase0 processEpoch - mainnet_e58758 372.18 ms/op 339.73 ms/op 1.10
mainnet_e58758 - phase0 beforeProcessEpoch 113.57 ms/op 129.73 ms/op 0.88
mainnet_e58758 - phase0 processJustificationAndFinalization 15.860 us/op 19.192 us/op 0.83
mainnet_e58758 - phase0 processRewardsAndPenalties 57.645 ms/op 62.250 ms/op 0.93
mainnet_e58758 - phase0 processRegistryUpdates 13.732 us/op 14.775 us/op 0.93
mainnet_e58758 - phase0 processSlashings 565.00 ns/op 1.0360 us/op 0.55
mainnet_e58758 - phase0 processEth1DataReset 557.00 ns/op 913.00 ns/op 0.61
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.3017 ms/op 1.6961 ms/op 0.77
mainnet_e58758 - phase0 processSlashingsReset 2.1280 us/op 7.4710 us/op 0.28
mainnet_e58758 - phase0 processRandaoMixesReset 8.3050 us/op 8.1550 us/op 1.02
mainnet_e58758 - phase0 processHistoricalRootsUpdate 722.00 ns/op 1.0630 us/op 0.68
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.5340 us/op 5.3010 us/op 0.86
mainnet_e58758 - phase0 afterProcessEpoch 115.25 ms/op 127.05 ms/op 0.91
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.5435 ms/op 1.2688 ms/op 1.22
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.0296 ms/op 2.2951 ms/op 0.88
altair processInactivityUpdates - 250000 normalcase 22.124 ms/op 33.402 ms/op 0.66
altair processInactivityUpdates - 250000 worstcase 22.140 ms/op 26.332 ms/op 0.84
phase0 processRegistryUpdates - 250000 normalcase 10.283 us/op 17.367 us/op 0.59
phase0 processRegistryUpdates - 250000 badcase_full_deposits 468.71 us/op 462.80 us/op 1.01
phase0 processRegistryUpdates - 250000 worstcase 0.5 127.81 ms/op 164.76 ms/op 0.78
altair processRewardsAndPenalties - 250000 normalcase 67.206 ms/op 72.083 ms/op 0.93
altair processRewardsAndPenalties - 250000 worstcase 61.390 ms/op 76.870 ms/op 0.80
phase0 getAttestationDeltas - 250000 normalcase 9.5867 ms/op 8.9741 ms/op 1.07
phase0 getAttestationDeltas - 250000 worstcase 8.6647 ms/op 10.109 ms/op 0.86
phase0 processSlashings - 250000 worstcase 2.6265 ms/op 2.4687 ms/op 1.06
altair processSyncCommitteeUpdates - 250000 169.60 ms/op 161.83 ms/op 1.05
BeaconState.hashTreeRoot - No change 268.00 ns/op 273.00 ns/op 0.98
BeaconState.hashTreeRoot - 1 full validator 57.638 us/op 52.283 us/op 1.10
BeaconState.hashTreeRoot - 32 full validator 602.81 us/op 562.47 us/op 1.07
BeaconState.hashTreeRoot - 512 full validator 6.2901 ms/op 5.9252 ms/op 1.06
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 75.639 us/op 66.196 us/op 1.14
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 925.87 us/op 908.85 us/op 1.02
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 12.076 ms/op 13.964 ms/op 0.86
BeaconState.hashTreeRoot - 1 balances 52.412 us/op 51.310 us/op 1.02
BeaconState.hashTreeRoot - 32 balances 533.01 us/op 489.88 us/op 1.09
BeaconState.hashTreeRoot - 512 balances 5.3017 ms/op 4.7255 ms/op 1.12
BeaconState.hashTreeRoot - 250000 balances 82.771 ms/op 77.497 ms/op 1.07
aggregationBits - 2048 els - zipIndexesInBitList 17.866 us/op 21.199 us/op 0.84
regular array get 100000 times 45.571 us/op 35.899 us/op 1.27
wrappedArray get 100000 times 42.904 us/op 35.828 us/op 1.20
arrayWithProxy get 100000 times 16.198 ms/op 16.892 ms/op 0.96
ssz.Root.equals 235.00 ns/op 250.00 ns/op 0.94
byteArrayEquals 254.00 ns/op 259.00 ns/op 0.98
shuffle list - 16384 els 7.3639 ms/op 7.6988 ms/op 0.96
shuffle list - 250000 els 108.36 ms/op 108.24 ms/op 1.00
processSlot - 1 slots 8.9450 us/op 9.0960 us/op 0.98
processSlot - 32 slots 1.4202 ms/op 1.3801 ms/op 1.03
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 52.414 ms/op 60.158 ms/op 0.87
getCommitteeAssignments - req 1 vs - 250000 vc 2.6592 ms/op 2.9014 ms/op 0.92
getCommitteeAssignments - req 100 vs - 250000 vc 3.8787 ms/op 4.0022 ms/op 0.97
getCommitteeAssignments - req 1000 vs - 250000 vc 4.2266 ms/op 4.4276 ms/op 0.95
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.9500 ns/op 5.6800 ns/op 0.87
state getBlockRootAtSlot - 250000 vs - 7PWei 535.85 ns/op 947.41 ns/op 0.57
computeProposers - vc 250000 10.017 ms/op 11.598 ms/op 0.86
computeEpochShuffling - vc 250000 107.80 ms/op 121.04 ms/op 0.89
getNextSyncCommittee - vc 250000 159.34 ms/op 171.60 ms/op 0.93
computeSigningRoot for AttestationData 13.504 us/op 15.997 us/op 0.84
hash AttestationData serialized data then Buffer.toString(base64) 2.4420 us/op 2.5587 us/op 0.95
toHexString serialized data 1.1703 us/op 1.4579 us/op 0.80
Buffer.toString(base64) 232.43 ns/op 254.29 ns/op 0.91

by benchmarkbot/action

@wemeetagain wemeetagain changed the title feat: simplify enr initialization feat: simplify bootnode enr initialization Sep 8, 2023
Copy link
Contributor

@twoeths twoeths left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to me!

@dapplion dapplion merged commit 6bdaebd into unstable Sep 12, 2023
12 checks passed
@dapplion dapplion deleted the cayman/enr-init branch September 12, 2023 08:04
@wemeetagain
Copy link
Member Author

🎉 This PR is included in v1.12.0 🎉

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.

3 participants