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: remove IndexedGossipQueueAvgTime #7125

Merged
merged 1 commit into from
Oct 4, 2024

Conversation

twoeths
Copy link
Contributor

@twoeths twoeths commented Oct 4, 2024

Motivation

  • IndexedGossipQueueAvgTime was created as another gossip queue candidate but it's performance is not great as testing here while in electra IndexedGossipQueueMinSize is supposed to be able to batch more gossip messages so its strategy is more efficient

Description

  • remove IndexedGossipQueueAvgTime, we don't need to maintain unused code anymore

Copy link

codecov bot commented Oct 4, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Please upload report for BASE (unstable@a19655d). Learn more about missing BASE report.
Report is 1 commits behind head on unstable.

Additional details and impacted files
@@             Coverage Diff             @@
##             unstable    #7125   +/-   ##
===========================================
  Coverage            ?   49.04%           
===========================================
  Files               ?      596           
  Lines               ?    39743           
  Branches            ?     2065           
===========================================
  Hits                ?    19493           
  Misses              ?    20209           
  Partials            ?       41           

Copy link
Contributor

github-actions bot commented Oct 4, 2024

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 8066c55 Previous: a19655d Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.6200 ms/op 2.2748 ms/op 0.71
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 39.023 us/op 52.887 us/op 0.74
BLS verify - blst 907.68 us/op 885.81 us/op 1.02
BLS verifyMultipleSignatures 3 - blst 1.3115 ms/op 1.4859 ms/op 0.88
BLS verifyMultipleSignatures 8 - blst 2.0875 ms/op 2.2318 ms/op 0.94
BLS verifyMultipleSignatures 32 - blst 4.4245 ms/op 5.3675 ms/op 0.82
BLS verifyMultipleSignatures 64 - blst 8.2475 ms/op 9.7549 ms/op 0.85
BLS verifyMultipleSignatures 128 - blst 16.023 ms/op 18.336 ms/op 0.87
BLS deserializing 10000 signatures 612.08 ms/op 642.94 ms/op 0.95
BLS deserializing 100000 signatures 6.0230 s/op 6.3988 s/op 0.94
BLS verifyMultipleSignatures - same message - 3 - blst 906.52 us/op 963.10 us/op 0.94
BLS verifyMultipleSignatures - same message - 8 - blst 996.86 us/op 1.0757 ms/op 0.93
BLS verifyMultipleSignatures - same message - 32 - blst 1.6983 ms/op 1.6893 ms/op 1.01
BLS verifyMultipleSignatures - same message - 64 - blst 2.4900 ms/op 2.6155 ms/op 0.95
BLS verifyMultipleSignatures - same message - 128 - blst 4.0978 ms/op 4.1571 ms/op 0.99
BLS aggregatePubkeys 32 - blst 17.770 us/op 18.410 us/op 0.97
BLS aggregatePubkeys 128 - blst 60.283 us/op 62.711 us/op 0.96
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 64.161 ms/op 51.423 ms/op 1.25
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 43.614 ms/op 44.541 ms/op 0.98
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 30.614 ms/op 31.810 ms/op 0.96
getSlashingsAndExits - default max 74.686 us/op 100.53 us/op 0.74
getSlashingsAndExits - 2k 273.92 us/op 337.67 us/op 0.81
proposeBlockBody type=full, size=empty 5.1350 ms/op 5.1889 ms/op 0.99
isKnown best case - 1 super set check 643.00 ns/op 674.00 ns/op 0.95
isKnown normal case - 2 super set checks 554.00 ns/op 522.00 ns/op 1.06
isKnown worse case - 16 super set checks 574.00 ns/op 472.00 ns/op 1.22
InMemoryCheckpointStateCache - add get delete 2.7740 us/op 3.2860 us/op 0.84
updateUnfinalizedPubkeys - updating 10 pubkeys 741.28 us/op 891.29 us/op 0.83
updateUnfinalizedPubkeys - updating 100 pubkeys 2.7292 ms/op 2.6858 ms/op 1.02
updateUnfinalizedPubkeys - updating 1000 pubkeys 39.125 ms/op 38.929 ms/op 1.01
validate api signedAggregateAndProof - struct 1.6515 ms/op 1.5936 ms/op 1.04
validate gossip signedAggregateAndProof - struct 1.5734 ms/op 1.6634 ms/op 0.95
validate gossip attestation - vc 640000 986.01 us/op 999.60 us/op 0.99
batch validate gossip attestation - vc 640000 - chunk 32 123.39 us/op 126.66 us/op 0.97
batch validate gossip attestation - vc 640000 - chunk 64 108.91 us/op 109.57 us/op 0.99
batch validate gossip attestation - vc 640000 - chunk 128 99.505 us/op 104.47 us/op 0.95
batch validate gossip attestation - vc 640000 - chunk 256 94.947 us/op 100.48 us/op 0.94
pickEth1Vote - no votes 863.76 us/op 853.80 us/op 1.01
pickEth1Vote - max votes 5.4513 ms/op 4.3216 ms/op 1.26
pickEth1Vote - Eth1Data hashTreeRoot value x2048 14.050 ms/op 9.7258 ms/op 1.44
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 21.527 ms/op 13.323 ms/op 1.62
pickEth1Vote - Eth1Data fastSerialize value x2048 373.55 us/op 372.63 us/op 1.00
pickEth1Vote - Eth1Data fastSerialize tree x2048 3.7531 ms/op 2.5148 ms/op 1.49
bytes32 toHexString 683.00 ns/op 606.00 ns/op 1.13
bytes32 Buffer.toString(hex) 425.00 ns/op 528.00 ns/op 0.80
bytes32 Buffer.toString(hex) from Uint8Array 519.00 ns/op 678.00 ns/op 0.77
bytes32 Buffer.toString(hex) + 0x 428.00 ns/op 526.00 ns/op 0.81
Object access 1 prop 0.32300 ns/op 0.35200 ns/op 0.92
Map access 1 prop 0.33400 ns/op 0.36300 ns/op 0.92
Object get x1000 5.1650 ns/op 5.2110 ns/op 0.99
Map get x1000 6.0330 ns/op 5.9630 ns/op 1.01
Object set x1000 22.682 ns/op 32.415 ns/op 0.70
Map set x1000 19.164 ns/op 25.003 ns/op 0.77
Return object 10000 times 0.29810 ns/op 0.30500 ns/op 0.98
Throw Error 10000 times 2.7707 us/op 2.7633 us/op 1.00
toHex 113.20 ns/op 135.63 ns/op 0.83
Buffer.from 102.73 ns/op 135.55 ns/op 0.76
shared Buffer 74.047 ns/op 77.960 ns/op 0.95
fastMsgIdFn sha256 / 200 bytes 1.9910 us/op 2.0710 us/op 0.96
fastMsgIdFn h32 xxhash / 200 bytes 396.00 ns/op 502.00 ns/op 0.79
fastMsgIdFn h64 xxhash / 200 bytes 455.00 ns/op 532.00 ns/op 0.86
fastMsgIdFn sha256 / 1000 bytes 6.0840 us/op 6.1690 us/op 0.99
fastMsgIdFn h32 xxhash / 1000 bytes 520.00 ns/op 616.00 ns/op 0.84
fastMsgIdFn h64 xxhash / 1000 bytes 519.00 ns/op 625.00 ns/op 0.83
fastMsgIdFn sha256 / 10000 bytes 50.229 us/op 51.291 us/op 0.98
fastMsgIdFn h32 xxhash / 10000 bytes 1.8720 us/op 2.1430 us/op 0.87
fastMsgIdFn h64 xxhash / 10000 bytes 1.3140 us/op 1.3860 us/op 0.95
send data - 1000 256B messages 9.7019 ms/op 12.524 ms/op 0.77
send data - 1000 512B messages 13.081 ms/op 15.635 ms/op 0.84
send data - 1000 1024B messages 22.685 ms/op 28.965 ms/op 0.78
send data - 1000 1200B messages 22.635 ms/op 24.076 ms/op 0.94
send data - 1000 2048B messages 30.320 ms/op 32.282 ms/op 0.94
send data - 1000 4096B messages 28.378 ms/op 31.372 ms/op 0.90
send data - 1000 16384B messages 70.910 ms/op 69.688 ms/op 1.02
send data - 1000 65536B messages 276.16 ms/op 276.95 ms/op 1.00
enrSubnets - fastDeserialize 64 bits 1.3090 us/op 1.1990 us/op 1.09
enrSubnets - ssz BitVector 64 bits 630.00 ns/op 605.00 ns/op 1.04
enrSubnets - fastDeserialize 4 bits 379.00 ns/op 379.00 ns/op 1.00
enrSubnets - ssz BitVector 4 bits 624.00 ns/op 629.00 ns/op 0.99
prioritizePeers score -10:0 att 32-0.1 sync 2-0 125.25 us/op 153.21 us/op 0.82
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 159.94 us/op 161.12 us/op 0.99
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 329.99 us/op 408.18 us/op 0.81
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 454.90 us/op 443.64 us/op 1.03
prioritizePeers score 0:0 att 64-1 sync 4-1 757.13 us/op 988.13 us/op 0.77
array of 16000 items push then shift 1.2835 us/op 1.3307 us/op 0.96
LinkedList of 16000 items push then shift 7.9740 ns/op 9.2460 ns/op 0.86
array of 16000 items push then pop 99.179 ns/op 121.90 ns/op 0.81
LinkedList of 16000 items push then pop 6.5110 ns/op 7.0080 ns/op 0.93
array of 24000 items push then shift 1.8542 us/op 1.9391 us/op 0.96
LinkedList of 24000 items push then shift 7.5090 ns/op 10.170 ns/op 0.74
array of 24000 items push then pop 120.99 ns/op 167.69 ns/op 0.72
LinkedList of 24000 items push then pop 6.7550 ns/op 7.1890 ns/op 0.94
intersect bitArray bitLen 8 5.2840 ns/op 5.6120 ns/op 0.94
intersect array and set length 8 42.151 ns/op 73.345 ns/op 0.57
intersect bitArray bitLen 128 26.128 ns/op 27.733 ns/op 0.94
intersect array and set length 128 591.31 ns/op 824.76 ns/op 0.72
bitArray.getTrueBitIndexes() bitLen 128 2.0300 us/op 2.4900 us/op 0.82
bitArray.getTrueBitIndexes() bitLen 248 3.0130 us/op 3.7850 us/op 0.80
bitArray.getTrueBitIndexes() bitLen 512 7.0780 us/op 8.0080 us/op 0.88
Buffer.concat 32 items 1.0620 us/op 1.1720 us/op 0.91
Uint8Array.set 32 items 1.3180 us/op 1.6280 us/op 0.81
Buffer.copy 1.6730 us/op 1.8220 us/op 0.92
Uint8Array.set - with subarray 2.0950 us/op 2.6510 us/op 0.79
Uint8Array.set - without subarray 1.5800 us/op 1.5450 us/op 1.02
getUint32 - dataview 414.00 ns/op 511.00 ns/op 0.81
getUint32 - manual 352.00 ns/op 449.00 ns/op 0.78
Set add up to 64 items then delete first 1.9327 us/op 2.4957 us/op 0.77
OrderedSet add up to 64 items then delete first 2.8971 us/op 4.0443 us/op 0.72
Set add up to 64 items then delete last 2.0875 us/op 2.7679 us/op 0.75
OrderedSet add up to 64 items then delete last 3.1677 us/op 4.2240 us/op 0.75
Set add up to 64 items then delete middle 2.0937 us/op 2.7667 us/op 0.76
OrderedSet add up to 64 items then delete middle 4.5650 us/op 6.1340 us/op 0.74
Set add up to 128 items then delete first 4.1519 us/op 5.0127 us/op 0.83
OrderedSet add up to 128 items then delete first 6.4379 us/op 6.8193 us/op 0.94
Set add up to 128 items then delete last 3.9837 us/op 4.0044 us/op 0.99
OrderedSet add up to 128 items then delete last 6.1189 us/op 6.1076 us/op 1.00
Set add up to 128 items then delete middle 3.9800 us/op 4.0216 us/op 0.99
OrderedSet add up to 128 items then delete middle 11.899 us/op 12.137 us/op 0.98
Set add up to 256 items then delete first 8.0842 us/op 8.1247 us/op 1.00
OrderedSet add up to 256 items then delete first 12.920 us/op 13.035 us/op 0.99
Set add up to 256 items then delete last 7.9237 us/op 7.9097 us/op 1.00
OrderedSet add up to 256 items then delete last 12.496 us/op 12.417 us/op 1.01
Set add up to 256 items then delete middle 7.7653 us/op 7.9467 us/op 0.98
OrderedSet add up to 256 items then delete middle 34.483 us/op 40.691 us/op 0.85
transfer serialized Status (84 B) 1.3690 us/op 1.6070 us/op 0.85
copy serialized Status (84 B) 1.1970 us/op 1.2740 us/op 0.94
transfer serialized SignedVoluntaryExit (112 B) 1.4160 us/op 1.7300 us/op 0.82
copy serialized SignedVoluntaryExit (112 B) 1.3600 us/op 1.5480 us/op 0.88
transfer serialized ProposerSlashing (416 B) 1.8500 us/op 2.5170 us/op 0.74
copy serialized ProposerSlashing (416 B) 2.0380 us/op 2.2500 us/op 0.91
transfer serialized Attestation (485 B) 1.5810 us/op 2.6080 us/op 0.61
copy serialized Attestation (485 B) 1.4180 us/op 2.4060 us/op 0.59
transfer serialized AttesterSlashing (33232 B) 1.6120 us/op 2.4550 us/op 0.66
copy serialized AttesterSlashing (33232 B) 3.5930 us/op 4.3060 us/op 0.83
transfer serialized Small SignedBeaconBlock (128000 B) 2.1910 us/op 2.4480 us/op 0.90
copy serialized Small SignedBeaconBlock (128000 B) 9.5060 us/op 10.304 us/op 0.92
transfer serialized Avg SignedBeaconBlock (200000 B) 2.1910 us/op 2.8650 us/op 0.76
copy serialized Avg SignedBeaconBlock (200000 B) 13.435 us/op 14.347 us/op 0.94
transfer serialized BlobsSidecar (524380 B) 2.6190 us/op 3.3350 us/op 0.79
copy serialized BlobsSidecar (524380 B) 135.79 us/op 85.545 us/op 1.59
transfer serialized Big SignedBeaconBlock (1000000 B) 2.7710 us/op 3.0480 us/op 0.91
copy serialized Big SignedBeaconBlock (1000000 B) 343.04 us/op 142.06 us/op 2.41
pass gossip attestations to forkchoice per slot 2.4612 ms/op 2.4820 ms/op 0.99
forkChoice updateHead vc 100000 bc 64 eq 0 438.13 us/op 416.47 us/op 1.05
forkChoice updateHead vc 600000 bc 64 eq 0 2.6153 ms/op 2.6245 ms/op 1.00
forkChoice updateHead vc 1000000 bc 64 eq 0 4.3094 ms/op 4.2662 ms/op 1.01
forkChoice updateHead vc 600000 bc 320 eq 0 2.5871 ms/op 2.5190 ms/op 1.03
forkChoice updateHead vc 600000 bc 1200 eq 0 2.6193 ms/op 2.7063 ms/op 0.97
forkChoice updateHead vc 600000 bc 7200 eq 0 3.1024 ms/op 2.9698 ms/op 1.04
forkChoice updateHead vc 600000 bc 64 eq 1000 9.5948 ms/op 9.8437 ms/op 0.97
forkChoice updateHead vc 600000 bc 64 eq 10000 9.6033 ms/op 9.7544 ms/op 0.98
forkChoice updateHead vc 600000 bc 64 eq 300000 12.194 ms/op 12.028 ms/op 1.01
computeDeltas 500000 validators 300 proto nodes 3.1642 ms/op 3.1600 ms/op 1.00
computeDeltas 500000 validators 1200 proto nodes 3.1158 ms/op 3.3205 ms/op 0.94
computeDeltas 500000 validators 7200 proto nodes 3.0303 ms/op 3.1933 ms/op 0.95
computeDeltas 750000 validators 300 proto nodes 4.6876 ms/op 4.7268 ms/op 0.99
computeDeltas 750000 validators 1200 proto nodes 4.6627 ms/op 4.5860 ms/op 1.02
computeDeltas 750000 validators 7200 proto nodes 4.4957 ms/op 4.5061 ms/op 1.00
computeDeltas 1400000 validators 300 proto nodes 8.1668 ms/op 8.8867 ms/op 0.92
computeDeltas 1400000 validators 1200 proto nodes 8.2166 ms/op 8.6230 ms/op 0.95
computeDeltas 1400000 validators 7200 proto nodes 8.3941 ms/op 8.6977 ms/op 0.97
computeDeltas 2100000 validators 300 proto nodes 12.420 ms/op 13.181 ms/op 0.94
computeDeltas 2100000 validators 1200 proto nodes 12.344 ms/op 13.106 ms/op 0.94
computeDeltas 2100000 validators 7200 proto nodes 12.405 ms/op 12.769 ms/op 0.97
altair processAttestation - 250000 vs - 7PWei normalcase 1.5255 ms/op 1.4371 ms/op 1.06
altair processAttestation - 250000 vs - 7PWei worstcase 2.2578 ms/op 2.2167 ms/op 1.02
altair processAttestation - setStatus - 1/6 committees join 90.312 us/op 71.643 us/op 1.26
altair processAttestation - setStatus - 1/3 committees join 185.22 us/op 136.66 us/op 1.36
altair processAttestation - setStatus - 1/2 committees join 269.62 us/op 195.28 us/op 1.38
altair processAttestation - setStatus - 2/3 committees join 348.98 us/op 277.19 us/op 1.26
altair processAttestation - setStatus - 4/5 committees join 490.05 us/op 397.73 us/op 1.23
altair processAttestation - setStatus - 100% committees join 582.37 us/op 479.15 us/op 1.22
altair processBlock - 250000 vs - 7PWei normalcase 3.0267 ms/op 4.4953 ms/op 0.67
altair processBlock - 250000 vs - 7PWei normalcase hashState 32.435 ms/op 26.351 ms/op 1.23
altair processBlock - 250000 vs - 7PWei worstcase 36.494 ms/op 33.544 ms/op 1.09
altair processBlock - 250000 vs - 7PWei worstcase hashState 80.638 ms/op 80.479 ms/op 1.00
phase0 processBlock - 250000 vs - 7PWei normalcase 1.7533 ms/op 2.1162 ms/op 0.83
phase0 processBlock - 250000 vs - 7PWei worstcase 22.449 ms/op 23.672 ms/op 0.95
altair processEth1Data - 250000 vs - 7PWei normalcase 259.57 us/op 260.63 us/op 1.00
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 2.7800 us/op 6.2890 us/op 0.44
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 30.074 us/op 32.082 us/op 0.94
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 8.5030 us/op 10.231 us/op 0.83
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 5.8650 us/op 7.4000 us/op 0.79
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 129.21 us/op 137.36 us/op 0.94
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 777.23 us/op 1.3844 ms/op 0.56
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.1742 ms/op 1.2411 ms/op 0.95
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.2212 ms/op 1.1228 ms/op 1.09
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.8854 ms/op 3.6874 ms/op 0.78
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.0541 ms/op 1.4102 ms/op 0.75
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 2.5906 ms/op 4.8720 ms/op 0.53
Tree 40 250000 create 180.79 ms/op 248.80 ms/op 0.73
Tree 40 250000 get(125000) 115.39 ns/op 152.08 ns/op 0.76
Tree 40 250000 set(125000) 538.05 ns/op 586.01 ns/op 0.92
Tree 40 250000 toArray() 9.7189 ms/op 19.436 ms/op 0.50
Tree 40 250000 iterate all - toArray() + loop 9.8105 ms/op 19.877 ms/op 0.49
Tree 40 250000 iterate all - get(i) 39.895 ms/op 47.537 ms/op 0.84
Array 250000 create 2.2382 ms/op 2.4212 ms/op 0.92
Array 250000 clone - spread 1.2406 ms/op 1.2261 ms/op 1.01
Array 250000 get(125000) 0.56500 ns/op 0.61100 ns/op 0.92
Array 250000 set(125000) 0.57700 ns/op 0.65100 ns/op 0.89
Array 250000 iterate all - loop 75.166 us/op 81.760 us/op 0.92
phase0 afterProcessEpoch - 250000 vs - 7PWei 75.095 ms/op 78.812 ms/op 0.95
Array.fill - length 1000000 2.5227 ms/op 2.5566 ms/op 0.99
Array push - length 1000000 9.0528 ms/op 14.649 ms/op 0.62
Array.get 0.25559 ns/op 0.28033 ns/op 0.91
Uint8Array.get 0.33536 ns/op 0.34138 ns/op 0.98
phase0 beforeProcessEpoch - 250000 vs - 7PWei 11.933 ms/op 21.930 ms/op 0.54
altair processEpoch - mainnet_e81889 309.52 ms/op 329.26 ms/op 0.94
mainnet_e81889 - altair beforeProcessEpoch 16.147 ms/op 23.558 ms/op 0.69
mainnet_e81889 - altair processJustificationAndFinalization 10.438 us/op 23.051 us/op 0.45
mainnet_e81889 - altair processInactivityUpdates 3.8459 ms/op 8.0815 ms/op 0.48
mainnet_e81889 - altair processRewardsAndPenalties 49.703 ms/op 41.822 ms/op 1.19
mainnet_e81889 - altair processRegistryUpdates 1.1530 us/op 4.0430 us/op 0.29
mainnet_e81889 - altair processSlashings 853.00 ns/op 1.2620 us/op 0.68
mainnet_e81889 - altair processEth1DataReset 766.00 ns/op 1.0080 us/op 0.76
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.4688 ms/op 2.0843 ms/op 0.70
mainnet_e81889 - altair processSlashingsReset 1.3810 us/op 4.7740 us/op 0.29
mainnet_e81889 - altair processRandaoMixesReset 1.6290 us/op 7.3380 us/op 0.22
mainnet_e81889 - altair processHistoricalRootsUpdate 424.00 ns/op 1.1350 us/op 0.37
mainnet_e81889 - altair processParticipationFlagUpdates 879.00 ns/op 4.0870 us/op 0.22
mainnet_e81889 - altair processSyncCommitteeUpdates 373.00 ns/op 1.5080 us/op 0.25
mainnet_e81889 - altair afterProcessEpoch 72.576 ms/op 91.775 ms/op 0.79
capella processEpoch - mainnet_e217614 1.0517 s/op 1.1652 s/op 0.90
mainnet_e217614 - capella beforeProcessEpoch 66.039 ms/op 71.055 ms/op 0.93
mainnet_e217614 - capella processJustificationAndFinalization 11.775 us/op 20.200 us/op 0.58
mainnet_e217614 - capella processInactivityUpdates 16.984 ms/op 17.070 ms/op 0.99
mainnet_e217614 - capella processRewardsAndPenalties 245.08 ms/op 228.96 ms/op 1.07
mainnet_e217614 - capella processRegistryUpdates 10.785 us/op 13.488 us/op 0.80
mainnet_e217614 - capella processSlashings 766.00 ns/op 814.00 ns/op 0.94
mainnet_e217614 - capella processEth1DataReset 741.00 ns/op 747.00 ns/op 0.99
mainnet_e217614 - capella processEffectiveBalanceUpdates 6.5861 ms/op 7.3962 ms/op 0.89
mainnet_e217614 - capella processSlashingsReset 1.2480 us/op 2.9510 us/op 0.42
mainnet_e217614 - capella processRandaoMixesReset 2.1240 us/op 3.7880 us/op 0.56
mainnet_e217614 - capella processHistoricalRootsUpdate 706.00 ns/op 848.00 ns/op 0.83
mainnet_e217614 - capella processParticipationFlagUpdates 1.5460 us/op 6.1400 us/op 0.25
mainnet_e217614 - capella afterProcessEpoch 199.40 ms/op 205.72 ms/op 0.97
phase0 processEpoch - mainnet_e58758 281.84 ms/op 406.44 ms/op 0.69
mainnet_e58758 - phase0 beforeProcessEpoch 76.742 ms/op 73.235 ms/op 1.05
mainnet_e58758 - phase0 processJustificationAndFinalization 12.550 us/op 25.108 us/op 0.50
mainnet_e58758 - phase0 processRewardsAndPenalties 28.213 ms/op 31.960 ms/op 0.88
mainnet_e58758 - phase0 processRegistryUpdates 3.6530 us/op 10.691 us/op 0.34
mainnet_e58758 - phase0 processSlashings 773.00 ns/op 1.0100 us/op 0.77
mainnet_e58758 - phase0 processEth1DataReset 746.00 ns/op 932.00 ns/op 0.80
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.3640 ms/op 1.4908 ms/op 0.91
mainnet_e58758 - phase0 processSlashingsReset 2.7810 us/op 5.4200 us/op 0.51
mainnet_e58758 - phase0 processRandaoMixesReset 2.8060 us/op 7.1290 us/op 0.39
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.1520 us/op 947.00 ns/op 1.22
mainnet_e58758 - phase0 processParticipationRecordUpdates 3.1690 us/op 5.6690 us/op 0.56
mainnet_e58758 - phase0 afterProcessEpoch 65.364 ms/op 68.726 ms/op 0.95
phase0 processEffectiveBalanceUpdates - 250000 normalcase 941.31 us/op 1.1064 ms/op 0.85
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.5221 ms/op 2.4053 ms/op 0.63
altair processInactivityUpdates - 250000 normalcase 16.047 ms/op 17.607 ms/op 0.91
altair processInactivityUpdates - 250000 worstcase 15.244 ms/op 16.984 ms/op 0.90
phase0 processRegistryUpdates - 250000 normalcase 5.5470 us/op 10.554 us/op 0.53
phase0 processRegistryUpdates - 250000 badcase_full_deposits 301.54 us/op 332.93 us/op 0.91
phase0 processRegistryUpdates - 250000 worstcase 0.5 105.54 ms/op 122.12 ms/op 0.86
altair processRewardsAndPenalties - 250000 normalcase 44.164 ms/op 39.868 ms/op 1.11
altair processRewardsAndPenalties - 250000 worstcase 44.508 ms/op 45.742 ms/op 0.97
phase0 getAttestationDeltas - 250000 normalcase 6.2979 ms/op 9.8151 ms/op 0.64
phase0 getAttestationDeltas - 250000 worstcase 5.8718 ms/op 6.5492 ms/op 0.90
phase0 processSlashings - 250000 worstcase 91.302 us/op 100.66 us/op 0.91
altair processSyncCommitteeUpdates - 250000 99.540 ms/op 118.00 ms/op 0.84
BeaconState.hashTreeRoot - No change 452.00 ns/op 520.00 ns/op 0.87
BeaconState.hashTreeRoot - 1 full validator 99.021 us/op 147.03 us/op 0.67
BeaconState.hashTreeRoot - 32 full validator 998.54 us/op 1.1281 ms/op 0.89
BeaconState.hashTreeRoot - 512 full validator 9.3495 ms/op 15.177 ms/op 0.62
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 83.584 us/op 173.59 us/op 0.48
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.5843 ms/op 2.0898 ms/op 0.76
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 23.328 ms/op 34.770 ms/op 0.67
BeaconState.hashTreeRoot - 1 balances 88.576 us/op 184.25 us/op 0.48
BeaconState.hashTreeRoot - 32 balances 802.63 us/op 976.17 us/op 0.82
BeaconState.hashTreeRoot - 512 balances 8.0541 ms/op 9.3780 ms/op 0.86
BeaconState.hashTreeRoot - 250000 balances 121.44 ms/op 178.76 ms/op 0.68
aggregationBits - 2048 els - zipIndexesInBitList 19.595 us/op 22.843 us/op 0.86
byteArrayEquals 32 47.903 ns/op 45.292 ns/op 1.06
Buffer.compare 32 16.942 ns/op 15.267 ns/op 1.11
byteArrayEquals 1024 1.2642 us/op 1.2430 us/op 1.02
Buffer.compare 1024 27.102 ns/op 23.607 ns/op 1.15
byteArrayEquals 16384 19.969 us/op 19.514 us/op 1.02
Buffer.compare 16384 171.27 ns/op 174.79 ns/op 0.98
byteArrayEquals 123687377 140.17 ms/op 154.84 ms/op 0.91
Buffer.compare 123687377 5.3408 ms/op 8.2005 ms/op 0.65
byteArrayEquals 32 - diff last byte 44.767 ns/op 48.766 ns/op 0.92
Buffer.compare 32 - diff last byte 14.542 ns/op 16.517 ns/op 0.88
byteArrayEquals 1024 - diff last byte 1.1556 us/op 1.4060 us/op 0.82
Buffer.compare 1024 - diff last byte 22.206 ns/op 24.807 ns/op 0.90
byteArrayEquals 16384 - diff last byte 18.420 us/op 20.754 us/op 0.89
Buffer.compare 16384 - diff last byte 192.82 ns/op 200.17 ns/op 0.96
byteArrayEquals 123687377 - diff last byte 143.11 ms/op 159.15 ms/op 0.90
Buffer.compare 123687377 - diff last byte 5.5181 ms/op 7.0807 ms/op 0.78
byteArrayEquals 32 - random bytes 4.8260 ns/op 5.0000 ns/op 0.97
Buffer.compare 32 - random bytes 15.401 ns/op 15.873 ns/op 0.97
byteArrayEquals 1024 - random bytes 4.8060 ns/op 5.2330 ns/op 0.92
Buffer.compare 1024 - random bytes 15.062 ns/op 15.757 ns/op 0.96
byteArrayEquals 16384 - random bytes 4.7370 ns/op 5.0490 ns/op 0.94
Buffer.compare 16384 - random bytes 15.005 ns/op 15.831 ns/op 0.95
byteArrayEquals 123687377 - random bytes 7.5600 ns/op 8.2600 ns/op 0.92
Buffer.compare 123687377 - random bytes 18.100 ns/op 18.780 ns/op 0.96
regular array get 100000 times 29.826 us/op 31.290 us/op 0.95
wrappedArray get 100000 times 29.379 us/op 31.446 us/op 0.93
arrayWithProxy get 100000 times 10.512 ms/op 9.9351 ms/op 1.06
ssz.Root.equals 42.205 ns/op 46.209 ns/op 0.91
byteArrayEquals 41.056 ns/op 45.193 ns/op 0.91
Buffer.compare 8.5760 ns/op 9.6920 ns/op 0.88
shuffle list - 16384 els 5.1699 ms/op 5.8899 ms/op 0.88
shuffle list - 250000 els 75.939 ms/op 88.429 ms/op 0.86
processSlot - 1 slots 9.9800 us/op 14.721 us/op 0.68
processSlot - 32 slots 2.9017 ms/op 2.2708 ms/op 1.28
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 43.012 ms/op 37.418 ms/op 1.15
getCommitteeAssignments - req 1 vs - 250000 vc 1.6992 ms/op 1.8264 ms/op 0.93
getCommitteeAssignments - req 100 vs - 250000 vc 3.3843 ms/op 3.6356 ms/op 0.93
getCommitteeAssignments - req 1000 vs - 250000 vc 3.6371 ms/op 3.9055 ms/op 0.93
findModifiedValidators - 10000 modified validators 234.37 ms/op 246.42 ms/op 0.95
findModifiedValidators - 1000 modified validators 160.28 ms/op 171.51 ms/op 0.93
findModifiedValidators - 100 modified validators 141.23 ms/op 139.27 ms/op 1.01
findModifiedValidators - 10 modified validators 129.44 ms/op 147.87 ms/op 0.88
findModifiedValidators - 1 modified validators 138.81 ms/op 148.58 ms/op 0.93
findModifiedValidators - no difference 139.14 ms/op 138.61 ms/op 1.00
compare ViewDUs 3.0749 s/op 3.2058 s/op 0.96
compare each validator Uint8Array 1.4373 s/op 1.8981 s/op 0.76
compare ViewDU to Uint8Array 650.83 ms/op 1.0154 s/op 0.64
migrate state 1000000 validators, 24 modified, 0 new 831.47 ms/op 792.50 ms/op 1.05
migrate state 1000000 validators, 1700 modified, 1000 new 1.0724 s/op 1.0032 s/op 1.07
migrate state 1000000 validators, 3400 modified, 2000 new 1.2765 s/op 1.2823 s/op 1.00
migrate state 1500000 validators, 24 modified, 0 new 859.65 ms/op 755.77 ms/op 1.14
migrate state 1500000 validators, 1700 modified, 1000 new 1.0573 s/op 1.1561 s/op 0.91
migrate state 1500000 validators, 3400 modified, 2000 new 1.2398 s/op 1.3287 s/op 0.93
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.8700 ns/op 6.0900 ns/op 0.96
state getBlockRootAtSlot - 250000 vs - 7PWei 824.41 ns/op 387.58 ns/op 2.13
computeProposers - vc 250000 5.8906 ms/op 5.4400 ms/op 1.08
computeEpochShuffling - vc 250000 78.886 ms/op 80.781 ms/op 0.98
getNextSyncCommittee - vc 250000 105.81 ms/op 104.34 ms/op 1.01
computeSigningRoot for AttestationData 28.598 us/op 18.782 us/op 1.52
hash AttestationData serialized data then Buffer.toString(base64) 1.1955 us/op 1.1941 us/op 1.00
toHexString serialized data 771.30 ns/op 768.75 ns/op 1.00
Buffer.toString(base64) 141.06 ns/op 135.13 ns/op 1.04
nodejs block root to RootHex using toHex 116.35 ns/op 121.82 ns/op 0.96
nodejs block root to RootHex using toRootHex 76.345 ns/op 81.046 ns/op 0.94
browser block root to RootHex using the deprecated toHexString 206.73 ns/op 209.63 ns/op 0.99
browser block root to RootHex using toHex 164.72 ns/op 167.95 ns/op 0.98
browser block root to RootHex using toRootHex 146.84 ns/op 146.30 ns/op 1.00

by benchmarkbot/action

@twoeths twoeths marked this pull request as ready for review October 4, 2024 04:42
@twoeths twoeths requested a review from a team as a code owner October 4, 2024 04:42
@wemeetagain wemeetagain merged commit 0d1fd9c into unstable Oct 4, 2024
20 checks passed
@wemeetagain wemeetagain deleted the te/remove_indexed_gossip_queue_avg_time branch October 4, 2024 12:29
@wemeetagain
Copy link
Member

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

2 participants