Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: exclude empty requests in execution requests list #7196

Open
wants to merge 4 commits into
base: devnet-5
Choose a base branch
from

Conversation

ensi321
Copy link
Contributor

@ensi321 ensi321 commented Oct 25, 2024

Copy link

codecov bot commented Oct 25, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 48.51%. Comparing base (64eb015) to head (fca6771).

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #7196   +/-   ##
=========================================
  Coverage     48.51%   48.51%           
=========================================
  Files           600      600           
  Lines         40138    40138           
  Branches       2058     2058           
=========================================
  Hits          19471    19471           
  Misses        20629    20629           
  Partials         38       38           

Copy link
Contributor

github-actions bot commented Oct 25, 2024

Performance Report

✔️ no performance regression detected

🚀🚀 Significant benchmark improvement detected

Benchmark suite Current: 280b5f2 Previous: 64eb015 Ratio
forkChoice updateHead vc 100000 bc 64 eq 0 365.10 us/op 1.2806 ms/op 0.29
forkChoice updateHead vc 600000 bc 64 eq 300000 11.717 ms/op 37.084 ms/op 0.32
Full benchmark results
Benchmark suite Current: 280b5f2 Previous: 64eb015 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 2.2004 ms/op 2.1753 ms/op 1.01
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 58.145 us/op 67.606 us/op 0.86
BLS verify - blst 922.37 us/op 916.60 us/op 1.01
BLS verifyMultipleSignatures 3 - blst 1.4068 ms/op 1.3247 ms/op 1.06
BLS verifyMultipleSignatures 8 - blst 2.1298 ms/op 1.9759 ms/op 1.08
BLS verifyMultipleSignatures 32 - blst 4.5300 ms/op 7.0878 ms/op 0.64
BLS verifyMultipleSignatures 64 - blst 8.5062 ms/op 10.320 ms/op 0.82
BLS verifyMultipleSignatures 128 - blst 16.220 ms/op 20.134 ms/op 0.81
BLS deserializing 10000 signatures 617.46 ms/op 769.00 ms/op 0.80
BLS deserializing 100000 signatures 6.4089 s/op 7.4681 s/op 0.86
BLS verifyMultipleSignatures - same message - 3 - blst 902.02 us/op 960.70 us/op 0.94
BLS verifyMultipleSignatures - same message - 8 - blst 1.1088 ms/op 1.0181 ms/op 1.09
BLS verifyMultipleSignatures - same message - 32 - blst 1.6526 ms/op 1.7953 ms/op 0.92
BLS verifyMultipleSignatures - same message - 64 - blst 2.4779 ms/op 2.6869 ms/op 0.92
BLS verifyMultipleSignatures - same message - 128 - blst 4.1488 ms/op 4.5014 ms/op 0.92
BLS aggregatePubkeys 32 - blst 19.050 us/op 20.827 us/op 0.91
BLS aggregatePubkeys 128 - blst 63.905 us/op 73.689 us/op 0.87
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 63.648 ms/op 62.278 ms/op 1.02
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 52.900 ms/op 58.530 ms/op 0.90
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 45.637 ms/op 44.326 ms/op 1.03
getSlashingsAndExits - default max 105.95 us/op 116.01 us/op 0.91
getSlashingsAndExits - 2k 366.09 us/op 359.07 us/op 1.02
proposeBlockBody type=full, size=empty 5.9362 ms/op 7.7504 ms/op 0.77
isKnown best case - 1 super set check 720.00 ns/op 526.00 ns/op 1.37
isKnown normal case - 2 super set checks 738.00 ns/op 569.00 ns/op 1.30
isKnown worse case - 16 super set checks 758.00 ns/op 530.00 ns/op 1.43
InMemoryCheckpointStateCache - add get delete 2.9440 us/op 3.5200 us/op 0.84
validate api signedAggregateAndProof - struct 1.5115 ms/op 1.6175 ms/op 0.93
validate gossip signedAggregateAndProof - struct 1.6358 ms/op 1.7813 ms/op 0.92
batch validate gossip attestation - vc 640000 - chunk 32 132.57 us/op 151.31 us/op 0.88
batch validate gossip attestation - vc 640000 - chunk 64 111.75 us/op 140.22 us/op 0.80
batch validate gossip attestation - vc 640000 - chunk 128 98.645 us/op 140.54 us/op 0.70
batch validate gossip attestation - vc 640000 - chunk 256 102.05 us/op 147.98 us/op 0.69
pickEth1Vote - no votes 842.15 us/op 1.5844 ms/op 0.53
pickEth1Vote - max votes 4.8107 ms/op 11.358 ms/op 0.42
pickEth1Vote - Eth1Data hashTreeRoot value x2048 18.726 ms/op 21.088 ms/op 0.89
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 18.719 ms/op 33.431 ms/op 0.56
pickEth1Vote - Eth1Data fastSerialize value x2048 330.03 us/op 649.48 us/op 0.51
pickEth1Vote - Eth1Data fastSerialize tree x2048 2.8976 ms/op 4.4810 ms/op 0.65
bytes32 toHexString 588.00 ns/op 854.00 ns/op 0.69
bytes32 Buffer.toString(hex) 441.00 ns/op 315.00 ns/op 1.40
bytes32 Buffer.toString(hex) from Uint8Array 524.00 ns/op 524.00 ns/op 1.00
bytes32 Buffer.toString(hex) + 0x 432.00 ns/op 293.00 ns/op 1.47
Object access 1 prop 0.31700 ns/op 0.20700 ns/op 1.53
Map access 1 prop 0.31700 ns/op 0.16100 ns/op 1.97
Object get x1000 5.0390 ns/op 6.7870 ns/op 0.74
Map get x1000 5.7000 ns/op 7.1870 ns/op 0.79
Object set x1000 25.869 ns/op 63.311 ns/op 0.41
Map set x1000 18.640 ns/op 41.228 ns/op 0.45
Return object 10000 times 0.29410 ns/op 0.33950 ns/op 0.87
Throw Error 10000 times 2.6287 us/op 3.9370 us/op 0.67
toHex 110.56 ns/op 202.49 ns/op 0.55
Buffer.from 103.83 ns/op 192.31 ns/op 0.54
shared Buffer 70.734 ns/op 109.24 ns/op 0.65
fastMsgIdFn sha256 / 200 bytes 1.9260 us/op 2.6760 us/op 0.72
fastMsgIdFn h32 xxhash / 200 bytes 405.00 ns/op 343.00 ns/op 1.18
fastMsgIdFn h64 xxhash / 200 bytes 446.00 ns/op 308.00 ns/op 1.45
fastMsgIdFn sha256 / 1000 bytes 5.8810 us/op 8.5350 us/op 0.69
fastMsgIdFn h32 xxhash / 1000 bytes 521.00 ns/op 523.00 ns/op 1.00
fastMsgIdFn h64 xxhash / 1000 bytes 514.00 ns/op 404.00 ns/op 1.27
fastMsgIdFn sha256 / 10000 bytes 48.618 us/op 70.815 us/op 0.69
fastMsgIdFn h32 xxhash / 10000 bytes 1.8830 us/op 2.1020 us/op 0.90
fastMsgIdFn h64 xxhash / 10000 bytes 1.3190 us/op 1.3850 us/op 0.95
send data - 1000 256B messages 9.6113 ms/op 17.917 ms/op 0.54
send data - 1000 512B messages 12.625 ms/op 24.837 ms/op 0.51
send data - 1000 1024B messages 20.578 ms/op 33.736 ms/op 0.61
send data - 1000 1200B messages 23.214 ms/op 37.078 ms/op 0.63
send data - 1000 2048B messages 28.929 ms/op 46.960 ms/op 0.62
send data - 1000 4096B messages 25.415 ms/op 51.288 ms/op 0.50
send data - 1000 16384B messages 65.756 ms/op 99.623 ms/op 0.66
send data - 1000 65536B messages 243.78 ms/op 290.72 ms/op 0.84
enrSubnets - fastDeserialize 64 bits 1.1540 us/op 1.7720 us/op 0.65
enrSubnets - ssz BitVector 64 bits 524.00 ns/op 572.00 ns/op 0.92
enrSubnets - fastDeserialize 4 bits 331.00 ns/op 254.00 ns/op 1.30
enrSubnets - ssz BitVector 4 bits 537.00 ns/op 527.00 ns/op 1.02
prioritizePeers score -10:0 att 32-0.1 sync 2-0 144.99 us/op 280.98 us/op 0.52
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 143.16 us/op 314.94 us/op 0.45
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 284.15 us/op 602.91 us/op 0.47
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 548.11 us/op 615.13 us/op 0.89
prioritizePeers score 0:0 att 64-1 sync 4-1 611.54 us/op 1.2699 ms/op 0.48
array of 16000 items push then shift 1.2501 us/op 1.9536 us/op 0.64
LinkedList of 16000 items push then shift 6.5950 ns/op 15.730 ns/op 0.42
array of 16000 items push then pop 82.887 ns/op 229.66 ns/op 0.36
LinkedList of 16000 items push then pop 6.2510 ns/op 12.659 ns/op 0.49
array of 24000 items push then shift 1.9622 us/op 3.0235 us/op 0.65
LinkedList of 24000 items push then shift 6.3570 ns/op 11.867 ns/op 0.54
array of 24000 items push then pop 108.71 ns/op 236.21 ns/op 0.46
LinkedList of 24000 items push then pop 6.2960 ns/op 9.1910 ns/op 0.69
intersect bitArray bitLen 8 5.5140 ns/op 7.4420 ns/op 0.74
intersect array and set length 8 40.533 ns/op 82.874 ns/op 0.49
intersect bitArray bitLen 128 26.692 ns/op 33.126 ns/op 0.81
intersect array and set length 128 584.21 ns/op 1.0180 us/op 0.57
bitArray.getTrueBitIndexes() bitLen 128 2.1850 us/op 2.7610 us/op 0.79
bitArray.getTrueBitIndexes() bitLen 248 3.2900 us/op 5.2900 us/op 0.62
bitArray.getTrueBitIndexes() bitLen 512 7.4870 us/op 10.653 us/op 0.70
Buffer.concat 32 items 1.0130 us/op 1.2840 us/op 0.79
Uint8Array.set 32 items 1.6500 us/op 2.1500 us/op 0.77
Buffer.copy 1.7550 us/op 2.5980 us/op 0.68
Uint8Array.set - with subarray 2.3120 us/op 3.7780 us/op 0.61
Uint8Array.set - without subarray 1.6030 us/op 1.9950 us/op 0.80
getUint32 - dataview 391.00 ns/op 389.00 ns/op 1.01
getUint32 - manual 332.00 ns/op 352.00 ns/op 0.94
Set add up to 64 items then delete first 1.7718 us/op 3.3592 us/op 0.53
OrderedSet add up to 64 items then delete first 2.7428 us/op 5.4020 us/op 0.51
Set add up to 64 items then delete last 2.0214 us/op 3.8164 us/op 0.53
OrderedSet add up to 64 items then delete last 3.0305 us/op 5.9708 us/op 0.51
Set add up to 64 items then delete middle 2.0227 us/op 3.9159 us/op 0.52
OrderedSet add up to 64 items then delete middle 4.5081 us/op 8.3545 us/op 0.54
Set add up to 128 items then delete first 4.0474 us/op 8.6570 us/op 0.47
OrderedSet add up to 128 items then delete first 6.2969 us/op 12.367 us/op 0.51
Set add up to 128 items then delete last 3.8449 us/op 8.2078 us/op 0.47
OrderedSet add up to 128 items then delete last 5.9127 us/op 12.338 us/op 0.48
Set add up to 128 items then delete middle 3.8548 us/op 7.4449 us/op 0.52
OrderedSet add up to 128 items then delete middle 11.436 us/op 19.338 us/op 0.59
Set add up to 256 items then delete first 7.8090 us/op 18.078 us/op 0.43
OrderedSet add up to 256 items then delete first 12.318 us/op 26.396 us/op 0.47
Set add up to 256 items then delete last 7.5604 us/op 17.380 us/op 0.44
OrderedSet add up to 256 items then delete last 11.592 us/op 25.308 us/op 0.46
Set add up to 256 items then delete middle 7.5161 us/op 15.623 us/op 0.48
OrderedSet add up to 256 items then delete middle 34.256 us/op 53.283 us/op 0.64
transfer serialized Status (84 B) 1.4260 us/op 1.7800 us/op 0.80
copy serialized Status (84 B) 1.2710 us/op 1.5220 us/op 0.84
transfer serialized SignedVoluntaryExit (112 B) 1.7330 us/op 1.7780 us/op 0.97
copy serialized SignedVoluntaryExit (112 B) 1.3540 us/op 1.4860 us/op 0.91
transfer serialized ProposerSlashing (416 B) 2.1230 us/op 2.1510 us/op 0.99
copy serialized ProposerSlashing (416 B) 2.2050 us/op 2.4080 us/op 0.92
transfer serialized Attestation (485 B) 2.2110 us/op 2.3790 us/op 0.93
copy serialized Attestation (485 B) 2.1560 us/op 2.4510 us/op 0.88
transfer serialized AttesterSlashing (33232 B) 2.2380 us/op 2.8990 us/op 0.77
copy serialized AttesterSlashing (33232 B) 4.6180 us/op 10.591 us/op 0.44
transfer serialized Small SignedBeaconBlock (128000 B) 2.4500 us/op 3.9120 us/op 0.63
copy serialized Small SignedBeaconBlock (128000 B) 9.9910 us/op 33.139 us/op 0.30
transfer serialized Avg SignedBeaconBlock (200000 B) 3.2340 us/op 4.4310 us/op 0.73
copy serialized Avg SignedBeaconBlock (200000 B) 11.920 us/op 53.401 us/op 0.22
transfer serialized BlobsSidecar (524380 B) 2.7200 us/op 6.5750 us/op 0.41
copy serialized BlobsSidecar (524380 B) 64.889 us/op 165.04 us/op 0.39
transfer serialized Big SignedBeaconBlock (1000000 B) 2.7810 us/op 5.8650 us/op 0.47
copy serialized Big SignedBeaconBlock (1000000 B) 191.90 us/op 551.22 us/op 0.35
pass gossip attestations to forkchoice per slot 2.3881 ms/op 3.3650 ms/op 0.71
forkChoice updateHead vc 100000 bc 64 eq 0 365.10 us/op 1.2806 ms/op 0.29
forkChoice updateHead vc 600000 bc 64 eq 0 2.3169 ms/op 5.2573 ms/op 0.44
forkChoice updateHead vc 1000000 bc 64 eq 0 3.6437 ms/op 6.8726 ms/op 0.53
forkChoice updateHead vc 600000 bc 320 eq 0 2.1088 ms/op 4.0167 ms/op 0.53
forkChoice updateHead vc 600000 bc 1200 eq 0 2.1022 ms/op 4.4697 ms/op 0.47
forkChoice updateHead vc 600000 bc 7200 eq 0 2.6620 ms/op 5.0860 ms/op 0.52
forkChoice updateHead vc 600000 bc 64 eq 1000 8.8452 ms/op 12.335 ms/op 0.72
forkChoice updateHead vc 600000 bc 64 eq 10000 8.8184 ms/op 12.083 ms/op 0.73
forkChoice updateHead vc 600000 bc 64 eq 300000 11.717 ms/op 37.084 ms/op 0.32
computeDeltas 500000 validators 300 proto nodes 3.1816 ms/op 5.2711 ms/op 0.60
computeDeltas 500000 validators 1200 proto nodes 3.1474 ms/op 6.5298 ms/op 0.48
computeDeltas 500000 validators 7200 proto nodes 3.1161 ms/op 6.2988 ms/op 0.49
computeDeltas 750000 validators 300 proto nodes 4.7624 ms/op 8.4042 ms/op 0.57
computeDeltas 750000 validators 1200 proto nodes 4.7820 ms/op 8.5595 ms/op 0.56
computeDeltas 750000 validators 7200 proto nodes 4.6704 ms/op 9.1306 ms/op 0.51
computeDeltas 1400000 validators 300 proto nodes 8.9282 ms/op 15.576 ms/op 0.57
computeDeltas 1400000 validators 1200 proto nodes 8.8540 ms/op 12.601 ms/op 0.70
computeDeltas 1400000 validators 7200 proto nodes 8.8244 ms/op 12.897 ms/op 0.68
computeDeltas 2100000 validators 300 proto nodes 12.937 ms/op 18.782 ms/op 0.69
computeDeltas 2100000 validators 1200 proto nodes 13.310 ms/op 19.930 ms/op 0.67
computeDeltas 2100000 validators 7200 proto nodes 13.285 ms/op 19.735 ms/op 0.67
altair processAttestation - 250000 vs - 7PWei normalcase 1.4458 ms/op 2.6254 ms/op 0.55
altair processAttestation - 250000 vs - 7PWei worstcase 2.1528 ms/op 3.1422 ms/op 0.69
altair processAttestation - setStatus - 1/6 committees join 64.092 us/op 113.03 us/op 0.57
altair processAttestation - setStatus - 1/3 committees join 119.28 us/op 215.61 us/op 0.55
altair processAttestation - setStatus - 1/2 committees join 180.29 us/op 280.51 us/op 0.64
altair processAttestation - setStatus - 2/3 committees join 228.12 us/op 396.02 us/op 0.58
altair processAttestation - setStatus - 4/5 committees join 369.22 us/op 578.24 us/op 0.64
altair processAttestation - setStatus - 100% committees join 465.64 us/op 675.72 us/op 0.69
altair processBlock - 250000 vs - 7PWei normalcase 3.6325 ms/op 4.9905 ms/op 0.73
altair processBlock - 250000 vs - 7PWei normalcase hashState 24.125 ms/op 28.637 ms/op 0.84
altair processBlock - 250000 vs - 7PWei worstcase 36.732 ms/op 50.108 ms/op 0.73
altair processBlock - 250000 vs - 7PWei worstcase hashState 62.704 ms/op 87.661 ms/op 0.72
phase0 processBlock - 250000 vs - 7PWei normalcase 2.2238 ms/op 2.7546 ms/op 0.81
phase0 processBlock - 250000 vs - 7PWei worstcase 22.314 ms/op 26.771 ms/op 0.83
altair processEth1Data - 250000 vs - 7PWei normalcase 247.22 us/op 401.89 us/op 0.62
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 5.0250 us/op 7.1300 us/op 0.70
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 29.293 us/op 47.788 us/op 0.61
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 8.8530 us/op 12.593 us/op 0.70
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 5.8120 us/op 7.4700 us/op 0.78
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 119.65 us/op 144.32 us/op 0.83
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 813.65 us/op 1.2633 ms/op 0.64
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.1943 ms/op 1.6843 ms/op 0.71
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.0307 ms/op 1.6899 ms/op 0.61
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.7789 ms/op 4.8858 ms/op 0.57
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.2009 ms/op 1.7893 ms/op 0.67
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 2.7221 ms/op 5.8669 ms/op 0.46
Tree 40 250000 create 190.16 ms/op 467.44 ms/op 0.41
Tree 40 250000 get(125000) 120.59 ns/op 170.00 ns/op 0.71
Tree 40 250000 set(125000) 524.99 ns/op 838.71 ns/op 0.63
Tree 40 250000 toArray() 11.275 ms/op 22.991 ms/op 0.49
Tree 40 250000 iterate all - toArray() + loop 9.9865 ms/op 22.693 ms/op 0.44
Tree 40 250000 iterate all - get(i) 45.877 ms/op 62.529 ms/op 0.73
Array 250000 create 2.3563 ms/op 4.1336 ms/op 0.57
Array 250000 clone - spread 1.2813 ms/op 1.7261 ms/op 0.74
Array 250000 get(125000) 0.59500 ns/op 0.50300 ns/op 1.18
Array 250000 set(125000) 0.60200 ns/op 0.51400 ns/op 1.17
Array 250000 iterate all - loop 76.087 us/op 102.71 us/op 0.74
phase0 afterProcessEpoch - 250000 vs - 7PWei 45.749 ms/op 59.003 ms/op 0.78
Array.fill - length 1000000 2.5551 ms/op 6.2827 ms/op 0.41
Array push - length 1000000 14.306 ms/op 40.846 ms/op 0.35
Array.get 0.26681 ns/op 0.32523 ns/op 0.82
Uint8Array.get 0.34551 ns/op 0.47666 ns/op 0.72
phase0 beforeProcessEpoch - 250000 vs - 7PWei 14.938 ms/op 25.226 ms/op 0.59
altair processEpoch - mainnet_e81889 290.48 ms/op 359.56 ms/op 0.81
mainnet_e81889 - altair beforeProcessEpoch 19.591 ms/op 23.130 ms/op 0.85
mainnet_e81889 - altair processJustificationAndFinalization 12.567 us/op 18.893 us/op 0.67
mainnet_e81889 - altair processInactivityUpdates 5.0634 ms/op 7.1031 ms/op 0.71
mainnet_e81889 - altair processRewardsAndPenalties 51.450 ms/op 41.343 ms/op 1.24
mainnet_e81889 - altair processRegistryUpdates 1.6890 us/op 1.9340 us/op 0.87
mainnet_e81889 - altair processSlashings 798.00 ns/op 498.00 ns/op 1.60
mainnet_e81889 - altair processEth1DataReset 739.00 ns/op 410.00 ns/op 1.80
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.0666 ms/op 1.9743 ms/op 0.54
mainnet_e81889 - altair processSlashingsReset 2.4780 us/op 2.9260 us/op 0.85
mainnet_e81889 - altair processRandaoMixesReset 5.0840 us/op 3.7430 us/op 1.36
mainnet_e81889 - altair processHistoricalRootsUpdate 925.00 ns/op 428.00 ns/op 2.16
mainnet_e81889 - altair processParticipationFlagUpdates 2.6520 us/op 2.5600 us/op 1.04
mainnet_e81889 - altair processSyncCommitteeUpdates 1.1240 us/op 502.00 ns/op 2.24
mainnet_e81889 - altair afterProcessEpoch 42.665 ms/op 53.537 ms/op 0.80
capella processEpoch - mainnet_e217614 1.0827 s/op 1.1084 s/op 0.98
mainnet_e217614 - capella beforeProcessEpoch 72.697 ms/op 77.539 ms/op 0.94
mainnet_e217614 - capella processJustificationAndFinalization 13.032 us/op 19.776 us/op 0.66
mainnet_e217614 - capella processInactivityUpdates 14.113 ms/op 18.927 ms/op 0.75
mainnet_e217614 - capella processRewardsAndPenalties 226.12 ms/op 230.04 ms/op 0.98
mainnet_e217614 - capella processRegistryUpdates 11.040 us/op 15.088 us/op 0.73
mainnet_e217614 - capella processSlashings 736.00 ns/op 562.00 ns/op 1.31
mainnet_e217614 - capella processEth1DataReset 699.00 ns/op 350.00 ns/op 2.00
mainnet_e217614 - capella processEffectiveBalanceUpdates 15.395 ms/op 17.490 ms/op 0.88
mainnet_e217614 - capella processSlashingsReset 1.7000 us/op 6.6460 us/op 0.26
mainnet_e217614 - capella processRandaoMixesReset 2.1320 us/op 4.8140 us/op 0.44
mainnet_e217614 - capella processHistoricalRootsUpdate 440.00 ns/op 776.00 ns/op 0.57
mainnet_e217614 - capella processParticipationFlagUpdates 1.1770 us/op 2.0480 us/op 0.57
mainnet_e217614 - capella afterProcessEpoch 99.530 ms/op 129.97 ms/op 0.77
phase0 processEpoch - mainnet_e58758 298.05 ms/op 366.05 ms/op 0.81
mainnet_e58758 - phase0 beforeProcessEpoch 73.908 ms/op 81.181 ms/op 0.91
mainnet_e58758 - phase0 processJustificationAndFinalization 11.416 us/op 19.417 us/op 0.59
mainnet_e58758 - phase0 processRewardsAndPenalties 32.628 ms/op 28.654 ms/op 1.14
mainnet_e58758 - phase0 processRegistryUpdates 5.6340 us/op 9.2600 us/op 0.61
mainnet_e58758 - phase0 processSlashings 738.00 ns/op 545.00 ns/op 1.35
mainnet_e58758 - phase0 processEth1DataReset 674.00 ns/op 577.00 ns/op 1.17
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 814.96 us/op 1.3461 ms/op 0.61
mainnet_e58758 - phase0 processSlashingsReset 2.8350 us/op 3.7760 us/op 0.75
mainnet_e58758 - phase0 processRandaoMixesReset 4.1930 us/op 6.0740 us/op 0.69
mainnet_e58758 - phase0 processHistoricalRootsUpdate 442.00 ns/op 532.00 ns/op 0.83
mainnet_e58758 - phase0 processParticipationRecordUpdates 5.4840 us/op 4.0280 us/op 1.36
mainnet_e58758 - phase0 afterProcessEpoch 37.262 ms/op 49.103 ms/op 0.76
phase0 processEffectiveBalanceUpdates - 250000 normalcase 993.18 us/op 1.7299 ms/op 0.57
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.8970 ms/op 5.0592 ms/op 0.37
altair processInactivityUpdates - 250000 normalcase 15.928 ms/op 21.355 ms/op 0.75
altair processInactivityUpdates - 250000 worstcase 14.320 ms/op 19.229 ms/op 0.74
phase0 processRegistryUpdates - 250000 normalcase 7.5530 us/op 13.129 us/op 0.58
phase0 processRegistryUpdates - 250000 badcase_full_deposits 311.93 us/op 361.28 us/op 0.86
phase0 processRegistryUpdates - 250000 worstcase 0.5 113.78 ms/op 134.98 ms/op 0.84
altair processRewardsAndPenalties - 250000 normalcase 38.938 ms/op 44.447 ms/op 0.88
altair processRewardsAndPenalties - 250000 worstcase 47.053 ms/op 53.638 ms/op 0.88
phase0 getAttestationDeltas - 250000 normalcase 6.2257 ms/op 12.817 ms/op 0.49
phase0 getAttestationDeltas - 250000 worstcase 6.4446 ms/op 9.7929 ms/op 0.66
phase0 processSlashings - 250000 worstcase 94.146 us/op 110.28 us/op 0.85
altair processSyncCommitteeUpdates - 250000 102.03 ms/op 160.32 ms/op 0.64
BeaconState.hashTreeRoot - No change 449.00 ns/op 314.00 ns/op 1.43
BeaconState.hashTreeRoot - 1 full validator 119.92 us/op 174.79 us/op 0.69
BeaconState.hashTreeRoot - 32 full validator 1.4572 ms/op 1.2350 ms/op 1.18
BeaconState.hashTreeRoot - 512 full validator 10.944 ms/op 12.210 ms/op 0.90
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 157.90 us/op 168.25 us/op 0.94
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.0466 ms/op 2.2705 ms/op 0.90
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 22.458 ms/op 27.540 ms/op 0.82
BeaconState.hashTreeRoot - 1 balances 98.141 us/op 122.50 us/op 0.80
BeaconState.hashTreeRoot - 32 balances 997.64 us/op 1.1899 ms/op 0.84
BeaconState.hashTreeRoot - 512 balances 6.6985 ms/op 8.9544 ms/op 0.75
BeaconState.hashTreeRoot - 250000 balances 160.25 ms/op 207.52 ms/op 0.77
aggregationBits - 2048 els - zipIndexesInBitList 18.884 us/op 33.576 us/op 0.56
byteArrayEquals 32 47.174 ns/op 58.719 ns/op 0.80
Buffer.compare 32 15.380 ns/op 19.741 ns/op 0.78
byteArrayEquals 1024 1.2644 us/op 1.8375 us/op 0.69
Buffer.compare 1024 24.438 ns/op 30.693 ns/op 0.80
byteArrayEquals 16384 20.074 us/op 26.878 us/op 0.75
Buffer.compare 16384 199.39 ns/op 212.25 ns/op 0.94
byteArrayEquals 123687377 147.01 ms/op 227.40 ms/op 0.65
Buffer.compare 123687377 5.4985 ms/op 11.411 ms/op 0.48
byteArrayEquals 32 - diff last byte 44.891 ns/op 61.514 ns/op 0.73
Buffer.compare 32 - diff last byte 15.614 ns/op 20.127 ns/op 0.78
byteArrayEquals 1024 - diff last byte 1.2831 us/op 1.8097 us/op 0.71
Buffer.compare 1024 - diff last byte 22.941 ns/op 28.819 ns/op 0.80
byteArrayEquals 16384 - diff last byte 20.424 us/op 27.876 us/op 0.73
Buffer.compare 16384 - diff last byte 205.38 ns/op 210.91 ns/op 0.97
byteArrayEquals 123687377 - diff last byte 149.55 ms/op 204.41 ms/op 0.73
Buffer.compare 123687377 - diff last byte 4.5495 ms/op 9.3300 ms/op 0.49
byteArrayEquals 32 - random bytes 5.1430 ns/op 5.5320 ns/op 0.93
Buffer.compare 32 - random bytes 16.134 ns/op 18.932 ns/op 0.85
byteArrayEquals 1024 - random bytes 5.0450 ns/op 5.6410 ns/op 0.89
Buffer.compare 1024 - random bytes 15.798 ns/op 19.621 ns/op 0.81
byteArrayEquals 16384 - random bytes 5.0060 ns/op 5.6670 ns/op 0.88
Buffer.compare 16384 - random bytes 15.692 ns/op 19.679 ns/op 0.80
byteArrayEquals 123687377 - random bytes 7.9300 ns/op 6.8400 ns/op 1.16
Buffer.compare 123687377 - random bytes 18.700 ns/op 20.070 ns/op 0.93
regular array get 100000 times 31.377 us/op 38.328 us/op 0.82
wrappedArray get 100000 times 31.332 us/op 46.233 us/op 0.68
arrayWithProxy get 100000 times 10.107 ms/op 15.979 ms/op 0.63
ssz.Root.equals 42.280 ns/op 49.039 ns/op 0.86
byteArrayEquals 41.127 ns/op 49.342 ns/op 0.83
Buffer.compare 8.6130 ns/op 11.521 ns/op 0.75
processSlot - 1 slots 15.721 us/op 16.017 us/op 0.98
processSlot - 32 slots 2.4895 ms/op 3.3897 ms/op 0.73
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 39.043 ms/op 37.336 ms/op 1.05
getCommitteeAssignments - req 1 vs - 250000 vc 1.8123 ms/op 2.1806 ms/op 0.83
getCommitteeAssignments - req 100 vs - 250000 vc 3.5798 ms/op 4.2460 ms/op 0.84
getCommitteeAssignments - req 1000 vs - 250000 vc 3.8204 ms/op 4.5495 ms/op 0.84
findModifiedValidators - 10000 modified validators 231.01 ms/op 299.39 ms/op 0.77
findModifiedValidators - 1000 modified validators 138.27 ms/op 200.36 ms/op 0.69
findModifiedValidators - 100 modified validators 143.34 ms/op 241.35 ms/op 0.59
findModifiedValidators - 10 modified validators 124.98 ms/op 210.53 ms/op 0.59
findModifiedValidators - 1 modified validators 130.70 ms/op 178.62 ms/op 0.73
findModifiedValidators - no difference 135.35 ms/op 194.46 ms/op 0.70
compare ViewDUs 3.1762 s/op 3.5308 s/op 0.90
compare each validator Uint8Array 1.5085 s/op 1.4081 s/op 1.07
compare ViewDU to Uint8Array 717.19 ms/op 1.1004 s/op 0.65
migrate state 1000000 validators, 24 modified, 0 new 666.80 ms/op 710.93 ms/op 0.94
migrate state 1000000 validators, 1700 modified, 1000 new 872.52 ms/op 960.91 ms/op 0.91
migrate state 1000000 validators, 3400 modified, 2000 new 1.0554 s/op 1.2237 s/op 0.86
migrate state 1500000 validators, 24 modified, 0 new 623.82 ms/op 728.41 ms/op 0.86
migrate state 1500000 validators, 1700 modified, 1000 new 911.72 ms/op 936.50 ms/op 0.97
migrate state 1500000 validators, 3400 modified, 2000 new 986.31 ms/op 1.1647 s/op 0.85
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 6.0700 ns/op 4.8800 ns/op 1.24
state getBlockRootAtSlot - 250000 vs - 7PWei 528.73 ns/op 734.76 ns/op 0.72
computeProposers - vc 250000 5.5227 ms/op 8.2840 ms/op 0.67
computeEpochShuffling - vc 250000 35.068 ms/op 43.527 ms/op 0.81
getNextSyncCommittee - vc 250000 97.677 ms/op 141.99 ms/op 0.69
computeSigningRoot for AttestationData 15.904 us/op 23.428 us/op 0.68
hash AttestationData serialized data then Buffer.toString(base64) 1.1508 us/op 1.6673 us/op 0.69
toHexString serialized data 762.06 ns/op 1.0285 us/op 0.74
Buffer.toString(base64) 130.01 ns/op 196.12 ns/op 0.66
nodejs block root to RootHex using toHex 117.11 ns/op 189.84 ns/op 0.62
nodejs block root to RootHex using toRootHex 76.051 ns/op 96.987 ns/op 0.78
browser block root to RootHex using the deprecated toHexString 200.33 ns/op 259.37 ns/op 0.77
browser block root to RootHex using toHex 160.47 ns/op 186.13 ns/op 0.86
browser block root to RootHex using toRootHex 143.63 ns/op 177.21 ns/op 0.81

by benchmarkbot/action

@ensi321 ensi321 marked this pull request as ready for review December 3, 2024 00:37
@ensi321 ensi321 requested a review from a team as a code owner December 3, 2024 00:37
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

@ensi321 ensi321 changed the base branch from unstable to devnet-5 December 3, 2024 15:16
@philknows
Copy link
Member

Please target devnet-5 branch

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