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

docs: update vc-configuration md doc #6503

Merged
merged 4 commits into from Mar 2, 2024

Conversation

philknows
Copy link
Member

Motivation

As discussed on the Jan 16 standup, there was a discussion in regards to improving this specific part of the documentation.

For this page specifically, it was mentioned we:

  • Proposed removing excessive content and directing users to official sources.
  • Additional Feedback
    • Direct users to Ethereum Foundation's staking website for initial steps.
    • Guide users to use Lodestar after completing initial steps.
    • Add the mainnet beacon contract address.
    • Include the launchpad address for better accessibility and awareness.

Description

This page now:

  • Removes any "wallet" terminology. Uses the word "keystores" for consistency
  • Removes any mention of Lodestar ever creating and managing wallets/keystores (severely outdated and deprecated)
  • Includes Launchpad links and Beacon Deposit contract links for Mainnet, Holesky and Ephemery
  • Updates validator bootup logging example as this has changed drastically since v1.12.
  • Fixes minor grammar corrections

@philknows philknows requested a review from a team as a code owner March 1, 2024 03:35
Copy link
Contributor

github-actions bot commented Mar 1, 2024

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: fd366d4 Previous: 1f18ec4 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 721.94 us/op 345.88 us/op 2.09
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 67.846 us/op 59.565 us/op 1.14
BLS verify - blst-native 1.1339 ms/op 1.1123 ms/op 1.02
BLS verifyMultipleSignatures 3 - blst-native 2.5820 ms/op 2.3812 ms/op 1.08
BLS verifyMultipleSignatures 8 - blst-native 5.3219 ms/op 5.2459 ms/op 1.01
BLS verifyMultipleSignatures 32 - blst-native 19.356 ms/op 19.260 ms/op 1.00
BLS verifyMultipleSignatures 64 - blst-native 39.309 ms/op 37.866 ms/op 1.04
BLS verifyMultipleSignatures 128 - blst-native 78.745 ms/op 75.426 ms/op 1.04
BLS deserializing 10000 signatures 801.81 ms/op 812.36 ms/op 0.99
BLS deserializing 100000 signatures 8.4192 s/op 8.1662 s/op 1.03
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.1780 ms/op 1.1323 ms/op 1.04
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.2671 ms/op 1.2584 ms/op 1.01
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.0243 ms/op 1.9461 ms/op 1.04
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.8546 ms/op 3.8838 ms/op 0.99
BLS verifyMultipleSignatures - same message - 128 - blst-native 7.0434 ms/op 4.8475 ms/op 1.45
BLS aggregatePubkeys 32 - blst-native 24.876 us/op 21.724 us/op 1.15
BLS aggregatePubkeys 128 - blst-native 92.961 us/op 85.289 us/op 1.09
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 48.493 ms/op 42.219 ms/op 1.15
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 47.364 ms/op 36.582 ms/op 1.29
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 29.579 ms/op 23.448 ms/op 1.26
getSlashingsAndExits - default max 269.35 us/op 189.45 us/op 1.42
getSlashingsAndExits - 2k 457.31 us/op 343.11 us/op 1.33
proposeBlockBody type=full, size=empty 4.3661 ms/op 4.1001 ms/op 1.06
isKnown best case - 1 super set check 403.00 ns/op 425.00 ns/op 0.95
isKnown normal case - 2 super set checks 444.00 ns/op 351.00 ns/op 1.26
isKnown worse case - 16 super set checks 455.00 ns/op 341.00 ns/op 1.33
CheckpointStateCache - add get delete 5.3410 us/op 3.8270 us/op 1.40
validate api signedAggregateAndProof - struct 2.5736 ms/op 2.5358 ms/op 1.01
validate gossip signedAggregateAndProof - struct 2.5451 ms/op 2.3946 ms/op 1.06
validate gossip attestation - vc 640000 1.2277 ms/op 1.1542 ms/op 1.06
batch validate gossip attestation - vc 640000 - chunk 32 147.10 us/op 134.10 us/op 1.10
batch validate gossip attestation - vc 640000 - chunk 64 128.07 us/op 118.86 us/op 1.08
batch validate gossip attestation - vc 640000 - chunk 128 130.24 us/op 116.71 us/op 1.12
batch validate gossip attestation - vc 640000 - chunk 256 121.48 us/op 112.99 us/op 1.08
pickEth1Vote - no votes 1.1655 ms/op 921.98 us/op 1.26
pickEth1Vote - max votes 14.787 ms/op 9.6885 ms/op 1.53
pickEth1Vote - Eth1Data hashTreeRoot value x2048 17.710 ms/op 17.281 ms/op 1.02
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 29.256 ms/op 30.833 ms/op 0.95
pickEth1Vote - Eth1Data fastSerialize value x2048 672.66 us/op 456.49 us/op 1.47
pickEth1Vote - Eth1Data fastSerialize tree x2048 5.8955 ms/op 7.6666 ms/op 0.77
bytes32 toHexString 865.00 ns/op 466.00 ns/op 1.86
bytes32 Buffer.toString(hex) 398.00 ns/op 322.00 ns/op 1.24
bytes32 Buffer.toString(hex) from Uint8Array 593.00 ns/op 416.00 ns/op 1.43
bytes32 Buffer.toString(hex) + 0x 372.00 ns/op 308.00 ns/op 1.21
Object access 1 prop 0.25400 ns/op 0.19600 ns/op 1.30
Map access 1 prop 0.21100 ns/op 0.18700 ns/op 1.13
Object get x1000 5.4130 ns/op 5.6420 ns/op 0.96
Map get x1000 0.91700 ns/op 0.76100 ns/op 1.20
Object set x1000 31.047 ns/op 25.171 ns/op 1.23
Map set x1000 20.893 ns/op 17.519 ns/op 1.19
Return object 10000 times 0.25120 ns/op 0.22370 ns/op 1.12
Throw Error 10000 times 2.9989 us/op 2.7023 us/op 1.11
fastMsgIdFn sha256 / 200 bytes 2.1420 us/op 1.9980 us/op 1.07
fastMsgIdFn h32 xxhash / 200 bytes 386.00 ns/op 312.00 ns/op 1.24
fastMsgIdFn h64 xxhash / 200 bytes 414.00 ns/op 355.00 ns/op 1.17
fastMsgIdFn sha256 / 1000 bytes 6.3970 us/op 6.0750 us/op 1.05
fastMsgIdFn h32 xxhash / 1000 bytes 497.00 ns/op 498.00 ns/op 1.00
fastMsgIdFn h64 xxhash / 1000 bytes 497.00 ns/op 432.00 ns/op 1.15
fastMsgIdFn sha256 / 10000 bytes 55.916 us/op 55.584 us/op 1.01
fastMsgIdFn h32 xxhash / 10000 bytes 1.9370 us/op 1.9340 us/op 1.00
fastMsgIdFn h64 xxhash / 10000 bytes 1.3250 us/op 1.3170 us/op 1.01
send data - 1000 256B messages 15.028 ms/op 13.384 ms/op 1.12
send data - 1000 512B messages 19.480 ms/op 15.408 ms/op 1.26
send data - 1000 1024B messages 32.865 ms/op 26.178 ms/op 1.26
send data - 1000 1200B messages 30.359 ms/op 28.973 ms/op 1.05
send data - 1000 2048B messages 49.880 ms/op 38.991 ms/op 1.28
send data - 1000 4096B messages 39.015 ms/op 37.676 ms/op 1.04
send data - 1000 16384B messages 105.56 ms/op 93.035 ms/op 1.13
send data - 1000 65536B messages 492.67 ms/op 471.26 ms/op 1.05
enrSubnets - fastDeserialize 64 bits 1.4490 us/op 1.2180 us/op 1.19
enrSubnets - ssz BitVector 64 bits 610.00 ns/op 691.00 ns/op 0.88
enrSubnets - fastDeserialize 4 bits 290.00 ns/op 260.00 ns/op 1.12
enrSubnets - ssz BitVector 4 bits 614.00 ns/op 451.00 ns/op 1.36
prioritizePeers score -10:0 att 32-0.1 sync 2-0 81.426 us/op 68.589 us/op 1.19
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 107.11 us/op 78.731 us/op 1.36
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 127.11 us/op 110.86 us/op 1.15
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 225.31 us/op 196.62 us/op 1.15
prioritizePeers score 0:0 att 64-1 sync 4-1 251.87 us/op 221.54 us/op 1.14
array of 16000 items push then shift 1.4401 us/op 1.3539 us/op 1.06
LinkedList of 16000 items push then shift 6.8720 ns/op 7.1940 ns/op 0.96
array of 16000 items push then pop 91.968 ns/op 89.851 ns/op 1.02
LinkedList of 16000 items push then pop 7.4320 ns/op 5.8630 ns/op 1.27
array of 24000 items push then shift 2.0513 us/op 1.8802 us/op 1.09
LinkedList of 24000 items push then shift 8.0290 ns/op 7.1460 ns/op 1.12
array of 24000 items push then pop 157.16 ns/op 122.93 ns/op 1.28
LinkedList of 24000 items push then pop 8.4400 ns/op 9.6810 ns/op 0.87
intersect bitArray bitLen 8 4.7910 ns/op 10.195 ns/op 0.47
intersect array and set length 8 81.379 ns/op 102.86 ns/op 0.79
intersect bitArray bitLen 128 31.182 ns/op 33.872 ns/op 0.92
intersect array and set length 128 714.56 ns/op 813.99 ns/op 0.88
bitArray.getTrueBitIndexes() bitLen 128 1.5230 us/op 1.7430 us/op 0.87
bitArray.getTrueBitIndexes() bitLen 248 2.6150 us/op 2.5740 us/op 1.02
bitArray.getTrueBitIndexes() bitLen 512 4.3760 us/op 5.5800 us/op 0.78
Buffer.concat 32 items 998.00 ns/op 1.8060 us/op 0.55
Uint8Array.set 32 items 1.9320 us/op 2.8290 us/op 0.68
Set add up to 64 items then delete first 2.4365 us/op 2.2049 us/op 1.11
OrderedSet add up to 64 items then delete first 3.6452 us/op 2.9741 us/op 1.23
Set add up to 64 items then delete last 2.2238 us/op 3.8146 us/op 0.58
OrderedSet add up to 64 items then delete last 3.6201 us/op 3.2243 us/op 1.12
Set add up to 64 items then delete middle 2.2593 us/op 2.0800 us/op 1.09
OrderedSet add up to 64 items then delete middle 5.0902 us/op 4.6746 us/op 1.09
Set add up to 128 items then delete first 4.0123 us/op 4.0160 us/op 1.00
OrderedSet add up to 128 items then delete first 6.1135 us/op 8.6469 us/op 0.71
Set add up to 128 items then delete last 4.3105 us/op 5.4199 us/op 0.80
OrderedSet add up to 128 items then delete last 6.7913 us/op 8.5793 us/op 0.79
Set add up to 128 items then delete middle 4.3244 us/op 6.7061 us/op 0.64
OrderedSet add up to 128 items then delete middle 14.914 us/op 19.737 us/op 0.76
Set add up to 256 items then delete first 10.553 us/op 8.2254 us/op 1.28
OrderedSet add up to 256 items then delete first 18.840 us/op 12.463 us/op 1.51
Set add up to 256 items then delete last 10.588 us/op 13.900 us/op 0.76
OrderedSet add up to 256 items then delete last 16.992 us/op 20.528 us/op 0.83
Set add up to 256 items then delete middle 10.429 us/op 11.235 us/op 0.93
OrderedSet add up to 256 items then delete middle 39.913 us/op 39.291 us/op 1.02
transfer serialized Status (84 B) 1.7890 us/op 1.7210 us/op 1.04
copy serialized Status (84 B) 1.2810 us/op 1.7480 us/op 0.73
transfer serialized SignedVoluntaryExit (112 B) 2.0340 us/op 2.5680 us/op 0.79
copy serialized SignedVoluntaryExit (112 B) 1.6770 us/op 1.4690 us/op 1.14
transfer serialized ProposerSlashing (416 B) 3.4800 us/op 2.7750 us/op 1.25
copy serialized ProposerSlashing (416 B) 3.2210 us/op 2.8590 us/op 1.13
transfer serialized Attestation (485 B) 3.4070 us/op 3.5840 us/op 0.95
copy serialized Attestation (485 B) 3.2180 us/op 3.3820 us/op 0.95
transfer serialized AttesterSlashing (33232 B) 1.8060 us/op 3.6640 us/op 0.49
copy serialized AttesterSlashing (33232 B) 4.2170 us/op 8.1960 us/op 0.51
transfer serialized Small SignedBeaconBlock (128000 B) 2.4300 us/op 3.7700 us/op 0.64
copy serialized Small SignedBeaconBlock (128000 B) 10.139 us/op 14.530 us/op 0.70
transfer serialized Avg SignedBeaconBlock (200000 B) 2.2510 us/op 2.9010 us/op 0.78
copy serialized Avg SignedBeaconBlock (200000 B) 13.219 us/op 15.858 us/op 0.83
transfer serialized BlobsSidecar (524380 B) 2.5560 us/op 3.3960 us/op 0.75
copy serialized BlobsSidecar (524380 B) 116.87 us/op 161.53 us/op 0.72
transfer serialized Big SignedBeaconBlock (1000000 B) 6.1960 us/op 4.0800 us/op 1.52
copy serialized Big SignedBeaconBlock (1000000 B) 331.56 us/op 238.31 us/op 1.39
pass gossip attestations to forkchoice per slot 3.0666 ms/op 2.9448 ms/op 1.04
forkChoice updateHead vc 100000 bc 64 eq 0 546.78 us/op 505.71 us/op 1.08
forkChoice updateHead vc 600000 bc 64 eq 0 3.2058 ms/op 3.0281 ms/op 1.06
forkChoice updateHead vc 1000000 bc 64 eq 0 5.4139 ms/op 6.6212 ms/op 0.82
forkChoice updateHead vc 600000 bc 320 eq 0 2.8037 ms/op 2.9113 ms/op 0.96
forkChoice updateHead vc 600000 bc 1200 eq 0 4.7138 ms/op 2.9310 ms/op 1.61
forkChoice updateHead vc 600000 bc 7200 eq 0 4.0717 ms/op 4.5331 ms/op 0.90
forkChoice updateHead vc 600000 bc 64 eq 1000 10.575 ms/op 10.752 ms/op 0.98
forkChoice updateHead vc 600000 bc 64 eq 10000 11.665 ms/op 10.995 ms/op 1.06
forkChoice updateHead vc 600000 bc 64 eq 300000 13.024 ms/op 35.649 ms/op 0.37
computeDeltas 500000 validators 300 proto nodes 3.6423 ms/op 4.0884 ms/op 0.89
computeDeltas 500000 validators 1200 proto nodes 3.3013 ms/op 3.0771 ms/op 1.07
computeDeltas 500000 validators 7200 proto nodes 3.3146 ms/op 2.9584 ms/op 1.12
computeDeltas 750000 validators 300 proto nodes 5.2324 ms/op 4.6528 ms/op 1.12
computeDeltas 750000 validators 1200 proto nodes 5.1987 ms/op 4.5481 ms/op 1.14
computeDeltas 750000 validators 7200 proto nodes 5.3421 ms/op 4.4902 ms/op 1.19
computeDeltas 1400000 validators 300 proto nodes 9.9702 ms/op 9.2005 ms/op 1.08
computeDeltas 1400000 validators 1200 proto nodes 9.7045 ms/op 9.3680 ms/op 1.04
computeDeltas 1400000 validators 7200 proto nodes 10.385 ms/op 9.9117 ms/op 1.05
computeDeltas 2100000 validators 300 proto nodes 15.369 ms/op 14.320 ms/op 1.07
computeDeltas 2100000 validators 1200 proto nodes 14.686 ms/op 14.735 ms/op 1.00
computeDeltas 2100000 validators 7200 proto nodes 14.102 ms/op 14.604 ms/op 0.97
altair processAttestation - 250000 vs - 7PWei normalcase 1.7124 ms/op 2.8380 ms/op 0.60
altair processAttestation - 250000 vs - 7PWei worstcase 2.2793 ms/op 3.6567 ms/op 0.62
altair processAttestation - setStatus - 1/6 committees join 79.187 us/op 143.84 us/op 0.55
altair processAttestation - setStatus - 1/3 committees join 153.70 us/op 216.00 us/op 0.71
altair processAttestation - setStatus - 1/2 committees join 269.54 us/op 311.36 us/op 0.87
altair processAttestation - setStatus - 2/3 committees join 327.86 us/op 378.82 us/op 0.87
altair processAttestation - setStatus - 4/5 committees join 410.72 us/op 544.94 us/op 0.75
altair processAttestation - setStatus - 100% committees join 518.42 us/op 693.71 us/op 0.75
altair processBlock - 250000 vs - 7PWei normalcase 10.545 ms/op 7.5271 ms/op 1.40
altair processBlock - 250000 vs - 7PWei normalcase hashState 38.795 ms/op 30.085 ms/op 1.29
altair processBlock - 250000 vs - 7PWei worstcase 35.404 ms/op 32.519 ms/op 1.09
altair processBlock - 250000 vs - 7PWei worstcase hashState 96.133 ms/op 85.621 ms/op 1.12
phase0 processBlock - 250000 vs - 7PWei normalcase 2.5180 ms/op 1.7531 ms/op 1.44
phase0 processBlock - 250000 vs - 7PWei worstcase 27.092 ms/op 26.125 ms/op 1.04
altair processEth1Data - 250000 vs - 7PWei normalcase 306.31 us/op 299.08 us/op 1.02
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 10.882 us/op 11.188 us/op 0.97
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 69.056 us/op 57.483 us/op 1.20
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 18.198 us/op 15.772 us/op 1.15
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 14.041 us/op 12.997 us/op 1.08
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 187.42 us/op 168.64 us/op 1.11
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.1117 ms/op 834.27 us/op 1.33
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.2480 ms/op 1.1342 ms/op 1.10
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.5985 ms/op 1.1907 ms/op 1.34
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 4.7090 ms/op 2.9617 ms/op 1.59
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.3433 ms/op 1.5066 ms/op 1.56
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 6.1036 ms/op 4.7905 ms/op 1.27
Tree 40 250000 create 310.04 ms/op 258.37 ms/op 1.20
Tree 40 250000 get(125000) 155.72 ns/op 114.89 ns/op 1.36
Tree 40 250000 set(125000) 736.94 ns/op 761.24 ns/op 0.97
Tree 40 250000 toArray() 22.381 ms/op 10.014 ms/op 2.23
Tree 40 250000 iterate all - toArray() + loop 23.624 ms/op 10.754 ms/op 2.20
Tree 40 250000 iterate all - get(i) 53.351 ms/op 51.012 ms/op 1.05
MutableVector 250000 create 13.944 ms/op 7.3784 ms/op 1.89
MutableVector 250000 get(125000) 5.9760 ns/op 5.9260 ns/op 1.01
MutableVector 250000 set(125000) 593.45 ns/op 231.50 ns/op 2.56
MutableVector 250000 toArray() 3.6418 ms/op 2.4603 ms/op 1.48
MutableVector 250000 iterate all - toArray() + loop 4.5090 ms/op 3.2279 ms/op 1.40
MutableVector 250000 iterate all - get(i) 1.3867 ms/op 1.3476 ms/op 1.03
Array 250000 create 3.7826 ms/op 2.8602 ms/op 1.32
Array 250000 clone - spread 1.5327 ms/op 1.3018 ms/op 1.18
Array 250000 get(125000) 2.6830 ns/op 0.99400 ns/op 2.70
Array 250000 set(125000) 2.8500 ns/op 1.1960 ns/op 2.38
Array 250000 iterate all - loop 159.59 us/op 153.64 us/op 1.04
effectiveBalanceIncrements clone Uint8Array 300000 56.474 us/op 12.847 us/op 4.40
effectiveBalanceIncrements clone MutableVector 300000 1.1300 us/op 374.00 ns/op 3.02
effectiveBalanceIncrements rw all Uint8Array 300000 200.84 us/op 190.79 us/op 1.05
effectiveBalanceIncrements rw all MutableVector 300000 194.79 ms/op 63.768 ms/op 3.05
phase0 afterProcessEpoch - 250000 vs - 7PWei 110.65 ms/op 78.292 ms/op 1.41
phase0 beforeProcessEpoch - 250000 vs - 7PWei 60.343 ms/op 47.398 ms/op 1.27
altair processEpoch - mainnet_e81889 473.93 ms/op 443.58 ms/op 1.07
mainnet_e81889 - altair beforeProcessEpoch 77.692 ms/op 80.737 ms/op 0.96
mainnet_e81889 - altair processJustificationAndFinalization 15.164 us/op 18.844 us/op 0.80
mainnet_e81889 - altair processInactivityUpdates 6.0165 ms/op 4.6973 ms/op 1.28
mainnet_e81889 - altair processRewardsAndPenalties 51.647 ms/op 64.174 ms/op 0.80
mainnet_e81889 - altair processRegistryUpdates 2.1750 us/op 2.9410 us/op 0.74
mainnet_e81889 - altair processSlashings 733.00 ns/op 797.00 ns/op 0.92
mainnet_e81889 - altair processEth1DataReset 797.00 ns/op 1.0700 us/op 0.74
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.1351 ms/op 1.0903 ms/op 1.04
mainnet_e81889 - altair processSlashingsReset 4.1490 us/op 4.4990 us/op 0.92
mainnet_e81889 - altair processRandaoMixesReset 6.8510 us/op 7.4890 us/op 0.91
mainnet_e81889 - altair processHistoricalRootsUpdate 1.1920 us/op 1.1590 us/op 1.03
mainnet_e81889 - altair processParticipationFlagUpdates 3.0300 us/op 4.3260 us/op 0.70
mainnet_e81889 - altair processSyncCommitteeUpdates 809.00 ns/op 1.1900 us/op 0.68
mainnet_e81889 - altair afterProcessEpoch 88.750 ms/op 85.273 ms/op 1.04
capella processEpoch - mainnet_e217614 2.7147 s/op 1.8044 s/op 1.50
mainnet_e217614 - capella beforeProcessEpoch 481.02 ms/op 404.10 ms/op 1.19
mainnet_e217614 - capella processJustificationAndFinalization 17.993 us/op 9.7280 us/op 1.85
mainnet_e217614 - capella processInactivityUpdates 22.799 ms/op 16.390 ms/op 1.39
mainnet_e217614 - capella processRewardsAndPenalties 436.35 ms/op 382.63 ms/op 1.14
mainnet_e217614 - capella processRegistryUpdates 26.210 us/op 8.4860 us/op 3.09
mainnet_e217614 - capella processSlashings 882.00 ns/op 635.00 ns/op 1.39
mainnet_e217614 - capella processEth1DataReset 810.00 ns/op 499.00 ns/op 1.62
mainnet_e217614 - capella processEffectiveBalanceUpdates 3.9201 ms/op 3.6757 ms/op 1.07
mainnet_e217614 - capella processSlashingsReset 4.4770 us/op 2.5810 us/op 1.73
mainnet_e217614 - capella processRandaoMixesReset 6.2080 us/op 3.5090 us/op 1.77
mainnet_e217614 - capella processHistoricalRootsUpdate 930.00 ns/op 585.00 ns/op 1.59
mainnet_e217614 - capella processParticipationFlagUpdates 2.9170 us/op 950.00 ns/op 3.07
mainnet_e217614 - capella afterProcessEpoch 304.88 ms/op 195.22 ms/op 1.56
phase0 processEpoch - mainnet_e58758 491.66 ms/op 379.41 ms/op 1.30
mainnet_e58758 - phase0 beforeProcessEpoch 154.86 ms/op 112.48 ms/op 1.38
mainnet_e58758 - phase0 processJustificationAndFinalization 21.092 us/op 15.221 us/op 1.39
mainnet_e58758 - phase0 processRewardsAndPenalties 48.128 ms/op 56.440 ms/op 0.85
mainnet_e58758 - phase0 processRegistryUpdates 12.122 us/op 8.7630 us/op 1.38
mainnet_e58758 - phase0 processSlashings 1.3500 us/op 552.00 ns/op 2.45
mainnet_e58758 - phase0 processEth1DataReset 1.0380 us/op 526.00 ns/op 1.97
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.0191 ms/op 1.3921 ms/op 0.73
mainnet_e58758 - phase0 processSlashingsReset 4.4850 us/op 2.1200 us/op 2.12
mainnet_e58758 - phase0 processRandaoMixesReset 6.2720 us/op 2.8540 us/op 2.20
mainnet_e58758 - phase0 processHistoricalRootsUpdate 923.00 ns/op 530.00 ns/op 1.74
mainnet_e58758 - phase0 processParticipationRecordUpdates 5.4270 us/op 2.7790 us/op 1.95
mainnet_e58758 - phase0 afterProcessEpoch 66.349 ms/op 62.109 ms/op 1.07
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.2448 ms/op 1.1274 ms/op 1.10
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.2902 ms/op 1.1436 ms/op 1.13
altair processInactivityUpdates - 250000 normalcase 26.911 ms/op 22.420 ms/op 1.20
altair processInactivityUpdates - 250000 worstcase 22.565 ms/op 21.660 ms/op 1.04
phase0 processRegistryUpdates - 250000 normalcase 13.636 us/op 6.2050 us/op 2.20
phase0 processRegistryUpdates - 250000 badcase_full_deposits 411.84 us/op 349.17 us/op 1.18
phase0 processRegistryUpdates - 250000 worstcase 0.5 124.59 ms/op 104.91 ms/op 1.19
altair processRewardsAndPenalties - 250000 normalcase 44.057 ms/op 55.210 ms/op 0.80
altair processRewardsAndPenalties - 250000 worstcase 42.050 ms/op 55.271 ms/op 0.76
phase0 getAttestationDeltas - 250000 normalcase 7.0631 ms/op 5.5570 ms/op 1.27
phase0 getAttestationDeltas - 250000 worstcase 11.290 ms/op 5.6687 ms/op 1.99
phase0 processSlashings - 250000 worstcase 88.598 us/op 80.507 us/op 1.10
altair processSyncCommitteeUpdates - 250000 137.27 ms/op 98.360 ms/op 1.40
BeaconState.hashTreeRoot - No change 840.00 ns/op 484.00 ns/op 1.74
BeaconState.hashTreeRoot - 1 full validator 144.93 us/op 96.158 us/op 1.51
BeaconState.hashTreeRoot - 32 full validator 1.3135 ms/op 1.2128 ms/op 1.08
BeaconState.hashTreeRoot - 512 full validator 18.014 ms/op 14.009 ms/op 1.29
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 134.92 us/op 138.19 us/op 0.98
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.7543 ms/op 1.9474 ms/op 0.90
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 20.717 ms/op 29.568 ms/op 0.70
BeaconState.hashTreeRoot - 1 balances 88.574 us/op 120.63 us/op 0.73
BeaconState.hashTreeRoot - 32 balances 1.3003 ms/op 969.11 us/op 1.34
BeaconState.hashTreeRoot - 512 balances 14.212 ms/op 9.2530 ms/op 1.54
BeaconState.hashTreeRoot - 250000 balances 219.63 ms/op 177.46 ms/op 1.24
aggregationBits - 2048 els - zipIndexesInBitList 13.367 us/op 12.127 us/op 1.10
byteArrayEquals 32 68.467 ns/op 60.158 ns/op 1.14
Buffer.compare 32 40.033 ns/op 34.408 ns/op 1.16
byteArrayEquals 1024 1.7908 us/op 1.6014 us/op 1.12
Buffer.compare 1024 46.054 ns/op 43.497 ns/op 1.06
byteArrayEquals 16384 30.832 us/op 25.668 us/op 1.20
Buffer.compare 16384 235.80 ns/op 187.26 ns/op 1.26
byteArrayEquals 123687377 217.76 ms/op 197.61 ms/op 1.10
Buffer.compare 123687377 7.0606 ms/op 5.4060 ms/op 1.31
byteArrayEquals 32 - diff last byte 70.474 ns/op 59.377 ns/op 1.19
Buffer.compare 32 - diff last byte 43.264 ns/op 37.075 ns/op 1.17
byteArrayEquals 1024 - diff last byte 1.8125 us/op 1.6332 us/op 1.11
Buffer.compare 1024 - diff last byte 52.903 ns/op 41.943 ns/op 1.26
byteArrayEquals 16384 - diff last byte 28.641 us/op 26.126 us/op 1.10
Buffer.compare 16384 - diff last byte 227.96 ns/op 190.02 ns/op 1.20
byteArrayEquals 123687377 - diff last byte 214.20 ms/op 200.80 ms/op 1.07
Buffer.compare 123687377 - diff last byte 7.7610 ms/op 5.6498 ms/op 1.37
byteArrayEquals 32 - random bytes 6.1020 ns/op 4.5140 ns/op 1.35
Buffer.compare 32 - random bytes 41.425 ns/op 36.638 ns/op 1.13
byteArrayEquals 1024 - random bytes 5.3800 ns/op 4.3150 ns/op 1.25
Buffer.compare 1024 - random bytes 42.637 ns/op 35.276 ns/op 1.21
byteArrayEquals 16384 - random bytes 5.2550 ns/op 4.3260 ns/op 1.21
Buffer.compare 16384 - random bytes 40.404 ns/op 34.886 ns/op 1.16
byteArrayEquals 123687377 - random bytes 8.3400 ns/op 7.7200 ns/op 1.08
Buffer.compare 123687377 - random bytes 43.860 ns/op 38.570 ns/op 1.14
regular array get 100000 times 42.971 us/op 39.749 us/op 1.08
wrappedArray get 100000 times 43.037 us/op 39.576 us/op 1.09
arrayWithProxy get 100000 times 9.4732 ms/op 9.8738 ms/op 0.96
ssz.Root.equals 57.267 ns/op 54.296 ns/op 1.05
byteArrayEquals 54.688 ns/op 54.557 ns/op 1.00
Buffer.compare 10.594 ns/op 9.5040 ns/op 1.11
shuffle list - 16384 els 5.3004 ms/op 4.5837 ms/op 1.16
shuffle list - 250000 els 74.103 ms/op 71.028 ms/op 1.04
processSlot - 1 slots 19.340 us/op 15.864 us/op 1.22
processSlot - 32 slots 2.7633 ms/op 3.0507 ms/op 0.91
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 52.439 ms/op 47.763 ms/op 1.10
getCommitteeAssignments - req 1 vs - 250000 vc 2.2237 ms/op 2.2210 ms/op 1.00
getCommitteeAssignments - req 100 vs - 250000 vc 3.3637 ms/op 3.3428 ms/op 1.01
getCommitteeAssignments - req 1000 vs - 250000 vc 3.6776 ms/op 3.6537 ms/op 1.01
findModifiedValidators - 10000 modified validators 431.36 ms/op 413.98 ms/op 1.04
findModifiedValidators - 1000 modified validators 326.68 ms/op 338.01 ms/op 0.97
findModifiedValidators - 100 modified validators 374.08 ms/op 302.41 ms/op 1.24
findModifiedValidators - 10 modified validators 335.37 ms/op 327.42 ms/op 1.02
findModifiedValidators - 1 modified validators 312.67 ms/op 310.47 ms/op 1.01
findModifiedValidators - no difference 364.09 ms/op 301.37 ms/op 1.21
compare ViewDUs 4.2664 s/op 4.1266 s/op 1.03
compare each validator Uint8Array 1.7383 s/op 1.6562 s/op 1.05
compare ViewDU to Uint8Array 1.0919 s/op 853.04 ms/op 1.28
migrate state 1000000 validators, 24 modified, 0 new 663.30 ms/op 662.85 ms/op 1.00
migrate state 1000000 validators, 1700 modified, 1000 new 967.84 ms/op 1.0155 s/op 0.95
migrate state 1000000 validators, 3400 modified, 2000 new 1.2730 s/op 1.2510 s/op 1.02
migrate state 1500000 validators, 24 modified, 0 new 673.86 ms/op 685.37 ms/op 0.98
migrate state 1500000 validators, 1700 modified, 1000 new 918.41 ms/op 931.20 ms/op 0.99
migrate state 1500000 validators, 3400 modified, 2000 new 1.2275 s/op 1.2588 s/op 0.98
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.6000 ns/op 5.3100 ns/op 0.87
state getBlockRootAtSlot - 250000 vs - 7PWei 698.47 ns/op 572.60 ns/op 1.22
computeProposers - vc 250000 6.6098 ms/op 6.9193 ms/op 0.96
computeEpochShuffling - vc 250000 69.186 ms/op 73.490 ms/op 0.94
getNextSyncCommittee - vc 250000 105.40 ms/op 145.85 ms/op 0.72
computeSigningRoot for AttestationData 21.634 us/op 28.425 us/op 0.76
hash AttestationData serialized data then Buffer.toString(base64) 1.2638 us/op 1.4492 us/op 0.87
toHexString serialized data 806.99 ns/op 1.2255 us/op 0.66
Buffer.toString(base64) 159.37 ns/op 225.75 ns/op 0.71

by benchmarkbot/action

philknows and others added 3 commits March 1, 2024 10:14
Co-authored-by: Nico Flaig <nflaig@protonmail.com>
Co-authored-by: Nico Flaig <nflaig@protonmail.com>
Copy link

codecov bot commented Mar 1, 2024

Codecov Report

Merging #6503 (df3a435) into unstable (6ad9740) will not change coverage.
Report is 2 commits behind head on unstable.
The diff coverage is n/a.

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #6503   +/-   ##
=========================================
  Coverage     61.72%   61.72%           
=========================================
  Files           555      555           
  Lines         58206    58206           
  Branches       1844     1844           
=========================================
  Hits          35929    35929           
  Misses        22238    22238           
  Partials         39       39           

Copy link
Member

@nflaig nflaig left a comment

Choose a reason for hiding this comment

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

LGTM

@wemeetagain wemeetagain merged commit 3af0db1 into unstable Mar 2, 2024
20 checks passed
@wemeetagain wemeetagain deleted the philknows/update-validator-docs branch March 2, 2024 15:24
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.17.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.

None yet

3 participants