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

fix: return el_offline as true in syncing status response if auth failed #7175

Open
wants to merge 1 commit into
base: unstable
Choose a base branch
from

Conversation

nflaig
Copy link
Member

@nflaig nflaig commented Oct 17, 2024

Motivation

If the EL client authentication fails it does not make sense to mark it as online in the syncing status reponse. This is also aligned with what's stated in sigp/lighthouse#4295.

In the spec, the definition is vague and it might be good to clarify it there as well.

Description

Return el_offline as true in syncing status api response if authentication failed

@nflaig nflaig requested a review from a team as a code owner October 17, 2024 17:40
@nflaig nflaig changed the title fix: consider execution client as offline if auth failed fix: return el_offline as true in syncing status response if auth failed Oct 17, 2024
Copy link

codecov bot commented Oct 17, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 49.21%. Comparing base (de0d6ab) to head (6f9d8db).

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #7175   +/-   ##
=========================================
  Coverage     49.21%   49.21%           
=========================================
  Files           598      598           
  Lines         39726    39726           
  Branches       2092     2095    +3     
=========================================
+ Hits          19550    19551    +1     
+ Misses        20136    20135    -1     
  Partials         40       40           

Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 3a9e0ba Previous: de0d6ab Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.0628 ms/op 1.7183 ms/op 1.20
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 39.811 us/op 37.146 us/op 1.07
BLS verify - blst 877.14 us/op 905.57 us/op 0.97
BLS verifyMultipleSignatures 3 - blst 1.2996 ms/op 1.3407 ms/op 0.97
BLS verifyMultipleSignatures 8 - blst 2.0938 ms/op 2.5955 ms/op 0.81
BLS verifyMultipleSignatures 32 - blst 4.4922 ms/op 4.5610 ms/op 0.98
BLS verifyMultipleSignatures 64 - blst 8.2856 ms/op 8.4932 ms/op 0.98
BLS verifyMultipleSignatures 128 - blst 16.099 ms/op 16.014 ms/op 1.01
BLS deserializing 10000 signatures 628.65 ms/op 626.15 ms/op 1.00
BLS deserializing 100000 signatures 6.1873 s/op 6.3426 s/op 0.98
BLS verifyMultipleSignatures - same message - 3 - blst 936.75 us/op 947.47 us/op 0.99
BLS verifyMultipleSignatures - same message - 8 - blst 1.0550 ms/op 1.0534 ms/op 1.00
BLS verifyMultipleSignatures - same message - 32 - blst 1.6821 ms/op 1.6538 ms/op 1.02
BLS verifyMultipleSignatures - same message - 64 - blst 2.5197 ms/op 2.4378 ms/op 1.03
BLS verifyMultipleSignatures - same message - 128 - blst 4.2318 ms/op 4.2739 ms/op 0.99
BLS aggregatePubkeys 32 - blst 17.670 us/op 17.835 us/op 0.99
BLS aggregatePubkeys 128 - blst 67.490 us/op 63.594 us/op 1.06
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 66.510 ms/op 70.717 ms/op 0.94
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 44.846 ms/op 41.418 ms/op 1.08
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 40.626 ms/op 41.765 ms/op 0.97
getSlashingsAndExits - default max 68.917 us/op 63.632 us/op 1.08
getSlashingsAndExits - 2k 253.17 us/op 247.29 us/op 1.02
proposeBlockBody type=full, size=empty 4.9116 ms/op 4.9248 ms/op 1.00
isKnown best case - 1 super set check 477.00 ns/op 465.00 ns/op 1.03
isKnown normal case - 2 super set checks 460.00 ns/op 457.00 ns/op 1.01
isKnown worse case - 16 super set checks 472.00 ns/op 461.00 ns/op 1.02
InMemoryCheckpointStateCache - add get delete 2.6080 us/op 2.8650 us/op 0.91
updateUnfinalizedPubkeys - updating 10 pubkeys 651.84 us/op 804.08 us/op 0.81
updateUnfinalizedPubkeys - updating 100 pubkeys 3.5152 ms/op 3.1182 ms/op 1.13
updateUnfinalizedPubkeys - updating 1000 pubkeys 38.786 ms/op 41.093 ms/op 0.94
validate api signedAggregateAndProof - struct 1.8451 ms/op 1.4519 ms/op 1.27
validate gossip signedAggregateAndProof - struct 1.9421 ms/op 2.0245 ms/op 0.96
batch validate gossip attestation - vc 640000 - chunk 32 126.38 us/op 126.33 us/op 1.00
batch validate gossip attestation - vc 640000 - chunk 64 115.02 us/op 109.96 us/op 1.05
batch validate gossip attestation - vc 640000 - chunk 128 102.18 us/op 105.89 us/op 0.96
batch validate gossip attestation - vc 640000 - chunk 256 101.42 us/op 99.791 us/op 1.02
pickEth1Vote - no votes 816.42 us/op 840.40 us/op 0.97
pickEth1Vote - max votes 4.5029 ms/op 8.3039 ms/op 0.54
pickEth1Vote - Eth1Data hashTreeRoot value x2048 12.359 ms/op 20.749 ms/op 0.60
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 20.950 ms/op 31.035 ms/op 0.68
pickEth1Vote - Eth1Data fastSerialize value x2048 361.53 us/op 390.97 us/op 0.92
pickEth1Vote - Eth1Data fastSerialize tree x2048 4.3791 ms/op 5.2330 ms/op 0.84
bytes32 toHexString 787.00 ns/op 807.00 ns/op 0.98
bytes32 Buffer.toString(hex) 519.00 ns/op 489.00 ns/op 1.06
bytes32 Buffer.toString(hex) from Uint8Array 634.00 ns/op 595.00 ns/op 1.07
bytes32 Buffer.toString(hex) + 0x 545.00 ns/op 488.00 ns/op 1.12
Object access 1 prop 0.38600 ns/op 0.34000 ns/op 1.14
Map access 1 prop 0.34900 ns/op 0.32400 ns/op 1.08
Object get x1000 5.0470 ns/op 5.0250 ns/op 1.00
Map get x1000 5.7550 ns/op 5.7550 ns/op 1.00
Object set x1000 29.406 ns/op 27.231 ns/op 1.08
Map set x1000 20.980 ns/op 19.840 ns/op 1.06
Return object 10000 times 0.30340 ns/op 0.29480 ns/op 1.03
Throw Error 10000 times 2.6837 us/op 2.6575 us/op 1.01
toHex 109.52 ns/op 119.78 ns/op 0.91
Buffer.from 103.81 ns/op 98.237 ns/op 1.06
shared Buffer 67.522 ns/op 66.791 ns/op 1.01
fastMsgIdFn sha256 / 200 bytes 2.0790 us/op 2.0190 us/op 1.03
fastMsgIdFn h32 xxhash / 200 bytes 409.00 ns/op 426.00 ns/op 0.96
fastMsgIdFn h64 xxhash / 200 bytes 456.00 ns/op 454.00 ns/op 1.00
fastMsgIdFn sha256 / 1000 bytes 5.9060 us/op 5.8230 us/op 1.01
fastMsgIdFn h32 xxhash / 1000 bytes 552.00 ns/op 553.00 ns/op 1.00
fastMsgIdFn h64 xxhash / 1000 bytes 517.00 ns/op 507.00 ns/op 1.02
fastMsgIdFn sha256 / 10000 bytes 49.712 us/op 46.684 us/op 1.06
fastMsgIdFn h32 xxhash / 10000 bytes 1.9370 us/op 1.9090 us/op 1.01
fastMsgIdFn h64 xxhash / 10000 bytes 1.3270 us/op 1.3160 us/op 1.01
send data - 1000 256B messages 9.2237 ms/op 11.863 ms/op 0.78
send data - 1000 512B messages 12.988 ms/op 14.082 ms/op 0.92
send data - 1000 1024B messages 21.621 ms/op 21.913 ms/op 0.99
send data - 1000 1200B messages 24.469 ms/op 22.746 ms/op 1.08
send data - 1000 2048B messages 30.469 ms/op 30.022 ms/op 1.01
send data - 1000 4096B messages 28.598 ms/op 27.678 ms/op 1.03
send data - 1000 16384B messages 71.711 ms/op 63.945 ms/op 1.12
send data - 1000 65536B messages 266.49 ms/op 236.04 ms/op 1.13
enrSubnets - fastDeserialize 64 bits 1.4640 us/op 1.0830 us/op 1.35
enrSubnets - ssz BitVector 64 bits 621.00 ns/op 519.00 ns/op 1.20
enrSubnets - fastDeserialize 4 bits 388.00 ns/op 322.00 ns/op 1.20
enrSubnets - ssz BitVector 4 bits 603.00 ns/op 535.00 ns/op 1.13
prioritizePeers score -10:0 att 32-0.1 sync 2-0 157.39 us/op 120.75 us/op 1.30
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 130.89 us/op 141.69 us/op 0.92
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 256.02 us/op 219.78 us/op 1.16
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 453.56 us/op 425.15 us/op 1.07
prioritizePeers score 0:0 att 64-1 sync 4-1 642.78 us/op 527.13 us/op 1.22
array of 16000 items push then shift 1.2815 us/op 1.2816 us/op 1.00
LinkedList of 16000 items push then shift 7.5070 ns/op 7.4570 ns/op 1.01
array of 16000 items push then pop 111.09 ns/op 125.64 ns/op 0.88
LinkedList of 16000 items push then pop 6.3050 ns/op 6.2970 ns/op 1.00
array of 24000 items push then shift 1.8535 us/op 1.8973 us/op 0.98
LinkedList of 24000 items push then shift 7.1380 ns/op 6.9310 ns/op 1.03
array of 24000 items push then pop 143.25 ns/op 158.41 ns/op 0.90
LinkedList of 24000 items push then pop 6.1100 ns/op 6.2220 ns/op 0.98
intersect bitArray bitLen 8 5.3010 ns/op 5.2700 ns/op 1.01
intersect array and set length 8 41.278 ns/op 40.509 ns/op 1.02
intersect bitArray bitLen 128 25.927 ns/op 26.214 ns/op 0.99
intersect array and set length 128 598.51 ns/op 647.64 ns/op 0.92
bitArray.getTrueBitIndexes() bitLen 128 2.4430 us/op 2.2460 us/op 1.09
bitArray.getTrueBitIndexes() bitLen 248 3.1560 us/op 3.4510 us/op 0.91
bitArray.getTrueBitIndexes() bitLen 512 7.0370 us/op 8.6390 us/op 0.81
Buffer.concat 32 items 1.0180 us/op 1.0860 us/op 0.94
Uint8Array.set 32 items 1.8530 us/op 1.7170 us/op 1.08
Buffer.copy 1.7960 us/op 1.7040 us/op 1.05
Uint8Array.set - with subarray 2.1160 us/op 2.1400 us/op 0.99
Uint8Array.set - without subarray 1.8150 us/op 1.4640 us/op 1.24
getUint32 - dataview 405.00 ns/op 406.00 ns/op 1.00
getUint32 - manual 340.00 ns/op 343.00 ns/op 0.99
Set add up to 64 items then delete first 1.7843 us/op 1.7844 us/op 1.00
OrderedSet add up to 64 items then delete first 2.7724 us/op 2.7672 us/op 1.00
Set add up to 64 items then delete last 2.0259 us/op 2.0333 us/op 1.00
OrderedSet add up to 64 items then delete last 3.0295 us/op 3.0735 us/op 0.99
Set add up to 64 items then delete middle 2.0154 us/op 2.0367 us/op 0.99
OrderedSet add up to 64 items then delete middle 4.5919 us/op 4.5966 us/op 1.00
Set add up to 128 items then delete first 4.0615 us/op 4.0016 us/op 1.01
OrderedSet add up to 128 items then delete first 6.1505 us/op 6.3192 us/op 0.97
Set add up to 128 items then delete last 3.9423 us/op 3.8364 us/op 1.03
OrderedSet add up to 128 items then delete last 5.8019 us/op 5.8751 us/op 0.99
Set add up to 128 items then delete middle 3.9551 us/op 3.8081 us/op 1.04
OrderedSet add up to 128 items then delete middle 11.627 us/op 11.979 us/op 0.97
Set add up to 256 items then delete first 7.7851 us/op 7.8387 us/op 0.99
OrderedSet add up to 256 items then delete first 12.181 us/op 12.585 us/op 0.97
Set add up to 256 items then delete last 7.5363 us/op 7.5312 us/op 1.00
OrderedSet add up to 256 items then delete last 11.476 us/op 11.797 us/op 0.97
Set add up to 256 items then delete middle 7.5070 us/op 7.4386 us/op 1.01
OrderedSet add up to 256 items then delete middle 34.845 us/op 35.240 us/op 0.99
transfer serialized Status (84 B) 1.4120 us/op 1.4970 us/op 0.94
copy serialized Status (84 B) 1.1920 us/op 1.3040 us/op 0.91
transfer serialized SignedVoluntaryExit (112 B) 1.5310 us/op 1.7480 us/op 0.88
copy serialized SignedVoluntaryExit (112 B) 1.2580 us/op 1.4170 us/op 0.89
transfer serialized ProposerSlashing (416 B) 1.9810 us/op 2.0370 us/op 0.97
copy serialized ProposerSlashing (416 B) 1.6500 us/op 2.0880 us/op 0.79
transfer serialized Attestation (485 B) 2.2720 us/op 2.1500 us/op 1.06
copy serialized Attestation (485 B) 1.8550 us/op 2.1380 us/op 0.87
transfer serialized AttesterSlashing (33232 B) 2.1880 us/op 2.7250 us/op 0.80
copy serialized AttesterSlashing (33232 B) 4.0880 us/op 6.0530 us/op 0.68
transfer serialized Small SignedBeaconBlock (128000 B) 2.6730 us/op 3.9780 us/op 0.67
copy serialized Small SignedBeaconBlock (128000 B) 9.5000 us/op 16.287 us/op 0.58
transfer serialized Avg SignedBeaconBlock (200000 B) 2.9130 us/op 3.9630 us/op 0.74
copy serialized Avg SignedBeaconBlock (200000 B) 12.717 us/op 23.972 us/op 0.53
transfer serialized BlobsSidecar (524380 B) 3.2210 us/op 3.3600 us/op 0.96
copy serialized BlobsSidecar (524380 B) 69.977 us/op 113.65 us/op 0.62
transfer serialized Big SignedBeaconBlock (1000000 B) 3.7730 us/op 2.9700 us/op 1.27
copy serialized Big SignedBeaconBlock (1000000 B) 175.75 us/op 188.02 us/op 0.93
pass gossip attestations to forkchoice per slot 2.3945 ms/op 2.5462 ms/op 0.94
forkChoice updateHead vc 100000 bc 64 eq 0 397.05 us/op 366.17 us/op 1.08
forkChoice updateHead vc 600000 bc 64 eq 0 2.3608 ms/op 2.7097 ms/op 0.87
forkChoice updateHead vc 1000000 bc 64 eq 0 3.9692 ms/op 3.6948 ms/op 1.07
forkChoice updateHead vc 600000 bc 320 eq 0 2.5936 ms/op 2.1906 ms/op 1.18
forkChoice updateHead vc 600000 bc 1200 eq 0 2.3491 ms/op 2.2462 ms/op 1.05
forkChoice updateHead vc 600000 bc 7200 eq 0 2.6201 ms/op 3.1150 ms/op 0.84
forkChoice updateHead vc 600000 bc 64 eq 1000 9.2126 ms/op 9.5812 ms/op 0.96
forkChoice updateHead vc 600000 bc 64 eq 10000 9.2465 ms/op 9.5213 ms/op 0.97
forkChoice updateHead vc 600000 bc 64 eq 300000 11.395 ms/op 11.784 ms/op 0.97
computeDeltas 500000 validators 300 proto nodes 3.3171 ms/op 3.2398 ms/op 1.02
computeDeltas 500000 validators 1200 proto nodes 3.2868 ms/op 3.2681 ms/op 1.01
computeDeltas 500000 validators 7200 proto nodes 3.3773 ms/op 3.2607 ms/op 1.04
computeDeltas 750000 validators 300 proto nodes 5.0982 ms/op 4.8665 ms/op 1.05
computeDeltas 750000 validators 1200 proto nodes 5.6736 ms/op 4.8411 ms/op 1.17
computeDeltas 750000 validators 7200 proto nodes 5.3689 ms/op 4.7775 ms/op 1.12
computeDeltas 1400000 validators 300 proto nodes 9.7705 ms/op 8.8315 ms/op 1.11
computeDeltas 1400000 validators 1200 proto nodes 9.8571 ms/op 9.1316 ms/op 1.08
computeDeltas 1400000 validators 7200 proto nodes 10.600 ms/op 8.7758 ms/op 1.21
computeDeltas 2100000 validators 300 proto nodes 16.716 ms/op 13.563 ms/op 1.23
computeDeltas 2100000 validators 1200 proto nodes 17.324 ms/op 13.531 ms/op 1.28
computeDeltas 2100000 validators 7200 proto nodes 18.846 ms/op 13.478 ms/op 1.40
altair processAttestation - 250000 vs - 7PWei normalcase 3.0909 ms/op 1.3997 ms/op 2.21
altair processAttestation - 250000 vs - 7PWei worstcase 3.0143 ms/op 2.1942 ms/op 1.37
altair processAttestation - setStatus - 1/6 committees join 100.55 us/op 66.958 us/op 1.50
altair processAttestation - setStatus - 1/3 committees join 155.51 us/op 141.72 us/op 1.10
altair processAttestation - setStatus - 1/2 committees join 272.16 us/op 194.96 us/op 1.40
altair processAttestation - setStatus - 2/3 committees join 289.88 us/op 252.07 us/op 1.15
altair processAttestation - setStatus - 4/5 committees join 419.09 us/op 383.85 us/op 1.09
altair processAttestation - setStatus - 100% committees join 514.31 us/op 460.59 us/op 1.12
altair processBlock - 250000 vs - 7PWei normalcase 6.4665 ms/op 5.4814 ms/op 1.18
altair processBlock - 250000 vs - 7PWei normalcase hashState 22.776 ms/op 23.561 ms/op 0.97
altair processBlock - 250000 vs - 7PWei worstcase 37.958 ms/op 38.362 ms/op 0.99
altair processBlock - 250000 vs - 7PWei worstcase hashState 70.943 ms/op 85.734 ms/op 0.83
phase0 processBlock - 250000 vs - 7PWei normalcase 1.9181 ms/op 2.0426 ms/op 0.94
phase0 processBlock - 250000 vs - 7PWei worstcase 24.197 ms/op 21.687 ms/op 1.12
altair processEth1Data - 250000 vs - 7PWei normalcase 266.42 us/op 235.92 us/op 1.13
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 5.3540 us/op 3.5870 us/op 1.49
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 30.400 us/op 17.366 us/op 1.75
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 9.1540 us/op 10.844 us/op 0.84
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 6.5710 us/op 5.0780 us/op 1.29
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 135.52 us/op 118.75 us/op 1.14
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 821.65 us/op 1.3286 ms/op 0.62
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.0993 ms/op 1.2265 ms/op 0.90
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.0851 ms/op 1.0515 ms/op 1.03
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.9478 ms/op 2.9483 ms/op 1.00
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.1142 ms/op 1.2049 ms/op 0.92
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 2.9382 ms/op 2.7890 ms/op 1.05
Tree 40 250000 create 194.27 ms/op 179.09 ms/op 1.08
Tree 40 250000 get(125000) 129.45 ns/op 101.75 ns/op 1.27
Tree 40 250000 set(125000) 525.10 ns/op 517.05 ns/op 1.02
Tree 40 250000 toArray() 12.711 ms/op 12.218 ms/op 1.04
Tree 40 250000 iterate all - toArray() + loop 13.176 ms/op 12.347 ms/op 1.07
Tree 40 250000 iterate all - get(i) 42.809 ms/op 39.782 ms/op 1.08
Array 250000 create 2.5231 ms/op 2.4037 ms/op 1.05
Array 250000 clone - spread 1.1879 ms/op 1.3163 ms/op 0.90
Array 250000 get(125000) 0.57200 ns/op 0.56300 ns/op 1.02
Array 250000 set(125000) 0.56500 ns/op 0.56400 ns/op 1.00
Array 250000 iterate all - loop 73.605 us/op 72.363 us/op 1.02
phase0 afterProcessEpoch - 250000 vs - 7PWei 39.458 ms/op 39.430 ms/op 1.00
Array.fill - length 1000000 2.4778 ms/op 2.4982 ms/op 0.99
Array push - length 1000000 15.019 ms/op 14.061 ms/op 1.07
Array.get 0.26070 ns/op 0.25331 ns/op 1.03
Uint8Array.get 0.34257 ns/op 0.32592 ns/op 1.05
phase0 beforeProcessEpoch - 250000 vs - 7PWei 13.783 ms/op 15.385 ms/op 0.90
altair processEpoch - mainnet_e81889 248.27 ms/op 278.69 ms/op 0.89
mainnet_e81889 - altair beforeProcessEpoch 16.368 ms/op 16.290 ms/op 1.00
mainnet_e81889 - altair processJustificationAndFinalization 6.5110 us/op 10.909 us/op 0.60
mainnet_e81889 - altair processInactivityUpdates 4.3818 ms/op 4.1307 ms/op 1.06
mainnet_e81889 - altair processRewardsAndPenalties 44.065 ms/op 55.977 ms/op 0.79
mainnet_e81889 - altair processRegistryUpdates 1.8930 us/op 1.3450 us/op 1.41
mainnet_e81889 - altair processSlashings 726.00 ns/op 823.00 ns/op 0.88
mainnet_e81889 - altair processEth1DataReset 663.00 ns/op 748.00 ns/op 0.89
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.4968 ms/op 1.6386 ms/op 0.91
mainnet_e81889 - altair processSlashingsReset 1.3640 us/op 2.1560 us/op 0.63
mainnet_e81889 - altair processRandaoMixesReset 3.6010 us/op 2.7200 us/op 1.32
mainnet_e81889 - altair processHistoricalRootsUpdate 697.00 ns/op 692.00 ns/op 1.01
mainnet_e81889 - altair processParticipationFlagUpdates 2.1060 us/op 1.8100 us/op 1.16
mainnet_e81889 - altair processSyncCommitteeUpdates 681.00 ns/op 703.00 ns/op 0.97
mainnet_e81889 - altair afterProcessEpoch 42.268 ms/op 41.143 ms/op 1.03
capella processEpoch - mainnet_e217614 993.91 ms/op 965.12 ms/op 1.03
mainnet_e217614 - capella beforeProcessEpoch 65.283 ms/op 68.213 ms/op 0.96
mainnet_e217614 - capella processJustificationAndFinalization 13.593 us/op 11.636 us/op 1.17
mainnet_e217614 - capella processInactivityUpdates 15.850 ms/op 12.576 ms/op 1.26
mainnet_e217614 - capella processRewardsAndPenalties 220.22 ms/op 220.74 ms/op 1.00
mainnet_e217614 - capella processRegistryUpdates 13.033 us/op 13.795 us/op 0.94
mainnet_e217614 - capella processSlashings 725.00 ns/op 740.00 ns/op 0.98
mainnet_e217614 - capella processEth1DataReset 722.00 ns/op 714.00 ns/op 1.01
mainnet_e217614 - capella processEffectiveBalanceUpdates 3.4669 ms/op 13.243 ms/op 0.26
mainnet_e217614 - capella processSlashingsReset 6.8550 us/op 2.4310 us/op 2.82
mainnet_e217614 - capella processRandaoMixesReset 4.1520 us/op 10.228 us/op 0.41
mainnet_e217614 - capella processHistoricalRootsUpdate 924.00 ns/op 1.0120 us/op 0.91
mainnet_e217614 - capella processParticipationFlagUpdates 2.1700 us/op 2.2060 us/op 0.98
mainnet_e217614 - capella afterProcessEpoch 105.45 ms/op 106.38 ms/op 0.99
phase0 processEpoch - mainnet_e58758 289.36 ms/op 345.60 ms/op 0.84
mainnet_e58758 - phase0 beforeProcessEpoch 70.883 ms/op 87.280 ms/op 0.81
mainnet_e58758 - phase0 processJustificationAndFinalization 15.094 us/op 13.319 us/op 1.13
mainnet_e58758 - phase0 processRewardsAndPenalties 30.717 ms/op 26.270 ms/op 1.17
mainnet_e58758 - phase0 processRegistryUpdates 6.1910 us/op 5.5300 us/op 1.12
mainnet_e58758 - phase0 processSlashings 898.00 ns/op 770.00 ns/op 1.17
mainnet_e58758 - phase0 processEth1DataReset 789.00 ns/op 719.00 ns/op 1.10
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 938.45 us/op 1.3597 ms/op 0.69
mainnet_e58758 - phase0 processSlashingsReset 3.5800 us/op 2.3320 us/op 1.54
mainnet_e58758 - phase0 processRandaoMixesReset 5.9190 us/op 3.2170 us/op 1.84
mainnet_e58758 - phase0 processHistoricalRootsUpdate 905.00 ns/op 776.00 ns/op 1.17
mainnet_e58758 - phase0 processParticipationRecordUpdates 5.8020 us/op 3.1250 us/op 1.86
mainnet_e58758 - phase0 afterProcessEpoch 40.221 ms/op 34.321 ms/op 1.17
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.7693 ms/op 1.6808 ms/op 1.05
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 3.2096 ms/op 1.6333 ms/op 1.97
altair processInactivityUpdates - 250000 normalcase 25.851 ms/op 17.134 ms/op 1.51
altair processInactivityUpdates - 250000 worstcase 23.062 ms/op 16.320 ms/op 1.41
phase0 processRegistryUpdates - 250000 normalcase 12.190 us/op 5.6000 us/op 2.18
phase0 processRegistryUpdates - 250000 badcase_full_deposits 336.98 us/op 312.49 us/op 1.08
phase0 processRegistryUpdates - 250000 worstcase 0.5 168.21 ms/op 110.94 ms/op 1.52
altair processRewardsAndPenalties - 250000 normalcase 71.216 ms/op 41.598 ms/op 1.71
altair processRewardsAndPenalties - 250000 worstcase 59.443 ms/op 33.371 ms/op 1.78
phase0 getAttestationDeltas - 250000 normalcase 11.606 ms/op 6.4047 ms/op 1.81
phase0 getAttestationDeltas - 250000 worstcase 6.9703 ms/op 5.8999 ms/op 1.18
phase0 processSlashings - 250000 worstcase 99.579 us/op 81.890 us/op 1.22
altair processSyncCommitteeUpdates - 250000 130.80 ms/op 94.417 ms/op 1.39
BeaconState.hashTreeRoot - No change 557.00 ns/op 433.00 ns/op 1.29
BeaconState.hashTreeRoot - 1 full validator 211.31 us/op 111.85 us/op 1.89
BeaconState.hashTreeRoot - 32 full validator 1.9495 ms/op 1.1559 ms/op 1.69
BeaconState.hashTreeRoot - 512 full validator 14.975 ms/op 9.0742 ms/op 1.65
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 194.37 us/op 119.37 us/op 1.63
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.9255 ms/op 1.8957 ms/op 1.54
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 27.415 ms/op 22.872 ms/op 1.20
BeaconState.hashTreeRoot - 1 balances 103.85 us/op 107.81 us/op 0.96
BeaconState.hashTreeRoot - 32 balances 1.3083 ms/op 1.0188 ms/op 1.28
BeaconState.hashTreeRoot - 512 balances 7.9462 ms/op 6.6326 ms/op 1.20
BeaconState.hashTreeRoot - 250000 balances 209.23 ms/op 149.20 ms/op 1.40
aggregationBits - 2048 els - zipIndexesInBitList 22.645 us/op 44.387 us/op 0.51
byteArrayEquals 32 46.445 ns/op 48.995 ns/op 0.95
Buffer.compare 32 15.826 ns/op 15.863 ns/op 1.00
byteArrayEquals 1024 1.2838 us/op 1.2943 us/op 0.99
Buffer.compare 1024 23.450 ns/op 24.342 ns/op 0.96
byteArrayEquals 16384 20.328 us/op 20.492 us/op 0.99
Buffer.compare 16384 183.19 ns/op 211.94 ns/op 0.86
byteArrayEquals 123687377 153.69 ms/op 151.11 ms/op 1.02
Buffer.compare 123687377 5.6385 ms/op 5.4824 ms/op 1.03
byteArrayEquals 32 - diff last byte 47.396 ns/op 44.901 ns/op 1.06
Buffer.compare 32 - diff last byte 15.948 ns/op 15.056 ns/op 1.06
byteArrayEquals 1024 - diff last byte 1.2554 us/op 1.2103 us/op 1.04
Buffer.compare 1024 - diff last byte 24.460 ns/op 24.005 ns/op 1.02
byteArrayEquals 16384 - diff last byte 20.020 us/op 19.086 us/op 1.05
Buffer.compare 16384 - diff last byte 210.76 ns/op 193.78 ns/op 1.09
byteArrayEquals 123687377 - diff last byte 150.30 ms/op 149.48 ms/op 1.01
Buffer.compare 123687377 - diff last byte 4.1667 ms/op 3.7173 ms/op 1.12
byteArrayEquals 32 - random bytes 4.7940 ns/op 4.8390 ns/op 0.99
Buffer.compare 32 - random bytes 16.640 ns/op 16.581 ns/op 1.00
byteArrayEquals 1024 - random bytes 4.7800 ns/op 4.8860 ns/op 0.98
Buffer.compare 1024 - random bytes 16.421 ns/op 15.835 ns/op 1.04
byteArrayEquals 16384 - random bytes 4.7820 ns/op 4.8280 ns/op 0.99
Buffer.compare 16384 - random bytes 16.607 ns/op 16.472 ns/op 1.01
byteArrayEquals 123687377 - random bytes 7.5900 ns/op 7.7300 ns/op 0.98
Buffer.compare 123687377 - random bytes 20.110 ns/op 19.230 ns/op 1.05
regular array get 100000 times 30.622 us/op 30.671 us/op 1.00
wrappedArray get 100000 times 30.584 us/op 30.631 us/op 1.00
arrayWithProxy get 100000 times 9.5980 ms/op 9.0841 ms/op 1.06
ssz.Root.equals 43.272 ns/op 40.830 ns/op 1.06
byteArrayEquals 43.468 ns/op 39.044 ns/op 1.11
Buffer.compare 9.7630 ns/op 8.2280 ns/op 1.19
processSlot - 1 slots 11.339 us/op 15.216 us/op 0.75
processSlot - 32 slots 3.7240 ms/op 2.7862 ms/op 1.34
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 38.819 ms/op 41.041 ms/op 0.95
getCommitteeAssignments - req 1 vs - 250000 vc 1.7456 ms/op 1.7195 ms/op 1.02
getCommitteeAssignments - req 100 vs - 250000 vc 3.4480 ms/op 3.4603 ms/op 1.00
getCommitteeAssignments - req 1000 vs - 250000 vc 3.7259 ms/op 3.6948 ms/op 1.01
findModifiedValidators - 10000 modified validators 239.84 ms/op 223.07 ms/op 1.08
findModifiedValidators - 1000 modified validators 136.59 ms/op 139.22 ms/op 0.98
findModifiedValidators - 100 modified validators 141.60 ms/op 139.41 ms/op 1.02
findModifiedValidators - 10 modified validators 142.10 ms/op 142.44 ms/op 1.00
findModifiedValidators - 1 modified validators 121.90 ms/op 120.70 ms/op 1.01
findModifiedValidators - no difference 140.05 ms/op 142.71 ms/op 0.98
compare ViewDUs 2.9966 s/op 2.9467 s/op 1.02
compare each validator Uint8Array 1.0745 s/op 1.6494 s/op 0.65
compare ViewDU to Uint8Array 916.95 ms/op 730.18 ms/op 1.26
migrate state 1000000 validators, 24 modified, 0 new 685.67 ms/op 713.73 ms/op 0.96
migrate state 1000000 validators, 1700 modified, 1000 new 917.66 ms/op 963.65 ms/op 0.95
migrate state 1000000 validators, 3400 modified, 2000 new 1.1301 s/op 1.1693 s/op 0.97
migrate state 1500000 validators, 24 modified, 0 new 694.80 ms/op 709.21 ms/op 0.98
migrate state 1500000 validators, 1700 modified, 1000 new 828.19 ms/op 893.32 ms/op 0.93
migrate state 1500000 validators, 3400 modified, 2000 new 1.0165 s/op 1.0812 s/op 0.94
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.8700 ns/op 6.1700 ns/op 0.95
state getBlockRootAtSlot - 250000 vs - 7PWei 933.74 ns/op 611.33 ns/op 1.53
computeProposers - vc 250000 6.4009 ms/op 5.2258 ms/op 1.22
computeEpochShuffling - vc 250000 34.499 ms/op 33.809 ms/op 1.02
getNextSyncCommittee - vc 250000 110.46 ms/op 99.630 ms/op 1.11
computeSigningRoot for AttestationData 27.688 us/op 19.417 us/op 1.43
hash AttestationData serialized data then Buffer.toString(base64) 1.1470 us/op 1.1259 us/op 1.02
toHexString serialized data 723.44 ns/op 730.51 ns/op 0.99
Buffer.toString(base64) 117.82 ns/op 123.94 ns/op 0.95
nodejs block root to RootHex using toHex 104.76 ns/op 111.37 ns/op 0.94
nodejs block root to RootHex using toRootHex 70.418 ns/op 67.610 ns/op 1.04
browser block root to RootHex using the deprecated toHexString 192.78 ns/op 189.42 ns/op 1.02
browser block root to RootHex using toHex 161.77 ns/op 154.91 ns/op 1.04
browser block root to RootHex using toRootHex 148.64 ns/op 140.99 ns/op 1.05

by benchmarkbot/action

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.

1 participant