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: include peer id in batch download logs #7407

Merged
merged 2 commits into from
Jan 27, 2025

Conversation

nflaig
Copy link
Member

@nflaig nflaig commented Jan 27, 2025

Motivation

We've seen a lot of batch download errors when trying to sync a node from far back on devnet-5

Jan-27 16:07:08.044[sync]          verbose: Batch download error id=Finalized, startEpoch=97, status=Downloading - Missing blobSidecars for blockSlot=3104 with blobKzgCommitmentsLen=9 blobSidecars=6
Error: Missing blobSidecars for blockSlot=3104 with blobKzgCommitmentsLen=9 blobSidecars=6

but from the logs it's hard to tell which peer actually sent the invalid response and logs might get mixed up if we request data from multiple peers at the same time.

Description

Include peer id in batch download logs. I opted to only include short peer id (eg. peer=16...UNpy88) as this should be sufficient to see to which request it belongs and based on that determine the client.

@nflaig nflaig requested a review from a team as a code owner January 27, 2025 22:35
Copy link

codecov bot commented Jan 27, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 48.45%. Comparing base (cf23839) to head (37b17ac).
Report is 5 commits behind head on unstable.

Additional details and impacted files
@@             Coverage Diff              @@
##           unstable    #7407      +/-   ##
============================================
- Coverage     48.60%   48.45%   -0.16%     
============================================
  Files           603      602       -1     
  Lines         40523    40387     -136     
  Branches       2070     2069       -1     
============================================
- Hits          19698    19568     -130     
+ Misses        20787    20781       -6     
  Partials         38       38              

