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: update beacon max-old-space-size to 8192 #6345

Closed
wants to merge 1 commit into from

Conversation

wemeetagain
Copy link
Member

Motivation

With deneb coming up, and lodestar reaching close to its memory limit on mainnet, preemptively bumping the memory limit can mitigate some risk in the case of a nonfinality event.

We will be working on decreasing memory requirements in future releases and hopefully reverting this PR in time.

Description

Bump beacon max-old-space-size to 8192

@wemeetagain wemeetagain requested a review from a team as a code owner January 23, 2024 15:33
@wemeetagain
Copy link
Member Author

duplicate of #6343, closing

@wemeetagain wemeetagain deleted the cayman/bump-mem-limit branch January 23, 2024 15:34
Copy link
Contributor

⚠️ Performance Alert ⚠️

Possible performance regression was detected for some benchmarks.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold.

Benchmark suite Current: 40e6b1a Previous: 398be86 Ratio
forkChoice updateHead vc 600000 bc 64 eq 300000 93.868 ms/op 20.816 ms/op 4.51
Full benchmark results
Benchmark suite Current: 40e6b1a Previous: 398be86 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.0696 ms/op 634.40 us/op 1.69
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 128.54 us/op 94.987 us/op 1.35
BLS verify - blst-native 1.4421 ms/op 1.4008 ms/op 1.03
BLS verifyMultipleSignatures 3 - blst-native 3.0923 ms/op 2.8635 ms/op 1.08
BLS verifyMultipleSignatures 8 - blst-native 6.6269 ms/op 6.2760 ms/op 1.06
BLS verifyMultipleSignatures 32 - blst-native 24.226 ms/op 23.453 ms/op 1.03
BLS verifyMultipleSignatures 64 - blst-native 48.104 ms/op 47.057 ms/op 1.02
BLS verifyMultipleSignatures 128 - blst-native 94.700 ms/op 91.182 ms/op 1.04
BLS deserializing 10000 signatures 977.67 ms/op 952.28 ms/op 1.03
BLS deserializing 100000 signatures 9.9787 s/op 9.6330 s/op 1.04
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.5815 ms/op 1.5177 ms/op 1.04
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.6967 ms/op 1.6346 ms/op 1.04
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.6705 ms/op 2.7768 ms/op 0.96
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.9172 ms/op 3.6557 ms/op 1.07
BLS verifyMultipleSignatures - same message - 128 - blst-native 6.6931 ms/op 6.1731 ms/op 1.08
BLS aggregatePubkeys 32 - blst-native 30.260 us/op 28.904 us/op 1.05
BLS aggregatePubkeys 128 - blst-native 118.70 us/op 106.35 us/op 1.12
getAttestationsForBlock 67.306 ms/op 55.824 ms/op 1.21
getSlashingsAndExits - default max 312.15 us/op 167.28 us/op 1.87
getSlashingsAndExits - 2k 708.41 us/op 501.40 us/op 1.41
proposeBlockBody type=full, size=empty 9.4003 ms/op 7.2484 ms/op 1.30
isKnown best case - 1 super set check 771.00 ns/op 616.00 ns/op 1.25
isKnown normal case - 2 super set checks 779.00 ns/op 639.00 ns/op 1.22
isKnown worse case - 16 super set checks 807.00 ns/op 570.00 ns/op 1.42
CheckpointStateCache - add get delete 8.2890 us/op 7.4970 us/op 1.11
validate api signedAggregateAndProof - struct 3.3349 ms/op 3.0684 ms/op 1.09
validate gossip signedAggregateAndProof - struct 3.3366 ms/op 3.1282 ms/op 1.07
validate gossip attestation - vc 640000 1.6169 ms/op 1.4892 ms/op 1.09
batch validate gossip attestation - vc 640000 - chunk 32 187.78 us/op 177.87 us/op 1.06
batch validate gossip attestation - vc 640000 - chunk 64 163.16 us/op 169.36 us/op 0.96
batch validate gossip attestation - vc 640000 - chunk 128 154.36 us/op 165.39 us/op 0.93
batch validate gossip attestation - vc 640000 - chunk 256 152.24 us/op 165.70 us/op 0.92
pickEth1Vote - no votes 1.4453 ms/op 1.4265 ms/op 1.01
pickEth1Vote - max votes 12.316 ms/op 19.109 ms/op 0.64
pickEth1Vote - Eth1Data hashTreeRoot value x2048 22.310 ms/op 22.488 ms/op 0.99
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 34.652 ms/op 32.044 ms/op 1.08
pickEth1Vote - Eth1Data fastSerialize value x2048 806.05 us/op 784.01 us/op 1.03
pickEth1Vote - Eth1Data fastSerialize tree x2048 9.2114 ms/op 7.4214 ms/op 1.24
bytes32 toHexString 795.00 ns/op 1.1050 us/op 0.72
bytes32 Buffer.toString(hex) 359.00 ns/op 423.00 ns/op 0.85
bytes32 Buffer.toString(hex) from Uint8Array 617.00 ns/op 671.00 ns/op 0.92
bytes32 Buffer.toString(hex) + 0x 352.00 ns/op 498.00 ns/op 0.71
Object access 1 prop 0.24200 ns/op 0.30700 ns/op 0.79
Map access 1 prop 0.17700 ns/op 0.19100 ns/op 0.93
Object get x1000 8.7320 ns/op 10.236 ns/op 0.85
Map get x1000 0.96400 ns/op 1.0290 ns/op 0.94
Object set x1000 77.629 ns/op 100.07 ns/op 0.78
Map set x1000 57.246 ns/op 65.569 ns/op 0.87
Return object 10000 times 0.28230 ns/op 0.33640 ns/op 0.84
Throw Error 10000 times 4.2438 us/op 4.7531 us/op 0.89
fastMsgIdFn sha256 / 200 bytes 3.6570 us/op 4.1380 us/op 0.88
fastMsgIdFn h32 xxhash / 200 bytes 370.00 ns/op 475.00 ns/op 0.78
fastMsgIdFn h64 xxhash / 200 bytes 424.00 ns/op 626.00 ns/op 0.68
fastMsgIdFn sha256 / 1000 bytes 12.702 us/op 14.096 us/op 0.90
fastMsgIdFn h32 xxhash / 1000 bytes 538.00 ns/op 603.00 ns/op 0.89
fastMsgIdFn h64 xxhash / 1000 bytes 572.00 ns/op 659.00 ns/op 0.87
fastMsgIdFn sha256 / 10000 bytes 118.79 us/op 114.61 us/op 1.04
fastMsgIdFn h32 xxhash / 10000 bytes 2.2140 us/op 2.2770 us/op 0.97
fastMsgIdFn h64 xxhash / 10000 bytes 1.5650 us/op 1.5460 us/op 1.01
send data - 1000 256B messages 23.916 ms/op 29.926 ms/op 0.80
send data - 1000 512B messages 30.772 ms/op 46.719 ms/op 0.66
send data - 1000 1024B messages 45.854 ms/op 46.002 ms/op 1.00
send data - 1000 1200B messages 29.566 ms/op 48.539 ms/op 0.61
send data - 1000 2048B messages 54.511 ms/op 73.687 ms/op 0.74
send data - 1000 4096B messages 55.063 ms/op 63.367 ms/op 0.87
send data - 1000 16384B messages 149.91 ms/op 190.91 ms/op 0.79
send data - 1000 65536B messages 615.79 ms/op 754.39 ms/op 0.82
enrSubnets - fastDeserialize 64 bits 2.0760 us/op 2.8450 us/op 0.73
enrSubnets - ssz BitVector 64 bits 678.00 ns/op 688.00 ns/op 0.99
enrSubnets - fastDeserialize 4 bits 283.00 ns/op 288.00 ns/op 0.98
enrSubnets - ssz BitVector 4 bits 776.00 ns/op 660.00 ns/op 1.18
prioritizePeers score -10:0 att 32-0.1 sync 2-0 153.53 us/op 155.45 us/op 0.99
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 179.53 us/op 209.03 us/op 0.86
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 250.79 us/op 229.84 us/op 1.09
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 413.02 us/op 385.87 us/op 1.07
prioritizePeers score 0:0 att 64-1 sync 4-1 452.65 us/op 481.07 us/op 0.94
array of 16000 items push then shift 1.9764 us/op 1.8940 us/op 1.04
LinkedList of 16000 items push then shift 11.131 ns/op 12.285 ns/op 0.91
array of 16000 items push then pop 163.67 ns/op 134.41 ns/op 1.22
LinkedList of 16000 items push then pop 10.203 ns/op 10.075 ns/op 1.01
array of 24000 items push then shift 2.7787 us/op 3.1156 us/op 0.89
LinkedList of 24000 items push then shift 11.358 ns/op 11.180 ns/op 1.02
array of 24000 items push then pop 209.07 ns/op 176.82 ns/op 1.18
LinkedList of 24000 items push then pop 10.216 ns/op 9.6230 ns/op 1.06
intersect bitArray bitLen 8 7.5170 ns/op 7.3860 ns/op 1.02
intersect array and set length 8 114.16 ns/op 89.607 ns/op 1.27
intersect bitArray bitLen 128 42.968 ns/op 37.425 ns/op 1.15
intersect array and set length 128 1.2220 us/op 1.1631 us/op 1.05
bitArray.getTrueBitIndexes() bitLen 128 2.1430 us/op 1.8840 us/op 1.14
bitArray.getTrueBitIndexes() bitLen 248 3.6950 us/op 3.3470 us/op 1.10
bitArray.getTrueBitIndexes() bitLen 512 7.3250 us/op 6.8030 us/op 1.08
Buffer.concat 32 items 1.2150 us/op 1.1570 us/op 1.05
Uint8Array.set 32 items 2.4300 us/op 2.7160 us/op 0.89
Set add up to 64 items then delete first 5.8364 us/op 5.3898 us/op 1.08
OrderedSet add up to 64 items then delete first 7.9715 us/op 7.1415 us/op 1.12
Set add up to 64 items then delete last 6.4589 us/op 5.7749 us/op 1.12
OrderedSet add up to 64 items then delete last 8.6513 us/op 7.4197 us/op 1.17
Set add up to 64 items then delete middle 6.3615 us/op 5.6392 us/op 1.13
OrderedSet add up to 64 items then delete middle 10.569 us/op 9.5396 us/op 1.11
Set add up to 128 items then delete first 12.231 us/op 12.176 us/op 1.00
OrderedSet add up to 128 items then delete first 17.353 us/op 17.092 us/op 1.02
Set add up to 128 items then delete last 12.180 us/op 11.598 us/op 1.05
OrderedSet add up to 128 items then delete last 16.626 us/op 15.382 us/op 1.08
Set add up to 128 items then delete middle 12.700 us/op 11.666 us/op 1.09
OrderedSet add up to 128 items then delete middle 22.679 us/op 20.848 us/op 1.09
Set add up to 256 items then delete first 25.968 us/op 23.618 us/op 1.10
OrderedSet add up to 256 items then delete first 38.900 us/op 32.627 us/op 1.19
Set add up to 256 items then delete last 26.246 us/op 22.484 us/op 1.17
OrderedSet add up to 256 items then delete last 37.176 us/op 29.884 us/op 1.24
Set add up to 256 items then delete middle 28.945 us/op 23.560 us/op 1.23
OrderedSet add up to 256 items then delete middle 66.657 us/op 55.496 us/op 1.20
transfer serialized Status (84 B) 2.4980 us/op 1.9910 us/op 1.25
copy serialized Status (84 B) 1.9140 us/op 1.5110 us/op 1.27
transfer serialized SignedVoluntaryExit (112 B) 2.5680 us/op 2.1220 us/op 1.21
copy serialized SignedVoluntaryExit (112 B) 2.0910 us/op 1.5740 us/op 1.33
transfer serialized ProposerSlashing (416 B) 3.5010 us/op 3.0630 us/op 1.14
copy serialized ProposerSlashing (416 B) 2.7710 us/op 2.9460 us/op 0.94
transfer serialized Attestation (485 B) 4.9480 us/op 2.8190 us/op 1.76
copy serialized Attestation (485 B) 3.4810 us/op 2.3180 us/op 1.50
transfer serialized AttesterSlashing (33232 B) 3.3100 us/op 2.3020 us/op 1.44
copy serialized AttesterSlashing (33232 B) 14.162 us/op 8.9420 us/op 1.58
transfer serialized Small SignedBeaconBlock (128000 B) 5.6760 us/op 2.7760 us/op 2.04
copy serialized Small SignedBeaconBlock (128000 B) 43.848 us/op 29.048 us/op 1.51
transfer serialized Avg SignedBeaconBlock (200000 B) 6.2670 us/op 3.3090 us/op 1.89
copy serialized Avg SignedBeaconBlock (200000 B) 62.673 us/op 45.187 us/op 1.39
transfer serialized BlobsSidecar (524380 B) 7.6130 us/op 3.5620 us/op 2.14
copy serialized BlobsSidecar (524380 B) 190.35 us/op 197.35 us/op 0.96
transfer serialized Big SignedBeaconBlock (1000000 B) 7.5970 us/op 4.0420 us/op 1.88
copy serialized Big SignedBeaconBlock (1000000 B) 408.18 us/op 391.87 us/op 1.04
pass gossip attestations to forkchoice per slot 7.5671 ms/op 4.3567 ms/op 1.74
forkChoice updateHead vc 100000 bc 64 eq 0 1.1555 ms/op 705.73 us/op 1.64
forkChoice updateHead vc 600000 bc 64 eq 0 9.7799 ms/op 6.7301 ms/op 1.45
forkChoice updateHead vc 1000000 bc 64 eq 0 11.339 ms/op 8.1654 ms/op 1.39
forkChoice updateHead vc 600000 bc 320 eq 0 5.6988 ms/op 4.4903 ms/op 1.27
forkChoice updateHead vc 600000 bc 1200 eq 0 5.8348 ms/op 4.6307 ms/op 1.26
forkChoice updateHead vc 600000 bc 7200 eq 0 6.9498 ms/op 5.5593 ms/op 1.25
forkChoice updateHead vc 600000 bc 64 eq 1000 14.087 ms/op 11.578 ms/op 1.22
forkChoice updateHead vc 600000 bc 64 eq 10000 21.254 ms/op 13.024 ms/op 1.63
forkChoice updateHead vc 600000 bc 64 eq 300000 93.868 ms/op 20.816 ms/op 4.51
computeDeltas 500000 validators 300 proto nodes 9.2918 ms/op 7.3024 ms/op 1.27
computeDeltas 500000 validators 1200 proto nodes 9.6667 ms/op 7.1152 ms/op 1.36
computeDeltas 500000 validators 7200 proto nodes 9.3402 ms/op 6.8017 ms/op 1.37
computeDeltas 750000 validators 300 proto nodes 13.255 ms/op 10.460 ms/op 1.27
computeDeltas 750000 validators 1200 proto nodes 12.335 ms/op 10.519 ms/op 1.17
computeDeltas 750000 validators 7200 proto nodes 11.303 ms/op 10.596 ms/op 1.07
computeDeltas 1400000 validators 300 proto nodes 21.581 ms/op 20.052 ms/op 1.08
computeDeltas 1400000 validators 1200 proto nodes 22.962 ms/op 21.162 ms/op 1.09
computeDeltas 1400000 validators 7200 proto nodes 23.140 ms/op 20.947 ms/op 1.10
computeDeltas 2100000 validators 300 proto nodes 33.514 ms/op 31.098 ms/op 1.08
computeDeltas 2100000 validators 1200 proto nodes 32.640 ms/op 34.531 ms/op 0.95
computeDeltas 2100000 validators 7200 proto nodes 32.053 ms/op 31.529 ms/op 1.02
altair processAttestation - 250000 vs - 7PWei normalcase 3.8592 ms/op 2.5935 ms/op 1.49
altair processAttestation - 250000 vs - 7PWei worstcase 5.1937 ms/op 3.9495 ms/op 1.32
altair processAttestation - setStatus - 1/6 committees join 208.38 us/op 193.19 us/op 1.08
altair processAttestation - setStatus - 1/3 committees join 390.79 us/op 373.80 us/op 1.05
altair processAttestation - setStatus - 1/2 committees join 525.19 us/op 534.05 us/op 0.98
altair processAttestation - setStatus - 2/3 committees join 650.52 us/op 654.99 us/op 0.99
altair processAttestation - setStatus - 4/5 committees join 857.03 us/op 858.92 us/op 1.00
altair processAttestation - setStatus - 100% committees join 1.0308 ms/op 1.0021 ms/op 1.03
altair processBlock - 250000 vs - 7PWei normalcase 11.083 ms/op 10.122 ms/op 1.09
altair processBlock - 250000 vs - 7PWei normalcase hashState 39.359 ms/op 35.514 ms/op 1.11
altair processBlock - 250000 vs - 7PWei worstcase 49.264 ms/op 45.743 ms/op 1.08
altair processBlock - 250000 vs - 7PWei worstcase hashState 106.09 ms/op 102.27 ms/op 1.04
phase0 processBlock - 250000 vs - 7PWei normalcase 3.3157 ms/op 2.9177 ms/op 1.14
phase0 processBlock - 250000 vs - 7PWei worstcase 34.985 ms/op 31.999 ms/op 1.09
altair processEth1Data - 250000 vs - 7PWei normalcase 648.55 us/op 584.65 us/op 1.11
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 9.7990 us/op 13.991 us/op 0.70
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 80.273 us/op 75.645 us/op 1.06
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 28.615 us/op 35.764 us/op 0.80
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 13.338 us/op 12.771 us/op 1.04
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 191.06 us/op 191.33 us/op 1.00
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.4446 ms/op 1.4062 ms/op 1.03
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.9980 ms/op 1.7804 ms/op 1.12
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 2.1297 ms/op 2.0526 ms/op 1.04
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 4.4948 ms/op 4.4584 ms/op 1.01
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 3.0069 ms/op 2.7254 ms/op 1.10
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 6.4237 ms/op 5.6375 ms/op 1.14
Tree 40 250000 create 431.90 ms/op 366.95 ms/op 1.18
Tree 40 250000 get(125000) 226.53 ns/op 218.71 ns/op 1.04
Tree 40 250000 set(125000) 1.1617 us/op 1.1221 us/op 1.04
Tree 40 250000 toArray() 24.048 ms/op 23.271 ms/op 1.03
Tree 40 250000 iterate all - toArray() + loop 25.429 ms/op 23.684 ms/op 1.07
Tree 40 250000 iterate all - get(i) 79.267 ms/op 73.424 ms/op 1.08
MutableVector 250000 create 17.668 ms/op 14.794 ms/op 1.19
MutableVector 250000 get(125000) 7.4800 ns/op 7.0400 ns/op 1.06
MutableVector 250000 set(125000) 341.05 ns/op 296.40 ns/op 1.15
MutableVector 250000 toArray() 4.1682 ms/op 3.8275 ms/op 1.09
MutableVector 250000 iterate all - toArray() + loop 4.2966 ms/op 3.7158 ms/op 1.16
MutableVector 250000 iterate all - get(i) 1.6813 ms/op 1.5600 ms/op 1.08
Array 250000 create 3.4924 ms/op 3.7376 ms/op 0.93
Array 250000 clone - spread 1.4256 ms/op 1.4291 ms/op 1.00
Array 250000 get(125000) 1.1980 ns/op 1.1660 ns/op 1.03
Array 250000 set(125000) 4.7560 ns/op 4.3190 ns/op 1.10
Array 250000 iterate all - loop 176.54 us/op 175.28 us/op 1.01
effectiveBalanceIncrements clone Uint8Array 300000 43.073 us/op 46.337 us/op 0.93
effectiveBalanceIncrements clone MutableVector 300000 482.00 ns/op 454.00 ns/op 1.06
effectiveBalanceIncrements rw all Uint8Array 300000 227.86 us/op 210.25 us/op 1.08
effectiveBalanceIncrements rw all MutableVector 300000 108.00 ms/op 115.30 ms/op 0.94
phase0 afterProcessEpoch - 250000 vs - 7PWei 125.69 ms/op 119.06 ms/op 1.06
phase0 beforeProcessEpoch - 250000 vs - 7PWei 54.726 ms/op 59.314 ms/op 0.92
altair processEpoch - mainnet_e81889 640.97 ms/op 554.34 ms/op 1.16
mainnet_e81889 - altair beforeProcessEpoch 100.65 ms/op 102.27 ms/op 0.98
mainnet_e81889 - altair processJustificationAndFinalization 28.169 us/op 21.833 us/op 1.29
mainnet_e81889 - altair processInactivityUpdates 7.4802 ms/op 6.1338 ms/op 1.22
mainnet_e81889 - altair processRewardsAndPenalties 55.136 ms/op 69.568 ms/op 0.79
mainnet_e81889 - altair processRegistryUpdates 4.0580 us/op 3.2060 us/op 1.27
mainnet_e81889 - altair processSlashings 1.0660 us/op 670.00 ns/op 1.59
mainnet_e81889 - altair processEth1DataReset 771.00 ns/op 661.00 ns/op 1.17
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.6074 ms/op 1.7796 ms/op 0.90
mainnet_e81889 - altair processSlashingsReset 4.0530 us/op 4.0230 us/op 1.01
mainnet_e81889 - altair processRandaoMixesReset 5.8870 us/op 6.5930 us/op 0.89
mainnet_e81889 - altair processHistoricalRootsUpdate 680.00 ns/op 1.1530 us/op 0.59
mainnet_e81889 - altair processParticipationFlagUpdates 1.8790 us/op 1.9060 us/op 0.99
mainnet_e81889 - altair processSyncCommitteeUpdates 1.2160 us/op 1.8280 us/op 0.67
mainnet_e81889 - altair afterProcessEpoch 129.29 ms/op 127.66 ms/op 1.01
capella processEpoch - mainnet_e217614 2.5364 s/op 2.7998 s/op 0.91
mainnet_e217614 - capella beforeProcessEpoch 565.86 ms/op 554.21 ms/op 1.02
mainnet_e217614 - capella processJustificationAndFinalization 27.876 us/op 18.010 us/op 1.55
mainnet_e217614 - capella processInactivityUpdates 32.711 ms/op 23.638 ms/op 1.38
mainnet_e217614 - capella processRewardsAndPenalties 475.54 ms/op 471.74 ms/op 1.01
mainnet_e217614 - capella processRegistryUpdates 33.171 us/op 28.836 us/op 1.15
mainnet_e217614 - capella processSlashings 945.00 ns/op 809.00 ns/op 1.17
mainnet_e217614 - capella processEth1DataReset 625.00 ns/op 682.00 ns/op 0.92
mainnet_e217614 - capella processEffectiveBalanceUpdates 6.7258 ms/op 5.9825 ms/op 1.12
mainnet_e217614 - capella processSlashingsReset 6.6780 us/op 4.0040 us/op 1.67
mainnet_e217614 - capella processRandaoMixesReset 8.9260 us/op 6.3290 us/op 1.41
mainnet_e217614 - capella processHistoricalRootsUpdate 996.00 ns/op 713.00 ns/op 1.40
mainnet_e217614 - capella processParticipationFlagUpdates 2.5670 us/op 2.5520 us/op 1.01
mainnet_e217614 - capella afterProcessEpoch 366.01 ms/op 322.83 ms/op 1.13
phase0 processEpoch - mainnet_e58758 550.69 ms/op 474.03 ms/op 1.16
mainnet_e58758 - phase0 beforeProcessEpoch 168.44 ms/op 160.26 ms/op 1.05
mainnet_e58758 - phase0 processJustificationAndFinalization 18.981 us/op 21.771 us/op 0.87
mainnet_e58758 - phase0 processRewardsAndPenalties 44.545 ms/op 57.036 ms/op 0.78
mainnet_e58758 - phase0 processRegistryUpdates 17.484 us/op 14.251 us/op 1.23
mainnet_e58758 - phase0 processSlashings 1.0150 us/op 555.00 ns/op 1.83
mainnet_e58758 - phase0 processEth1DataReset 538.00 ns/op 699.00 ns/op 0.77
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.6082 ms/op 1.6091 ms/op 1.00
mainnet_e58758 - phase0 processSlashingsReset 4.9870 us/op 3.3130 us/op 1.51
mainnet_e58758 - phase0 processRandaoMixesReset 6.1980 us/op 5.4720 us/op 1.13
mainnet_e58758 - phase0 processHistoricalRootsUpdate 629.00 ns/op 436.00 ns/op 1.44
mainnet_e58758 - phase0 processParticipationRecordUpdates 8.2160 us/op 4.0820 us/op 2.01
mainnet_e58758 - phase0 afterProcessEpoch 105.63 ms/op 97.623 ms/op 1.08
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.4845 ms/op 1.4386 ms/op 1.03
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.6970 ms/op 1.9660 ms/op 0.86
altair processInactivityUpdates - 250000 normalcase 26.351 ms/op 30.365 ms/op 0.87
altair processInactivityUpdates - 250000 worstcase 32.389 ms/op 25.117 ms/op 1.29
phase0 processRegistryUpdates - 250000 normalcase 15.110 us/op 11.459 us/op 1.32
phase0 processRegistryUpdates - 250000 badcase_full_deposits 541.99 us/op 757.55 us/op 0.72
phase0 processRegistryUpdates - 250000 worstcase 0.5 180.99 ms/op 131.85 ms/op 1.37
altair processRewardsAndPenalties - 250000 normalcase 67.264 ms/op 62.347 ms/op 1.08
altair processRewardsAndPenalties - 250000 worstcase 69.517 ms/op 55.388 ms/op 1.26
phase0 getAttestationDeltas - 250000 normalcase 13.161 ms/op 9.8583 ms/op 1.33
phase0 getAttestationDeltas - 250000 worstcase 13.965 ms/op 11.671 ms/op 1.20
phase0 processSlashings - 250000 worstcase 106.45 us/op 120.06 us/op 0.89
altair processSyncCommitteeUpdates - 250000 197.93 ms/op 169.18 ms/op 1.17
BeaconState.hashTreeRoot - No change 796.00 ns/op 461.00 ns/op 1.73
BeaconState.hashTreeRoot - 1 full validator 175.27 us/op 126.71 us/op 1.38
BeaconState.hashTreeRoot - 32 full validator 1.7675 ms/op 1.3308 ms/op 1.33
BeaconState.hashTreeRoot - 512 full validator 24.653 ms/op 21.931 ms/op 1.12
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 237.94 us/op 219.69 us/op 1.08
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.5797 ms/op 2.1282 ms/op 1.21
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 31.373 ms/op 28.349 ms/op 1.11
BeaconState.hashTreeRoot - 1 balances 148.48 us/op 142.97 us/op 1.04
BeaconState.hashTreeRoot - 32 balances 1.2151 ms/op 1.4945 ms/op 0.81
BeaconState.hashTreeRoot - 512 balances 12.368 ms/op 14.408 ms/op 0.86
BeaconState.hashTreeRoot - 250000 balances 203.40 ms/op 212.45 ms/op 0.96
aggregationBits - 2048 els - zipIndexesInBitList 20.803 us/op 20.081 us/op 1.04
byteArrayEquals 32 80.140 ns/op 81.011 ns/op 0.99
Buffer.compare 32 59.280 ns/op 57.855 ns/op 1.02
byteArrayEquals 1024 2.1940 us/op 2.3551 us/op 0.93
Buffer.compare 1024 74.883 ns/op 80.450 ns/op 0.93
byteArrayEquals 16384 34.754 us/op 37.273 us/op 0.93
Buffer.compare 16384 269.70 ns/op 281.78 ns/op 0.96
byteArrayEquals 123687377 279.17 ms/op 266.39 ms/op 1.05
Buffer.compare 123687377 8.9221 ms/op 8.0518 ms/op 1.11
byteArrayEquals 32 - diff last byte 85.295 ns/op 84.478 ns/op 1.01
Buffer.compare 32 - diff last byte 64.938 ns/op 60.722 ns/op 1.07
byteArrayEquals 1024 - diff last byte 2.3163 us/op 2.1198 us/op 1.09
Buffer.compare 1024 - diff last byte 80.939 ns/op 75.149 ns/op 1.08
byteArrayEquals 16384 - diff last byte 36.148 us/op 34.258 us/op 1.06
Buffer.compare 16384 - diff last byte 314.76 ns/op 283.17 ns/op 1.11
byteArrayEquals 123687377 - diff last byte 286.19 ms/op 256.30 ms/op 1.12
Buffer.compare 123687377 - diff last byte 15.056 ms/op 6.6865 ms/op 2.25
byteArrayEquals 32 - random bytes 7.8680 ns/op 5.4440 ns/op 1.45
Buffer.compare 32 - random bytes 79.106 ns/op 63.056 ns/op 1.25
byteArrayEquals 1024 - random bytes 7.6940 ns/op 5.4050 ns/op 1.42
Buffer.compare 1024 - random bytes 84.580 ns/op 62.213 ns/op 1.36
byteArrayEquals 16384 - random bytes 7.5080 ns/op 5.3970 ns/op 1.39
Buffer.compare 16384 - random bytes 72.834 ns/op 61.795 ns/op 1.18
byteArrayEquals 123687377 - random bytes 23.090 ns/op 8.9500 ns/op 2.58
Buffer.compare 123687377 - random bytes 94.670 ns/op 66.270 ns/op 1.43
regular array get 100000 times 61.142 us/op 45.555 us/op 1.34
wrappedArray get 100000 times 57.970 us/op 45.738 us/op 1.27
arrayWithProxy get 100000 times 21.117 ms/op 14.470 ms/op 1.46
ssz.Root.equals 66.906 ns/op 55.826 ns/op 1.20
byteArrayEquals 75.512 ns/op 54.400 ns/op 1.39
Buffer.compare 15.657 ns/op 11.497 ns/op 1.36
shuffle list - 16384 els 8.1739 ms/op 7.0133 ms/op 1.17
shuffle list - 250000 els 130.23 ms/op 102.73 ms/op 1.27
processSlot - 1 slots 40.572 us/op 15.688 us/op 2.59
processSlot - 32 slots 5.7801 ms/op 3.0100 ms/op 1.92
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 87.997 ms/op 59.020 ms/op 1.49
getCommitteeAssignments - req 1 vs - 250000 vc 2.7833 ms/op 2.5861 ms/op 1.08
getCommitteeAssignments - req 100 vs - 250000 vc 4.2164 ms/op 3.7728 ms/op 1.12
getCommitteeAssignments - req 1000 vs - 250000 vc 4.5914 ms/op 4.1600 ms/op 1.10
findModifiedValidators - 10000 modified validators 715.39 ms/op 556.18 ms/op 1.29
findModifiedValidators - 1000 modified validators 581.42 ms/op 439.29 ms/op 1.32
findModifiedValidators - 100 modified validators 584.05 ms/op 437.62 ms/op 1.33
findModifiedValidators - 10 modified validators 610.56 ms/op 431.84 ms/op 1.41
findModifiedValidators - 1 modified validators 670.87 ms/op 403.82 ms/op 1.66
findModifiedValidators - no difference 604.60 ms/op 417.90 ms/op 1.45
compare ViewDUs 5.3910 s/op 4.9680 s/op 1.09
compare each validator Uint8Array 2.0333 s/op 1.7215 s/op 1.18
compare ViewDU to Uint8Array 1.5975 s/op 1.3202 s/op 1.21
migrate state 1000000 validators, 24 modified, 0 new 944.53 ms/op 836.06 ms/op 1.13
migrate state 1000000 validators, 1700 modified, 1000 new 1.2937 s/op 1.2018 s/op 1.08
migrate state 1000000 validators, 3400 modified, 2000 new 1.5100 s/op 1.4794 s/op 1.02
migrate state 1500000 validators, 24 modified, 0 new 812.43 ms/op 887.66 ms/op 0.92
migrate state 1500000 validators, 1700 modified, 1000 new 1.1424 s/op 1.2396 s/op 0.92
migrate state 1500000 validators, 3400 modified, 2000 new 1.3954 s/op 1.4686 s/op 0.95
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.2100 ns/op 4.9800 ns/op 1.05
state getBlockRootAtSlot - 250000 vs - 7PWei 936.63 ns/op 663.60 ns/op 1.41
computeProposers - vc 250000 9.9784 ms/op 9.7328 ms/op 1.03
computeEpochShuffling - vc 250000 109.70 ms/op 110.61 ms/op 0.99
getNextSyncCommittee - vc 250000 179.94 ms/op 177.89 ms/op 1.01
computeSigningRoot for AttestationData 27.045 us/op 34.397 us/op 0.79
hash AttestationData serialized data then Buffer.toString(base64) 2.6206 us/op 2.4392 us/op 1.07
toHexString serialized data 1.3898 us/op 1.1957 us/op 1.16
Buffer.toString(base64) 294.19 ns/op 247.77 ns/op 1.19

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