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

chore: update external signer configuration errors #6140

Merged
merged 1 commit into from
Dec 1, 2023

Conversation

nflaig
Copy link
Member

@nflaig nflaig commented Nov 29, 2023

Motivation

Reviewed external signer code and noticed that the error messages related to invalid configuration reference outdated CLI options.

Description

Update external signer configuration errors

@nflaig nflaig requested a review from a team as a code owner November 29, 2023 17:30
@@ -297,7 +295,8 @@ export const validatorOptions: CliCommandOptions<IValidatorCliArgs> = {

"externalSigner.fetch": {
conflicts: ["externalSigner.pubkeys"],
description: "Fetch then list of public keys to validate from an external signer",
description:
"Fetch the list of public keys to validate from an external signer. Cannot be used in combination with `--externalSigner.pubkeys`",
Copy link
Member Author

Choose a reason for hiding this comment

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

If both options are set, Lodestar will throw the following error on startup

✖ Arguments externalSigner.fetch and externalSigner.pubkeys are mutually exclusive

but there is no hint at this by just looking at the docs (although user could infer it from the behavior)

Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 594b0c6 Previous: 248b64c Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 730.33 us/op 721.34 us/op 1.01
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 120.00 us/op 58.808 us/op 2.04
BLS verify - blst-native 1.3384 ms/op 1.0515 ms/op 1.27
BLS verifyMultipleSignatures 3 - blst-native 2.7613 ms/op 2.2681 ms/op 1.22
BLS verifyMultipleSignatures 8 - blst-native 6.0951 ms/op 4.9597 ms/op 1.23
BLS verifyMultipleSignatures 32 - blst-native 22.822 ms/op 18.263 ms/op 1.25
BLS verifyMultipleSignatures 64 - blst-native 44.195 ms/op 36.052 ms/op 1.23
BLS verifyMultipleSignatures 128 - blst-native 88.207 ms/op 72.656 ms/op 1.21
BLS deserializing 10000 signatures 935.27 ms/op 782.41 ms/op 1.20
BLS deserializing 100000 signatures 9.2630 s/op 7.8599 s/op 1.18
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.3388 ms/op 1.0825 ms/op 1.24
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.6366 ms/op 1.2389 ms/op 1.32
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.7267 ms/op 1.9340 ms/op 1.41
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.4260 ms/op 3.5968 ms/op 0.95
BLS verifyMultipleSignatures - same message - 128 - blst-native 5.5679 ms/op 4.7065 ms/op 1.18
BLS aggregatePubkeys 32 - blst-native 25.695 us/op 21.629 us/op 1.19
BLS aggregatePubkeys 128 - blst-native 100.39 us/op 84.790 us/op 1.18
getAttestationsForBlock 49.464 ms/op 38.722 ms/op 1.28
isKnown best case - 1 super set check 557.00 ns/op 402.00 ns/op 1.39
isKnown normal case - 2 super set checks 442.00 ns/op 372.00 ns/op 1.19
isKnown worse case - 16 super set checks 411.00 ns/op 346.00 ns/op 1.19
CheckpointStateCache - add get delete 6.3010 us/op 4.1430 us/op 1.52
validate api signedAggregateAndProof - struct 2.9714 ms/op 2.3151 ms/op 1.28
validate gossip signedAggregateAndProof - struct 2.8674 ms/op 2.3302 ms/op 1.23
validate gossip attestation - vc 640000 1.4299 ms/op 1.1339 ms/op 1.26
batch validate gossip attestation - vc 640000 - chunk 32 170.44 us/op 139.84 us/op 1.22
batch validate gossip attestation - vc 640000 - chunk 64 150.76 us/op 127.15 us/op 1.19
batch validate gossip attestation - vc 640000 - chunk 128 140.15 us/op 119.58 us/op 1.17
batch validate gossip attestation - vc 640000 - chunk 256 153.06 us/op 112.93 us/op 1.36
pickEth1Vote - no votes 1.4744 ms/op 883.95 us/op 1.67
pickEth1Vote - max votes 11.906 ms/op 5.8068 ms/op 2.05
pickEth1Vote - Eth1Data hashTreeRoot value x2048 24.635 ms/op 11.492 ms/op 2.14
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 41.725 ms/op 18.392 ms/op 2.27
pickEth1Vote - Eth1Data fastSerialize value x2048 739.92 us/op 418.07 us/op 1.77
pickEth1Vote - Eth1Data fastSerialize tree x2048 8.7340 ms/op 4.5388 ms/op 1.92
bytes32 toHexString 710.00 ns/op 453.00 ns/op 1.57
bytes32 Buffer.toString(hex) 323.00 ns/op 343.00 ns/op 0.94
bytes32 Buffer.toString(hex) from Uint8Array 604.00 ns/op 429.00 ns/op 1.41
bytes32 Buffer.toString(hex) + 0x 304.00 ns/op 315.00 ns/op 0.97
Object access 1 prop 0.22700 ns/op 0.19900 ns/op 1.14
Map access 1 prop 0.15900 ns/op 0.18400 ns/op 0.86
Object get x1000 9.8350 ns/op 5.6730 ns/op 1.73
Map get x1000 0.94700 ns/op 0.75100 ns/op 1.26
Object set x1000 75.618 ns/op 25.555 ns/op 2.96
Map set x1000 50.953 ns/op 17.117 ns/op 2.98
Return object 10000 times 0.26350 ns/op 0.22740 ns/op 1.16
Throw Error 10000 times 4.1009 us/op 2.8388 us/op 1.44
fastMsgIdFn sha256 / 200 bytes 3.5680 us/op 1.9610 us/op 1.82
fastMsgIdFn h32 xxhash / 200 bytes 367.00 ns/op 301.00 ns/op 1.22
fastMsgIdFn h64 xxhash / 200 bytes 400.00 ns/op 346.00 ns/op 1.16
fastMsgIdFn sha256 / 1000 bytes 12.505 us/op 6.1810 us/op 2.02
fastMsgIdFn h32 xxhash / 1000 bytes 516.00 ns/op 426.00 ns/op 1.21
fastMsgIdFn h64 xxhash / 1000 bytes 488.00 ns/op 414.00 ns/op 1.18
fastMsgIdFn sha256 / 10000 bytes 107.27 us/op 53.542 us/op 2.00
fastMsgIdFn h32 xxhash / 10000 bytes 2.1550 us/op 1.8330 us/op 1.18
fastMsgIdFn h64 xxhash / 10000 bytes 1.4470 us/op 1.2470 us/op 1.16
send data - 1000 256B messages 22.537 ms/op 11.414 ms/op 1.97
send data - 1000 512B messages 30.789 ms/op 15.324 ms/op 2.01
send data - 1000 1024B messages 47.230 ms/op 22.410 ms/op 2.11
send data - 1000 1200B messages 40.798 ms/op 26.448 ms/op 1.54
send data - 1000 2048B messages 45.684 ms/op 33.577 ms/op 1.36
send data - 1000 4096B messages 32.575 ms/op 30.003 ms/op 1.09
send data - 1000 16384B messages 106.48 ms/op 82.027 ms/op 1.30
send data - 1000 65536B messages 474.48 ms/op 445.16 ms/op 1.07
enrSubnets - fastDeserialize 64 bits 2.1590 us/op 1.0110 us/op 2.14
enrSubnets - ssz BitVector 64 bits 595.00 ns/op 410.00 ns/op 1.45
enrSubnets - fastDeserialize 4 bits 247.00 ns/op 203.00 ns/op 1.22
enrSubnets - ssz BitVector 4 bits 558.00 ns/op 410.00 ns/op 1.36
prioritizePeers score -10:0 att 32-0.1 sync 2-0 130.30 us/op 65.784 us/op 1.98
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 156.15 us/op 77.930 us/op 2.00
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 212.91 us/op 110.21 us/op 1.93
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 356.06 us/op 191.78 us/op 1.86
prioritizePeers score 0:0 att 64-1 sync 4-1 429.56 us/op 206.89 us/op 2.08
array of 16000 items push then shift 1.8459 us/op 1.3376 us/op 1.38
LinkedList of 16000 items push then shift 10.040 ns/op 6.1020 ns/op 1.65
array of 16000 items push then pop 125.55 ns/op 70.466 ns/op 1.78
LinkedList of 16000 items push then pop 9.9230 ns/op 5.7750 ns/op 1.72
array of 24000 items push then shift 2.7528 us/op 1.9458 us/op 1.41
LinkedList of 24000 items push then shift 9.9430 ns/op 6.5830 ns/op 1.51
array of 24000 items push then pop 168.52 ns/op 86.333 ns/op 1.95
LinkedList of 24000 items push then pop 9.4270 ns/op 6.0010 ns/op 1.57
intersect bitArray bitLen 8 6.9090 ns/op 5.3650 ns/op 1.29
intersect array and set length 8 88.473 ns/op 49.134 ns/op 1.80
intersect bitArray bitLen 128 36.440 ns/op 28.040 ns/op 1.30
intersect array and set length 128 1.1104 us/op 690.90 ns/op 1.61
bitArray.getTrueBitIndexes() bitLen 128 1.7860 us/op 1.2030 us/op 1.48
bitArray.getTrueBitIndexes() bitLen 248 3.3810 us/op 1.9010 us/op 1.78
bitArray.getTrueBitIndexes() bitLen 512 6.6070 us/op 3.7810 us/op 1.75
Buffer.concat 32 items 1.1620 us/op 943.00 ns/op 1.23
Uint8Array.set 32 items 2.3750 us/op 1.8880 us/op 1.26
Set add up to 64 items then delete first 5.1249 us/op 1.7847 us/op 2.87
OrderedSet add up to 64 items then delete first 6.9663 us/op 2.6867 us/op 2.59
Set add up to 64 items then delete last 5.4118 us/op 1.9878 us/op 2.72
OrderedSet add up to 64 items then delete last 7.1282 us/op 2.9900 us/op 2.38
Set add up to 64 items then delete middle 5.4251 us/op 2.0418 us/op 2.66
OrderedSet add up to 64 items then delete middle 8.3733 us/op 4.1934 us/op 2.00
Set add up to 128 items then delete first 10.709 us/op 3.9054 us/op 2.74
OrderedSet add up to 128 items then delete first 14.666 us/op 6.1387 us/op 2.39
Set add up to 128 items then delete last 10.659 us/op 4.1001 us/op 2.60
OrderedSet add up to 128 items then delete last 13.804 us/op 5.7025 us/op 2.42
Set add up to 128 items then delete middle 10.524 us/op 3.8006 us/op 2.77
OrderedSet add up to 128 items then delete middle 20.003 us/op 10.663 us/op 1.88
Set add up to 256 items then delete first 22.122 us/op 7.6962 us/op 2.87
OrderedSet add up to 256 items then delete first 29.765 us/op 12.213 us/op 2.44
Set add up to 256 items then delete last 22.081 us/op 7.5426 us/op 2.93
OrderedSet add up to 256 items then delete last 28.843 us/op 11.402 us/op 2.53
Set add up to 256 items then delete middle 21.691 us/op 7.4030 us/op 2.93
OrderedSet add up to 256 items then delete middle 52.591 us/op 31.129 us/op 1.69
transfer serialized Status (84 B) 2.0670 us/op 1.4330 us/op 1.44
copy serialized Status (84 B) 1.7010 us/op 1.2470 us/op 1.36
transfer serialized SignedVoluntaryExit (112 B) 1.9850 us/op 1.4550 us/op 1.36
copy serialized SignedVoluntaryExit (112 B) 1.7520 us/op 1.3060 us/op 1.34
transfer serialized ProposerSlashing (416 B) 2.3610 us/op 2.6570 us/op 0.89
copy serialized ProposerSlashing (416 B) 2.4850 us/op 2.1320 us/op 1.17
transfer serialized Attestation (485 B) 2.3090 us/op 2.0110 us/op 1.15
copy serialized Attestation (485 B) 2.3910 us/op 2.1710 us/op 1.10
transfer serialized AttesterSlashing (33232 B) 2.3940 us/op 2.3660 us/op 1.01
copy serialized AttesterSlashing (33232 B) 13.461 us/op 5.6280 us/op 2.39
transfer serialized Small SignedBeaconBlock (128000 B) 4.1960 us/op 2.9380 us/op 1.43
copy serialized Small SignedBeaconBlock (128000 B) 28.313 us/op 10.130 us/op 2.79
transfer serialized Avg SignedBeaconBlock (200000 B) 4.4000 us/op 2.9440 us/op 1.49
copy serialized Avg SignedBeaconBlock (200000 B) 40.619 us/op 13.529 us/op 3.00
transfer serialized BlobsSidecar (524380 B) 5.5220 us/op 2.6140 us/op 2.11
copy serialized BlobsSidecar (524380 B) 167.59 us/op 83.466 us/op 2.01
transfer serialized Big SignedBeaconBlock (1000000 B) 4.9600 us/op 2.8590 us/op 1.73
copy serialized Big SignedBeaconBlock (1000000 B) 180.66 us/op 230.34 us/op 0.78
pass gossip attestations to forkchoice per slot 4.7462 ms/op 2.7913 ms/op 1.70
forkChoice updateHead vc 100000 bc 64 eq 0 701.07 us/op 464.07 us/op 1.51
forkChoice updateHead vc 600000 bc 64 eq 0 5.9881 ms/op 2.9140 ms/op 2.05
forkChoice updateHead vc 1000000 bc 64 eq 0 7.6600 ms/op 4.3870 ms/op 1.75
forkChoice updateHead vc 600000 bc 320 eq 0 4.3869 ms/op 2.5996 ms/op 1.69
forkChoice updateHead vc 600000 bc 1200 eq 0 4.5381 ms/op 2.7985 ms/op 1.62
forkChoice updateHead vc 600000 bc 7200 eq 0 5.9371 ms/op 3.4079 ms/op 1.74
forkChoice updateHead vc 600000 bc 64 eq 1000 11.707 ms/op 9.9445 ms/op 1.18
forkChoice updateHead vc 600000 bc 64 eq 10000 12.686 ms/op 9.6908 ms/op 1.31
forkChoice updateHead vc 600000 bc 64 eq 300000 23.022 ms/op 12.088 ms/op 1.90
computeDeltas 500000 validators 300 proto nodes 7.0002 ms/op 3.2696 ms/op 2.14
computeDeltas 500000 validators 1200 proto nodes 6.9007 ms/op 3.1771 ms/op 2.17
computeDeltas 500000 validators 7200 proto nodes 6.8088 ms/op 3.0388 ms/op 2.24
computeDeltas 750000 validators 300 proto nodes 10.434 ms/op 4.6756 ms/op 2.23
computeDeltas 750000 validators 1200 proto nodes 10.613 ms/op 4.7163 ms/op 2.25
computeDeltas 750000 validators 7200 proto nodes 10.511 ms/op 4.5701 ms/op 2.30
computeDeltas 1400000 validators 300 proto nodes 20.611 ms/op 8.8973 ms/op 2.32
computeDeltas 1400000 validators 1200 proto nodes 22.354 ms/op 9.6214 ms/op 2.32
computeDeltas 1400000 validators 7200 proto nodes 23.176 ms/op 9.7586 ms/op 2.37
computeDeltas 2100000 validators 300 proto nodes 31.203 ms/op 14.877 ms/op 2.10
computeDeltas 2100000 validators 1200 proto nodes 34.217 ms/op 14.355 ms/op 2.38
computeDeltas 2100000 validators 7200 proto nodes 37.126 ms/op 15.613 ms/op 2.38
computeProposerBoostScoreFromBalances 500000 validators 4.4659 ms/op 3.5260 ms/op 1.27
computeProposerBoostScoreFromBalances 750000 validators 4.0870 ms/op 3.5423 ms/op 1.15
computeProposerBoostScoreFromBalances 1400000 validators 4.1013 ms/op 3.6051 ms/op 1.14
computeProposerBoostScoreFromBalances 2100000 validators 4.0430 ms/op 3.4655 ms/op 1.17
altair processAttestation - 250000 vs - 7PWei normalcase 5.0895 ms/op 1.9945 ms/op 2.55
altair processAttestation - 250000 vs - 7PWei worstcase 6.3431 ms/op 2.5389 ms/op 2.50
altair processAttestation - setStatus - 1/6 committees join 194.47 us/op 112.30 us/op 1.73
altair processAttestation - setStatus - 1/3 committees join 313.51 us/op 200.05 us/op 1.57
altair processAttestation - setStatus - 1/2 committees join 419.77 us/op 292.82 us/op 1.43
altair processAttestation - setStatus - 2/3 committees join 546.63 us/op 385.31 us/op 1.42
altair processAttestation - setStatus - 4/5 committees join 833.38 us/op 520.95 us/op 1.60
altair processAttestation - setStatus - 100% committees join 886.61 us/op 602.82 us/op 1.47
altair processBlock - 250000 vs - 7PWei normalcase 11.822 ms/op 8.4755 ms/op 1.39
altair processBlock - 250000 vs - 7PWei normalcase hashState 62.423 ms/op 33.145 ms/op 1.88
altair processBlock - 250000 vs - 7PWei worstcase 53.402 ms/op 36.089 ms/op 1.48
altair processBlock - 250000 vs - 7PWei worstcase hashState 127.14 ms/op 79.849 ms/op 1.59
phase0 processBlock - 250000 vs - 7PWei normalcase 3.6291 ms/op 2.5830 ms/op 1.41
phase0 processBlock - 250000 vs - 7PWei worstcase 42.102 ms/op 27.429 ms/op 1.53
altair processEth1Data - 250000 vs - 7PWei normalcase 731.66 us/op 380.20 us/op 1.92
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 22.737 us/op 10.784 us/op 2.11
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 65.542 us/op 46.181 us/op 1.42
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 18.579 us/op 17.702 us/op 1.05
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 20.349 us/op 13.092 us/op 1.55
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 265.19 us/op 173.32 us/op 1.53
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.7858 ms/op 939.51 us/op 1.90
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 2.3579 ms/op 1.5439 ms/op 1.53
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 2.1689 ms/op 1.4320 ms/op 1.51
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 5.1456 ms/op 2.5264 ms/op 2.04
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.9719 ms/op 2.1984 ms/op 1.35
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 6.0432 ms/op 3.5885 ms/op 1.68
Tree 40 250000 create 479.69 ms/op 293.89 ms/op 1.63
Tree 40 250000 get(125000) 216.23 ns/op 112.83 ns/op 1.92
Tree 40 250000 set(125000) 1.1115 us/op 777.66 ns/op 1.43
Tree 40 250000 toArray() 23.858 ms/op 20.763 ms/op 1.15
Tree 40 250000 iterate all - toArray() + loop 23.765 ms/op 11.185 ms/op 2.12
Tree 40 250000 iterate all - get(i) 75.089 ms/op 48.869 ms/op 1.54
MutableVector 250000 create 15.604 ms/op 8.4395 ms/op 1.85
MutableVector 250000 get(125000) 6.7760 ns/op 6.0770 ns/op 1.12
MutableVector 250000 set(125000) 389.94 ns/op 272.31 ns/op 1.43
MutableVector 250000 toArray() 4.5009 ms/op 3.1450 ms/op 1.43
MutableVector 250000 iterate all - toArray() + loop 4.8141 ms/op 2.3390 ms/op 2.06
MutableVector 250000 iterate all - get(i) 1.5636 ms/op 1.3331 ms/op 1.17
Array 250000 create 4.2500 ms/op 2.5315 ms/op 1.68
Array 250000 clone - spread 1.4747 ms/op 1.1630 ms/op 1.27
Array 250000 get(125000) 1.4550 ns/op 1.0360 ns/op 1.40
Array 250000 set(125000) 5.4200 ns/op 1.2550 ns/op 4.32
Array 250000 iterate all - loop 175.59 us/op 158.29 us/op 1.11
effectiveBalanceIncrements clone Uint8Array 300000 58.667 us/op 14.548 us/op 4.03
effectiveBalanceIncrements clone MutableVector 300000 465.00 ns/op 403.00 ns/op 1.15
effectiveBalanceIncrements rw all Uint8Array 300000 207.48 us/op 187.15 us/op 1.11
effectiveBalanceIncrements rw all MutableVector 300000 177.06 ms/op 62.846 ms/op 2.82
phase0 afterProcessEpoch - 250000 vs - 7PWei 136.88 ms/op 77.246 ms/op 1.77
phase0 beforeProcessEpoch - 250000 vs - 7PWei 55.848 ms/op 33.808 ms/op 1.65
altair processEpoch - mainnet_e81889 560.64 ms/op 434.93 ms/op 1.29
mainnet_e81889 - altair beforeProcessEpoch 89.373 ms/op 73.883 ms/op 1.21
mainnet_e81889 - altair processJustificationAndFinalization 23.296 us/op 19.055 us/op 1.22
mainnet_e81889 - altair processInactivityUpdates 6.5913 ms/op 4.2335 ms/op 1.56
mainnet_e81889 - altair processRewardsAndPenalties 57.693 ms/op 57.498 ms/op 1.00
mainnet_e81889 - altair processRegistryUpdates 3.2810 us/op 3.2570 us/op 1.01
mainnet_e81889 - altair processSlashings 724.00 ns/op 1.0360 us/op 0.70
mainnet_e81889 - altair processEth1DataReset 677.00 ns/op 985.00 ns/op 0.69
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.2340 ms/op 1.0035 ms/op 2.23
mainnet_e81889 - altair processSlashingsReset 5.6560 us/op 4.4710 us/op 1.27
mainnet_e81889 - altair processRandaoMixesReset 8.1490 us/op 5.8480 us/op 1.39
mainnet_e81889 - altair processHistoricalRootsUpdate 738.00 ns/op 1.0290 us/op 0.72
mainnet_e81889 - altair processParticipationFlagUpdates 2.1510 us/op 2.8930 us/op 0.74
mainnet_e81889 - altair processSyncCommitteeUpdates 805.00 ns/op 1.0170 us/op 0.79
mainnet_e81889 - altair afterProcessEpoch 123.56 ms/op 84.825 ms/op 1.46
capella processEpoch - mainnet_e217614 2.2801 s/op 1.7560 s/op 1.30
mainnet_e217614 - capella beforeProcessEpoch 498.43 ms/op 387.88 ms/op 1.29
mainnet_e217614 - capella processJustificationAndFinalization 15.781 us/op 7.0120 us/op 2.25
mainnet_e217614 - capella processInactivityUpdates 22.515 ms/op 16.742 ms/op 1.34
mainnet_e217614 - capella processRewardsAndPenalties 575.49 ms/op 461.03 ms/op 1.25
mainnet_e217614 - capella processRegistryUpdates 42.290 us/op 20.778 us/op 2.04
mainnet_e217614 - capella processSlashings 804.00 ns/op 679.00 ns/op 1.18
mainnet_e217614 - capella processEth1DataReset 579.00 ns/op 611.00 ns/op 0.95
mainnet_e217614 - capella processEffectiveBalanceUpdates 4.6088 ms/op 3.4500 ms/op 1.34
mainnet_e217614 - capella processSlashingsReset 4.1050 us/op 1.9930 us/op 2.06
mainnet_e217614 - capella processRandaoMixesReset 9.4700 us/op 3.5150 us/op 2.69
mainnet_e217614 - capella processHistoricalRootsUpdate 938.00 ns/op 572.00 ns/op 1.64
mainnet_e217614 - capella processParticipationFlagUpdates 2.9770 us/op 1.6460 us/op 1.81
mainnet_e217614 - capella afterProcessEpoch 373.42 ms/op 213.00 ms/op 1.75
phase0 processEpoch - mainnet_e58758 663.27 ms/op 361.74 ms/op 1.83
mainnet_e58758 - phase0 beforeProcessEpoch 202.05 ms/op 124.49 ms/op 1.62
mainnet_e58758 - phase0 processJustificationAndFinalization 35.640 us/op 11.938 us/op 2.99
mainnet_e58758 - phase0 processRewardsAndPenalties 87.362 ms/op 51.115 ms/op 1.71
mainnet_e58758 - phase0 processRegistryUpdates 26.632 us/op 6.4010 us/op 4.16
mainnet_e58758 - phase0 processSlashings 1.2410 us/op 617.00 ns/op 2.01
mainnet_e58758 - phase0 processEth1DataReset 1.3650 us/op 547.00 ns/op 2.50
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 2.0368 ms/op 880.36 us/op 2.31
mainnet_e58758 - phase0 processSlashingsReset 5.6200 us/op 2.4690 us/op 2.28
mainnet_e58758 - phase0 processRandaoMixesReset 8.7630 us/op 2.9070 us/op 3.01
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.2800 us/op 519.00 ns/op 2.47
mainnet_e58758 - phase0 processParticipationRecordUpdates 8.0880 us/op 3.3650 us/op 2.40
mainnet_e58758 - phase0 afterProcessEpoch 116.00 ms/op 65.205 ms/op 1.78
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.5083 ms/op 991.60 us/op 1.52
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.4765 ms/op 1.1226 ms/op 1.32
altair processInactivityUpdates - 250000 normalcase 25.334 ms/op 16.574 ms/op 1.53
altair processInactivityUpdates - 250000 worstcase 21.741 ms/op 18.375 ms/op 1.18
phase0 processRegistryUpdates - 250000 normalcase 11.730 us/op 5.4020 us/op 2.17
phase0 processRegistryUpdates - 250000 badcase_full_deposits 401.40 us/op 348.06 us/op 1.15
phase0 processRegistryUpdates - 250000 worstcase 0.5 144.68 ms/op 105.99 ms/op 1.37
altair processRewardsAndPenalties - 250000 normalcase 57.381 ms/op 67.200 ms/op 0.85
altair processRewardsAndPenalties - 250000 worstcase 75.958 ms/op 64.456 ms/op 1.18
phase0 getAttestationDeltas - 250000 normalcase 15.883 ms/op 5.5742 ms/op 2.85
phase0 getAttestationDeltas - 250000 worstcase 12.580 ms/op 5.1119 ms/op 2.46
phase0 processSlashings - 250000 worstcase 2.5980 ms/op 1.5516 ms/op 1.67
altair processSyncCommitteeUpdates - 250000 168.81 ms/op 112.51 ms/op 1.50
BeaconState.hashTreeRoot - No change 252.00 ns/op 313.00 ns/op 0.81
BeaconState.hashTreeRoot - 1 full validator 135.34 us/op 138.40 us/op 0.98
BeaconState.hashTreeRoot - 32 full validator 1.6290 ms/op 1.1668 ms/op 1.40
BeaconState.hashTreeRoot - 512 full validator 17.588 ms/op 16.894 ms/op 1.04
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 184.98 us/op 106.30 us/op 1.74
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.5822 ms/op 1.4698 ms/op 1.76
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 37.514 ms/op 19.708 ms/op 1.90
BeaconState.hashTreeRoot - 1 balances 148.73 us/op 91.520 us/op 1.63
BeaconState.hashTreeRoot - 32 balances 1.2884 ms/op 859.43 us/op 1.50
BeaconState.hashTreeRoot - 512 balances 12.531 ms/op 9.9996 ms/op 1.25
BeaconState.hashTreeRoot - 250000 balances 246.15 ms/op 193.97 ms/op 1.27
aggregationBits - 2048 els - zipIndexesInBitList 65.414 us/op 16.946 us/op 3.86
byteArrayEquals 32 80.471 ns/op 62.998 ns/op 1.28
Buffer.compare 32 57.202 ns/op 38.567 ns/op 1.48
byteArrayEquals 1024 2.1884 us/op 1.6782 us/op 1.30
Buffer.compare 1024 72.047 ns/op 45.343 ns/op 1.59
byteArrayEquals 16384 32.959 us/op 26.329 us/op 1.25
Buffer.compare 16384 276.67 ns/op 216.89 ns/op 1.28
byteArrayEquals 123687377 253.71 ms/op 214.82 ms/op 1.18
Buffer.compare 123687377 10.597 ms/op 7.5090 ms/op 1.41
byteArrayEquals 32 - diff last byte 77.451 ns/op 68.630 ns/op 1.13
Buffer.compare 32 - diff last byte 62.775 ns/op 45.048 ns/op 1.39
byteArrayEquals 1024 - diff last byte 2.1865 us/op 1.7132 us/op 1.28
Buffer.compare 1024 - diff last byte 73.596 ns/op 45.591 ns/op 1.61
byteArrayEquals 16384 - diff last byte 33.145 us/op 27.095 us/op 1.22
Buffer.compare 16384 - diff last byte 281.39 ns/op 225.05 ns/op 1.25
byteArrayEquals 123687377 - diff last byte 268.75 ms/op 219.52 ms/op 1.22
Buffer.compare 123687377 - diff last byte 11.220 ms/op 7.3654 ms/op 1.52
byteArrayEquals 32 - random bytes 6.9590 ns/op 5.5610 ns/op 1.25
Buffer.compare 32 - random bytes 70.672 ns/op 39.037 ns/op 1.81
byteArrayEquals 1024 - random bytes 6.9130 ns/op 5.8130 ns/op 1.19
Buffer.compare 1024 - random bytes 65.149 ns/op 38.284 ns/op 1.70
byteArrayEquals 16384 - random bytes 6.6120 ns/op 5.8640 ns/op 1.13
Buffer.compare 16384 - random bytes 64.642 ns/op 37.548 ns/op 1.72
byteArrayEquals 123687377 - random bytes 10.570 ns/op 19.090 ns/op 0.55
Buffer.compare 123687377 - random bytes 84.450 ns/op 49.110 ns/op 1.72
regular array get 100000 times 49.839 us/op 43.738 us/op 1.14
wrappedArray get 100000 times 48.952 us/op 41.745 us/op 1.17
arrayWithProxy get 100000 times 15.144 ms/op 10.900 ms/op 1.39
ssz.Root.equals 57.073 ns/op 55.577 ns/op 1.03
byteArrayEquals 56.493 ns/op 54.777 ns/op 1.03
Buffer.compare 12.489 ns/op 10.403 ns/op 1.20
shuffle list - 16384 els 7.3313 ms/op 4.8334 ms/op 1.52
shuffle list - 250000 els 107.82 ms/op 71.351 ms/op 1.51
processSlot - 1 slots 18.522 us/op 15.697 us/op 1.18
processSlot - 32 slots 4.6380 ms/op 2.8431 ms/op 1.63
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 69.213 ms/op 49.134 ms/op 1.41
getCommitteeAssignments - req 1 vs - 250000 vc 2.7614 ms/op 2.1878 ms/op 1.26
getCommitteeAssignments - req 100 vs - 250000 vc 3.8996 ms/op 3.6931 ms/op 1.06
getCommitteeAssignments - req 1000 vs - 250000 vc 4.4858 ms/op 3.7812 ms/op 1.19
findModifiedValidators - 10000 modified validators 648.75 ms/op 492.69 ms/op 1.32
findModifiedValidators - 1000 modified validators 500.77 ms/op 350.93 ms/op 1.43
findModifiedValidators - 100 modified validators 501.06 ms/op 351.96 ms/op 1.42
findModifiedValidators - 10 modified validators 476.46 ms/op 320.67 ms/op 1.49
findModifiedValidators - 1 modified validators 452.65 ms/op 321.48 ms/op 1.41
findModifiedValidators - no difference 432.68 ms/op 308.34 ms/op 1.40
compare ViewDUs 4.9232 s/op 4.1643 s/op 1.18
compare each validator Uint8Array 1.6706 s/op 1.4691 s/op 1.14
compare ViewDU to Uint8Array 1.4047 s/op 1.0421 s/op 1.35
migrate state 1000000 validators, 24 modified, 0 new 868.73 ms/op 754.71 ms/op 1.15
migrate state 1000000 validators, 1700 modified, 1000 new 1.1855 s/op 994.20 ms/op 1.19
migrate state 1000000 validators, 3400 modified, 2000 new 1.4265 s/op 1.2467 s/op 1.14
migrate state 1500000 validators, 24 modified, 0 new 810.48 ms/op 663.06 ms/op 1.22
migrate state 1500000 validators, 1700 modified, 1000 new 1.0240 s/op 949.23 ms/op 1.08
migrate state 1500000 validators, 3400 modified, 2000 new 1.3567 s/op 1.0932 s/op 1.24
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.2900 ns/op 4.0100 ns/op 1.07
state getBlockRootAtSlot - 250000 vs - 7PWei 528.90 ns/op 935.17 ns/op 0.57
computeProposers - vc 250000 8.9988 ms/op 6.8803 ms/op 1.31
computeEpochShuffling - vc 250000 104.58 ms/op 69.861 ms/op 1.50
getNextSyncCommittee - vc 250000 152.71 ms/op 114.48 ms/op 1.33
computeSigningRoot for AttestationData 24.372 us/op 30.474 us/op 0.80
hash AttestationData serialized data then Buffer.toString(base64) 2.3394 us/op 1.2555 us/op 1.86
toHexString serialized data 1.1251 us/op 867.84 ns/op 1.30
Buffer.toString(base64) 232.97 ns/op 157.25 ns/op 1.48

by benchmarkbot/action

@nflaig nflaig merged commit 3631ae2 into unstable Dec 1, 2023
15 checks passed
@nflaig nflaig deleted the nflaig/external-signer-errors branch December 1, 2023 07:47
@wemeetagain
Copy link
Member

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