@wemeetagain wemeetagain merged commit ee9d4fa into unstable Jan 27, 2025
20 checks passed
@wemeetagain wemeetagain deleted the nflaig/enhance-batch-logs branch January 27, 2025 23:01
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 89f818a Previous: b2ad7b6 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.5426 ms/op 1.7044 ms/op 1.49
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 61.917 us/op 45.678 us/op 1.36
BLS verify - blst 1.1015 ms/op 783.58 us/op 1.41
BLS verifyMultipleSignatures 3 - blst 1.6785 ms/op 1.1768 ms/op 1.43
BLS verifyMultipleSignatures 8 - blst 2.3106 ms/op 1.7014 ms/op 1.36
BLS verifyMultipleSignatures 32 - blst 6.8219 ms/op 4.9938 ms/op 1.37
BLS verifyMultipleSignatures 64 - blst 13.531 ms/op 9.2865 ms/op 1.46
BLS verifyMultipleSignatures 128 - blst 21.150 ms/op 17.634 ms/op 1.20
BLS deserializing 10000 signatures 786.33 ms/op 686.73 ms/op 1.15
BLS deserializing 100000 signatures 7.9633 s/op 6.8902 s/op 1.16
BLS verifyMultipleSignatures - same message - 3 - blst 1.0052 ms/op 944.86 us/op 1.06
BLS verifyMultipleSignatures - same message - 8 - blst 1.1271 ms/op 1.0277 ms/op 1.10
BLS verifyMultipleSignatures - same message - 32 - blst 1.9728 ms/op 1.7607 ms/op 1.12
BLS verifyMultipleSignatures - same message - 64 - blst 3.0501 ms/op 2.6855 ms/op 1.14
BLS verifyMultipleSignatures - same message - 128 - blst 4.9635 ms/op 4.5013 ms/op 1.10
BLS aggregatePubkeys 32 - blst 22.649 us/op 20.236 us/op 1.12
BLS aggregatePubkeys 128 - blst 79.408 us/op 70.539 us/op 1.13
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 61.998 ms/op 80.548 ms/op 0.77
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 58.108 ms/op 84.816 ms/op 0.69
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 54.593 ms/op 45.890 ms/op 1.19
getSlashingsAndExits - default max 97.894 us/op 105.51 us/op 0.93
getSlashingsAndExits - 2k 402.82 us/op 401.45 us/op 1.00
proposeBlockBody type=full, size=empty 6.8258 ms/op 6.4743 ms/op 1.05
isKnown best case - 1 super set check 447.00 ns/op 477.00 ns/op 0.94
isKnown normal case - 2 super set checks 505.00 ns/op 511.00 ns/op 0.99
isKnown worse case - 16 super set checks 358.00 ns/op 545.00 ns/op 0.66
InMemoryCheckpointStateCache - add get delete 3.4310 us/op 3.5900 us/op 0.96
validate api signedAggregateAndProof - struct 1.5089 ms/op 1.5603 ms/op 0.97
validate gossip signedAggregateAndProof - struct 1.8224 ms/op 1.6508 ms/op 1.10
batch validate gossip attestation - vc 640000 - chunk 32 144.34 us/op 159.40 us/op 0.91
batch validate gossip attestation - vc 640000 - chunk 64 129.57 us/op 149.34 us/op 0.87
batch validate gossip attestation - vc 640000 - chunk 128 118.43 us/op 144.69 us/op 0.82
batch validate gossip attestation - vc 640000 - chunk 256 109.33 us/op 128.79 us/op 0.85
pickEth1Vote - no votes 1.0854 ms/op 1.3636 ms/op 0.80
pickEth1Vote - max votes 7.3574 ms/op 12.407 ms/op 0.59
pickEth1Vote - Eth1Data hashTreeRoot value x2048 12.144 ms/op 19.165 ms/op 0.63
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 21.724 ms/op 30.842 ms/op 0.70
pickEth1Vote - Eth1Data fastSerialize value x2048 495.68 us/op 700.87 us/op 0.71
pickEth1Vote - Eth1Data fastSerialize tree x2048 2.5659 ms/op 4.0372 ms/op 0.64
bytes32 toHexString 441.00 ns/op 742.00 ns/op 0.59
bytes32 Buffer.toString(hex) 249.00 ns/op 276.00 ns/op 0.90
bytes32 Buffer.toString(hex) from Uint8Array 376.00 ns/op 496.00 ns/op 0.76
bytes32 Buffer.toString(hex) + 0x 248.00 ns/op 272.00 ns/op 0.91
Object access 1 prop 0.13700 ns/op 0.19400 ns/op 0.71
Map access 1 prop 0.13800 ns/op 0.15100 ns/op 0.91
Object get x1000 5.9870 ns/op 8.0940 ns/op 0.74
Map get x1000 6.8620 ns/op 8.2940 ns/op 0.83
Object set x1000 33.250 ns/op 66.770 ns/op 0.50
Map set x1000 22.564 ns/op 48.828 ns/op 0.46
Return object 10000 times 0.29310 ns/op 0.38260 ns/op 0.77
Throw Error 10000 times 3.4716 us/op 3.7578 us/op 0.92
toHex 151.79 ns/op 209.72 ns/op 0.72
Buffer.from 133.66 ns/op 199.68 ns/op 0.67
shared Buffer 92.545 ns/op 117.04 ns/op 0.79
fastMsgIdFn sha256 / 200 bytes 2.2820 us/op 2.7700 us/op 0.82
fastMsgIdFn h32 xxhash / 200 bytes 240.00 ns/op 328.00 ns/op 0.73
fastMsgIdFn h64 xxhash / 200 bytes 276.00 ns/op 310.00 ns/op 0.89
fastMsgIdFn sha256 / 1000 bytes 7.8800 us/op 9.1630 us/op 0.86
fastMsgIdFn h32 xxhash / 1000 bytes 393.00 ns/op 528.00 ns/op 0.74
fastMsgIdFn h64 xxhash / 1000 bytes 346.00 ns/op 434.00 ns/op 0.80
fastMsgIdFn sha256 / 10000 bytes 66.982 us/op 73.783 us/op 0.91
fastMsgIdFn h32 xxhash / 10000 bytes 1.8930 us/op 2.0720 us/op 0.91
fastMsgIdFn h64 xxhash / 10000 bytes 1.2270 us/op 1.4320 us/op 0.86
send data - 1000 256B messages 13.267 ms/op 18.333 ms/op 0.72
send data - 1000 512B messages 20.219 ms/op 26.415 ms/op 0.77
send data - 1000 1024B messages 29.025 ms/op 35.377 ms/op 0.82
send data - 1000 1200B messages 25.323 ms/op 38.364 ms/op 0.66
send data - 1000 2048B messages 31.823 ms/op 41.263 ms/op 0.77
send data - 1000 4096B messages 31.818 ms/op 37.749 ms/op 0.84
send data - 1000 16384B messages 77.015 ms/op 87.842 ms/op 0.88
send data - 1000 65536B messages 218.62 ms/op 513.69 ms/op 0.43
enrSubnets - fastDeserialize 64 bits 1.2670 us/op 2.3310 us/op 0.54
enrSubnets - ssz BitVector 64 bits 422.00 ns/op 738.00 ns/op 0.57
enrSubnets - fastDeserialize 4 bits 194.00 ns/op 247.00 ns/op 0.79
enrSubnets - ssz BitVector 4 bits 474.00 ns/op 523.00 ns/op 0.91
prioritizePeers score -10:0 att 32-0.1 sync 2-0 175.65 us/op 208.87 us/op 0.84
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 241.69 us/op 295.45 us/op 0.82
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 370.87 us/op 428.44 us/op 0.87
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 551.86 us/op 591.84 us/op 0.93
prioritizePeers score 0:0 att 64-1 sync 4-1 674.53 us/op 750.77 us/op 0.90
array of 16000 items push then shift 1.7833 us/op 1.7707 us/op 1.01
LinkedList of 16000 items push then shift 8.7660 ns/op 11.401 ns/op 0.77
array of 16000 items push then pop 125.20 ns/op 140.86 ns/op 0.89
LinkedList of 16000 items push then pop 7.2610 ns/op 8.6030 ns/op 0.84
array of 24000 items push then shift 2.5071 us/op 2.8295 us/op 0.89
LinkedList of 24000 items push then shift 7.9510 ns/op 8.5460 ns/op 0.93
array of 24000 items push then pop 144.00 ns/op 183.95 ns/op 0.78
LinkedList of 24000 items push then pop 7.5670 ns/op 9.1950 ns/op 0.82
intersect bitArray bitLen 8 6.9910 ns/op 6.9290 ns/op 1.01
intersect array and set length 8 49.710 ns/op 69.763 ns/op 0.71
intersect bitArray bitLen 128 32.037 ns/op 33.586 ns/op 0.95
intersect array and set length 128 748.90 ns/op 875.66 ns/op 0.86
bitArray.getTrueBitIndexes() bitLen 128 1.7120 us/op 1.6140 us/op 1.06
bitArray.getTrueBitIndexes() bitLen 248 2.9020 us/op 2.8070 us/op 1.03
bitArray.getTrueBitIndexes() bitLen 512 5.5150 us/op 6.1820 us/op 0.89
Buffer.concat 32 items 892.00 ns/op 928.00 ns/op 0.96
Uint8Array.set 32 items 1.9890 us/op 1.9010 us/op 1.05
Buffer.copy 3.2050 us/op 2.9010 us/op 1.10
Uint8Array.set - with subarray 3.3010 us/op 2.7480 us/op 1.20
Uint8Array.set - without subarray 1.9200 us/op 1.5450 us/op 1.24
getUint32 - dataview 295.00 ns/op 291.00 ns/op 1.01
getUint32 - manual 216.00 ns/op 230.00 ns/op 0.94
Set add up to 64 items then delete first 2.5871 us/op 2.7689 us/op 0.93
OrderedSet add up to 64 items then delete first 3.4006 us/op 4.3787 us/op 0.78
Set add up to 64 items then delete last 2.7764 us/op 3.0934 us/op 0.90
OrderedSet add up to 64 items then delete last 4.6410 us/op 4.4845 us/op 1.03
Set add up to 64 items then delete middle 3.1291 us/op 3.0791 us/op 1.02
OrderedSet add up to 64 items then delete middle 5.6675 us/op 6.3969 us/op 0.89
Set add up to 128 items then delete first 5.1068 us/op 6.3473 us/op 0.80
OrderedSet add up to 128 items then delete first 7.5735 us/op 9.6814 us/op 0.78
Set add up to 128 items then delete last 5.1117 us/op 6.1672 us/op 0.83
OrderedSet add up to 128 items then delete last 8.2935 us/op 9.2576 us/op 0.90
Set add up to 128 items then delete middle 5.1110 us/op 6.2046 us/op 0.82
OrderedSet add up to 128 items then delete middle 14.498 us/op 16.142 us/op 0.90
Set add up to 256 items then delete first 11.008 us/op 13.403 us/op 0.82
OrderedSet add up to 256 items then delete first 16.189 us/op 20.457 us/op 0.79
Set add up to 256 items then delete last 11.046 us/op 11.807 us/op 0.94
OrderedSet add up to 256 items then delete last 17.670 us/op 19.111 us/op 0.92
Set add up to 256 items then delete middle 10.979 us/op 11.983 us/op 0.92
OrderedSet add up to 256 items then delete middle 45.432 us/op 47.951 us/op 0.95
transfer serialized Status (84 B) 3.1190 us/op 2.9950 us/op 1.04
copy serialized Status (84 B) 1.6050 us/op 1.5650 us/op 1.03
transfer serialized SignedVoluntaryExit (112 B) 3.0640 us/op 3.0000 us/op 1.02
copy serialized SignedVoluntaryExit (112 B) 1.7040 us/op 1.7850 us/op 0.95
transfer serialized ProposerSlashing (416 B) 3.3300 us/op 3.2860 us/op 1.01
copy serialized ProposerSlashing (416 B) 2.1990 us/op 2.0120 us/op 1.09
transfer serialized Attestation (485 B) 3.3780 us/op 3.2260 us/op 1.05
copy serialized Attestation (485 B) 2.1540 us/op 2.0210 us/op 1.07
transfer serialized AttesterSlashing (33232 B) 3.3600 us/op 3.1160 us/op 1.08
copy serialized AttesterSlashing (33232 B) 5.9300 us/op 8.9430 us/op 0.66
transfer serialized Small SignedBeaconBlock (128000 B) 4.6910 us/op 3.5820 us/op 1.31
copy serialized Small SignedBeaconBlock (128000 B) 15.700 us/op 21.926 us/op 0.72
transfer serialized Avg SignedBeaconBlock (200000 B) 5.1590 us/op 4.5880 us/op 1.12
copy serialized Avg SignedBeaconBlock (200000 B) 23.368 us/op 39.773 us/op 0.59
transfer serialized BlobsSidecar (524380 B) 4.8770 us/op 4.2600 us/op 1.14
copy serialized BlobsSidecar (524380 B) 192.48 us/op 94.240 us/op 2.04
transfer serialized Big SignedBeaconBlock (1000000 B) 5.1150 us/op 5.6530 us/op 0.90
copy serialized Big SignedBeaconBlock (1000000 B) 157.77 us/op 193.41 us/op 0.82
pass gossip attestations to forkchoice per slot 2.8536 ms/op 2.8932 ms/op 0.99
forkChoice updateHead vc 100000 bc 64 eq 0 473.73 us/op 506.25 us/op 0.94
forkChoice updateHead vc 600000 bc 64 eq 0 2.9790 ms/op 3.3379 ms/op 0.89
forkChoice updateHead vc 1000000 bc 64 eq 0 4.9893 ms/op 5.8764 ms/op 0.85
forkChoice updateHead vc 600000 bc 320 eq 0 2.9142 ms/op 3.2290 ms/op 0.90
forkChoice updateHead vc 600000 bc 1200 eq 0 2.9896 ms/op 3.7355 ms/op 0.80
forkChoice updateHead vc 600000 bc 7200 eq 0 4.2169 ms/op 3.8104 ms/op 1.11
forkChoice updateHead vc 600000 bc 64 eq 1000 10.621 ms/op 10.736 ms/op 0.99
forkChoice updateHead vc 600000 bc 64 eq 10000 10.655 ms/op 10.733 ms/op 0.99
forkChoice updateHead vc 600000 bc 64 eq 300000 14.019 ms/op 20.104 ms/op 0.70
computeDeltas 500000 validators 300 proto nodes 4.0642 ms/op 4.3855 ms/op 0.93
computeDeltas 500000 validators 1200 proto nodes 4.1646 ms/op 4.4343 ms/op 0.94
computeDeltas 500000 validators 7200 proto nodes 4.1353 ms/op 4.9663 ms/op 0.83
computeDeltas 750000 validators 300 proto nodes 6.4277 ms/op 7.3334 ms/op 0.88
computeDeltas 750000 validators 1200 proto nodes 6.5409 ms/op 8.5945 ms/op 0.76
computeDeltas 750000 validators 7200 proto nodes 7.2213 ms/op 7.8470 ms/op 0.92
computeDeltas 1400000 validators 300 proto nodes 13.084 ms/op 14.845 ms/op 0.88
computeDeltas 1400000 validators 1200 proto nodes 13.961 ms/op 16.858 ms/op 0.83
computeDeltas 1400000 validators 7200 proto nodes 13.251 ms/op 16.972 ms/op 0.78
computeDeltas 2100000 validators 300 proto nodes 20.930 ms/op 22.694 ms/op 0.92
computeDeltas 2100000 validators 1200 proto nodes 20.699 ms/op 20.154 ms/op 1.03
computeDeltas 2100000 validators 7200 proto nodes 20.053 ms/op 20.975 ms/op 0.96
altair processAttestation - 250000 vs - 7PWei normalcase 2.7113 ms/op 3.1060 ms/op 0.87
altair processAttestation - 250000 vs - 7PWei worstcase 3.2863 ms/op 4.1262 ms/op 0.80
altair processAttestation - setStatus - 1/6 committees join 142.64 us/op 149.84 us/op 0.95
altair processAttestation - setStatus - 1/3 committees join 272.99 us/op 258.46 us/op 1.06
altair processAttestation - setStatus - 1/2 committees join 381.01 us/op 374.86 us/op 1.02
altair processAttestation - setStatus - 2/3 committees join 509.18 us/op 482.26 us/op 1.06
altair processAttestation - setStatus - 4/5 committees join 740.59 us/op 627.13 us/op 1.18
altair processAttestation - setStatus - 100% committees join 852.90 us/op 744.76 us/op 1.15
altair processBlock - 250000 vs - 7PWei normalcase 5.1328 ms/op 6.6777 ms/op 0.77
altair processBlock - 250000 vs - 7PWei normalcase hashState 26.429 ms/op 29.067 ms/op 0.91
altair processBlock - 250000 vs - 7PWei worstcase 37.873 ms/op 39.805 ms/op 0.95
altair processBlock - 250000 vs - 7PWei worstcase hashState 83.729 ms/op 80.814 ms/op 1.04
phase0 processBlock - 250000 vs - 7PWei normalcase 2.4950 ms/op 2.2009 ms/op 1.13
phase0 processBlock - 250000 vs - 7PWei worstcase 25.464 ms/op 24.859 ms/op 1.02
altair processEth1Data - 250000 vs - 7PWei normalcase 411.08 us/op 573.14 us/op 0.72
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 5.3520 us/op 7.1320 us/op 0.75
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 34.457 us/op 46.233 us/op 0.75
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 8.7400 us/op 11.772 us/op 0.74
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 6.0930 us/op 7.7350 us/op 0.79
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 115.62 us/op 154.44 us/op 0.75
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.2536 ms/op 1.0515 ms/op 1.19
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.4492 ms/op 1.3519 ms/op 1.07
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.7803 ms/op 1.2891 ms/op 1.38
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.6653 ms/op 3.6058 ms/op 1.02
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.7668 ms/op 1.4141 ms/op 1.25
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.8041 ms/op 3.7170 ms/op 1.02
Tree 40 250000 create 474.12 ms/op 520.86 ms/op 0.91
Tree 40 250000 get(125000) 164.35 ns/op 166.90 ns/op 0.98
Tree 40 250000 set(125000) 1.6202 us/op 1.8721 us/op 0.87
Tree 40 250000 toArray() 19.309 ms/op 21.644 ms/op 0.89
Tree 40 250000 iterate all - toArray() + loop 18.443 ms/op 23.163 ms/op 0.80
Tree 40 250000 iterate all - get(i) 58.987 ms/op 59.758 ms/op 0.99
Array 250000 create 3.4279 ms/op 4.2392 ms/op 0.81
Array 250000 clone - spread 1.6407 ms/op 1.3664 ms/op 1.20
Array 250000 get(125000) 0.45600 ns/op 0.42200 ns/op 1.08
Array 250000 set(125000) 0.47700 ns/op 0.43700 ns/op 1.09
Array 250000 iterate all - loop 111.52 us/op 106.50 us/op 1.05
phase0 afterProcessEpoch - 250000 vs - 7PWei 56.690 ms/op 51.313 ms/op 1.10
Array.fill - length 1000000 3.8755 ms/op 3.4166 ms/op 1.13
Array push - length 1000000 18.690 ms/op 18.044 ms/op 1.04
Array.get 0.32077 ns/op 0.28928 ns/op 1.11
Uint8Array.get 0.50224 ns/op 0.44115 ns/op 1.14
phase0 beforeProcessEpoch - 250000 vs - 7PWei 19.057 ms/op 18.841 ms/op 1.01
altair processEpoch - mainnet_e81889 351.91 ms/op 301.47 ms/op 1.17
mainnet_e81889 - altair beforeProcessEpoch 21.968 ms/op 19.613 ms/op 1.12
mainnet_e81889 - altair processJustificationAndFinalization 20.377 us/op 21.092 us/op 0.97
mainnet_e81889 - altair processInactivityUpdates 6.7654 ms/op 6.6522 ms/op 1.02
mainnet_e81889 - altair processRewardsAndPenalties 50.197 ms/op 41.366 ms/op 1.21
mainnet_e81889 - altair processRegistryUpdates 4.5930 us/op 3.7810 us/op 1.21
mainnet_e81889 - altair processSlashings 664.00 ns/op 487.00 ns/op 1.36
mainnet_e81889 - altair processEth1DataReset 698.00 ns/op 714.00 ns/op 0.98
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.8412 ms/op 1.4510 ms/op 1.27
mainnet_e81889 - altair processSlashingsReset 7.7920 us/op 4.4370 us/op 1.76
mainnet_e81889 - altair processRandaoMixesReset 7.3090 us/op 5.4240 us/op 1.35
mainnet_e81889 - altair processHistoricalRootsUpdate 826.00 ns/op 1.2500 us/op 0.66
mainnet_e81889 - altair processParticipationFlagUpdates 2.4690 us/op 3.0620 us/op 0.81
mainnet_e81889 - altair processSyncCommitteeUpdates 759.00 ns/op 1.1790 us/op 0.64
mainnet_e81889 - altair afterProcessEpoch 60.116 ms/op 53.216 ms/op 1.13
capella processEpoch - mainnet_e217614 1.2113 s/op 1.1369 s/op 1.07
mainnet_e217614 - capella beforeProcessEpoch 73.085 ms/op 69.379 ms/op 1.05
mainnet_e217614 - capella processJustificationAndFinalization 15.076 us/op 15.281 us/op 0.99
mainnet_e217614 - capella processInactivityUpdates 17.771 ms/op 16.530 ms/op 1.08
mainnet_e217614 - capella processRewardsAndPenalties 261.78 ms/op 237.51 ms/op 1.10
mainnet_e217614 - capella processRegistryUpdates 12.585 us/op 15.611 us/op 0.81
mainnet_e217614 - capella processSlashings 636.00 ns/op 577.00 ns/op 1.10
mainnet_e217614 - capella processEth1DataReset 455.00 ns/op 564.00 ns/op 0.81
mainnet_e217614 - capella processEffectiveBalanceUpdates 15.373 ms/op 15.375 ms/op 1.00
mainnet_e217614 - capella processSlashingsReset 3.3670 us/op 5.9260 us/op 0.57
mainnet_e217614 - capella processRandaoMixesReset 4.6210 us/op 5.7780 us/op 0.80
mainnet_e217614 - capella processHistoricalRootsUpdate 1.0850 us/op 625.00 ns/op 1.74
mainnet_e217614 - capella processParticipationFlagUpdates 2.3040 us/op 2.9550 us/op 0.78
mainnet_e217614 - capella afterProcessEpoch 137.01 ms/op 124.06 ms/op 1.10
phase0 processEpoch - mainnet_e58758 357.40 ms/op 367.86 ms/op 0.97
mainnet_e58758 - phase0 beforeProcessEpoch 99.520 ms/op 83.566 ms/op 1.19
mainnet_e58758 - phase0 processJustificationAndFinalization 16.232 us/op 18.444 us/op 0.88
mainnet_e58758 - phase0 processRewardsAndPenalties 34.951 ms/op 28.730 ms/op 1.22
mainnet_e58758 - phase0 processRegistryUpdates 7.4830 us/op 8.8560 us/op 0.84
mainnet_e58758 - phase0 processSlashings 556.00 ns/op 724.00 ns/op 0.77
mainnet_e58758 - phase0 processEth1DataReset 413.00 ns/op 421.00 ns/op 0.98
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.4779 ms/op 1.1832 ms/op 1.25
mainnet_e58758 - phase0 processSlashingsReset 2.8420 us/op 3.7550 us/op 0.76
mainnet_e58758 - phase0 processRandaoMixesReset 4.5040 us/op 5.5220 us/op 0.82
mainnet_e58758 - phase0 processHistoricalRootsUpdate 393.00 ns/op 408.00 ns/op 0.96
mainnet_e58758 - phase0 processParticipationRecordUpdates 3.7290 us/op 3.6360 us/op 1.03
mainnet_e58758 - phase0 afterProcessEpoch 48.049 ms/op 44.576 ms/op 1.08
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.7012 ms/op 1.3458 ms/op 1.26
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.9974 ms/op 1.8518 ms/op 1.62
altair processInactivityUpdates - 250000 normalcase 18.741 ms/op 15.625 ms/op 1.20
altair processInactivityUpdates - 250000 worstcase 19.326 ms/op 17.728 ms/op 1.09
phase0 processRegistryUpdates - 250000 normalcase 5.9280 us/op 6.2450 us/op 0.95
phase0 processRegistryUpdates - 250000 badcase_full_deposits 324.95 us/op 258.42 us/op 1.26
phase0 processRegistryUpdates - 250000 worstcase 0.5 121.06 ms/op 114.12 ms/op 1.06
altair processRewardsAndPenalties - 250000 normalcase 50.237 ms/op 38.619 ms/op 1.30
altair processRewardsAndPenalties - 250000 worstcase 47.972 ms/op 40.236 ms/op 1.19
phase0 getAttestationDeltas - 250000 normalcase 7.3627 ms/op 7.0186 ms/op 1.05
phase0 getAttestationDeltas - 250000 worstcase 7.9124 ms/op 7.0562 ms/op 1.12
phase0 processSlashings - 250000 worstcase 91.363 us/op 106.15 us/op 0.86
altair processSyncCommitteeUpdates - 250000 130.37 ms/op 128.78 ms/op 1.01
BeaconState.hashTreeRoot - No change 241.00 ns/op 249.00 ns/op 0.97
BeaconState.hashTreeRoot - 1 full validator 93.559 us/op 113.39 us/op 0.83
BeaconState.hashTreeRoot - 32 full validator 1.2216 ms/op 1.0097 ms/op 1.21
BeaconState.hashTreeRoot - 512 full validator 11.447 ms/op 9.2470 ms/op 1.24
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 140.21 us/op 105.87 us/op 1.32
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.7264 ms/op 1.6516 ms/op 1.05
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 22.312 ms/op 20.020 ms/op 1.11
BeaconState.hashTreeRoot - 1 balances 81.640 us/op 84.429 us/op 0.97
BeaconState.hashTreeRoot - 32 balances 948.70 us/op 766.20 us/op 1.24
BeaconState.hashTreeRoot - 512 balances 9.1075 ms/op 6.5870 ms/op 1.38
BeaconState.hashTreeRoot - 250000 balances 154.48 ms/op 126.35 ms/op 1.22
aggregationBits - 2048 els - zipIndexesInBitList 27.176 us/op 24.295 us/op 1.12
byteArrayEquals 32 56.863 ns/op 53.049 ns/op 1.07
Buffer.compare 32 17.800 ns/op 17.028 ns/op 1.05
byteArrayEquals 1024 1.6689 us/op 1.5782 us/op 1.06
Buffer.compare 1024 25.364 ns/op 25.409 ns/op 1.00
byteArrayEquals 16384 26.431 us/op 25.182 us/op 1.05
Buffer.compare 16384 202.49 ns/op 196.57 ns/op 1.03
byteArrayEquals 123687377 204.63 ms/op 191.60 ms/op 1.07
Buffer.compare 123687377 8.8364 ms/op 8.9661 ms/op 0.99
byteArrayEquals 32 - diff last byte 61.172 ns/op 54.428 ns/op 1.12
Buffer.compare 32 - diff last byte 21.269 ns/op 17.589 ns/op 1.21
byteArrayEquals 1024 - diff last byte 1.8559 us/op 1.6091 us/op 1.15
Buffer.compare 1024 - diff last byte 29.586 ns/op 26.411 ns/op 1.12
byteArrayEquals 16384 - diff last byte 29.161 us/op 25.600 us/op 1.14
Buffer.compare 16384 - diff last byte 224.66 ns/op 180.69 ns/op 1.24
byteArrayEquals 123687377 - diff last byte 218.12 ms/op 194.26 ms/op 1.12
Buffer.compare 123687377 - diff last byte 9.3540 ms/op 9.6782 ms/op 0.97
byteArrayEquals 32 - random bytes 5.9490 ns/op 5.3290 ns/op 1.12
Buffer.compare 32 - random bytes 20.538 ns/op 17.637 ns/op 1.16
byteArrayEquals 1024 - random bytes 5.7970 ns/op 5.3570 ns/op 1.08
Buffer.compare 1024 - random bytes 21.311 ns/op 17.660 ns/op 1.21
byteArrayEquals 16384 - random bytes 6.5130 ns/op 5.3620 ns/op 1.21
Buffer.compare 16384 - random bytes 24.759 ns/op 17.691 ns/op 1.40
byteArrayEquals 123687377 - random bytes 7.9300 ns/op 6.9400 ns/op 1.14
Buffer.compare 123687377 - random bytes 23.600 ns/op 19.960 ns/op 1.18
regular array get 100000 times 38.955 us/op 34.213 us/op 1.14
wrappedArray get 100000 times 36.926 us/op 34.104 us/op 1.08
arrayWithProxy get 100000 times 14.153 ms/op 13.109 ms/op 1.08
ssz.Root.equals 49.799 ns/op 49.095 ns/op 1.01
byteArrayEquals 50.814 ns/op 45.995 ns/op 1.10
Buffer.compare 11.539 ns/op 11.040 ns/op 1.05
processSlot - 1 slots 16.626 us/op 14.957 us/op 1.11
processSlot - 32 slots 4.2994 ms/op 3.0105 ms/op 1.43
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 39.807 ms/op 37.860 ms/op 1.05
getCommitteeAssignments - req 1 vs - 250000 vc 2.4719 ms/op 2.1521 ms/op 1.15
getCommitteeAssignments - req 100 vs - 250000 vc 4.7084 ms/op 4.1729 ms/op 1.13
getCommitteeAssignments - req 1000 vs - 250000 vc 4.9795 ms/op 4.4389 ms/op 1.12
findModifiedValidators - 10000 modified validators 271.17 ms/op 351.06 ms/op 0.77
findModifiedValidators - 1000 modified validators 188.91 ms/op 212.28 ms/op 0.89
findModifiedValidators - 100 modified validators 188.87 ms/op 196.85 ms/op 0.96
findModifiedValidators - 10 modified validators 198.26 ms/op 303.32 ms/op 0.65
findModifiedValidators - 1 modified validators 205.12 ms/op 211.06 ms/op 0.97
findModifiedValidators - no difference 193.87 ms/op 214.11 ms/op 0.91
compare ViewDUs 3.4819 s/op 3.7053 s/op 0.94
compare each validator Uint8Array 1.6145 s/op 1.7689 s/op 0.91
compare ViewDU to Uint8Array 1.0895 s/op 1.1796 s/op 0.92
migrate state 1000000 validators, 24 modified, 0 new 775.06 ms/op 784.89 ms/op 0.99
migrate state 1000000 validators, 1700 modified, 1000 new 1.0531 s/op 1.0524 s/op 1.00
migrate state 1000000 validators, 3400 modified, 2000 new 1.2343 s/op 1.3370 s/op 0.92
migrate state 1500000 validators, 24 modified, 0 new 796.64 ms/op 871.15 ms/op 0.91
migrate state 1500000 validators, 1700 modified, 1000 new 1.0242 s/op 1.0427 s/op 0.98
migrate state 1500000 validators, 3400 modified, 2000 new 1.2588 s/op 1.1972 s/op 1.05
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.5100 ns/op 4.7800 ns/op 0.94
state getBlockRootAtSlot - 250000 vs - 7PWei 690.45 ns/op 818.54 ns/op 0.84
computeProposers - vc 250000 7.4268 ms/op 7.9013 ms/op 0.94
computeEpochShuffling - vc 250000 42.025 ms/op 42.847 ms/op 0.98
getNextSyncCommittee - vc 250000 126.97 ms/op 131.96 ms/op 0.96
computeSigningRoot for AttestationData 24.813 us/op 22.502 us/op 1.10
hash AttestationData serialized data then Buffer.toString(base64) 1.5950 us/op 1.6176 us/op 0.99
toHexString serialized data 889.16 ns/op 891.86 ns/op 1.00
Buffer.toString(base64) 183.72 ns/op 184.52 ns/op 1.00
nodejs block root to RootHex using toHex 163.47 ns/op 147.70 ns/op 1.11
nodejs block root to RootHex using toRootHex 90.299 ns/op 92.831 ns/op 0.97
browser block root to RootHex using the deprecated toHexString 245.57 ns/op 229.32 ns/op 1.07
browser block root to RootHex using toHex 186.41 ns/op 181.35 ns/op 1.03
browser block root to RootHex using toRootHex 164.55 ns/op 163.00 ns/op 1.01

by benchmarkbot/action

Copy link
Contributor

@g11tech g11tech left a comment

Choose a reason for hiding this comment

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

lgtm post mere

@wemeetagain
Copy link
Member

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

4 participants