Skip to content

feat: increase default gas limit to 45M#8024

Merged
wemeetagain merged 1 commit intounstablefrom
nflaig/increase-gas-limit-45m
Jul 1, 2025
Merged

feat: increase default gas limit to 45M#8024
wemeetagain merged 1 commit intounstablefrom
nflaig/increase-gas-limit-45m

Conversation

@nflaig
Copy link
Member

@nflaig nflaig commented Jun 29, 2025

Motivation

From https://x.com/vdWijden/status/1939234101631856969

Over the last couple of days, all major @ethereum clients signalled that they consider a move to 45M gas per block safe.

We should make it easy for users and just bump the default. 45M seems like a reasonable increase for now.

Description

Increase default gas limit to 45M

Same as #7304

@nflaig nflaig requested a review from a team as a code owner June 29, 2025 18:24
@nflaig nflaig added this to the v1.32.0 milestone Jun 29, 2025
@codecov
Copy link

codecov bot commented Jun 29, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 55.68%. Comparing base (db77aaa) to head (44a767c).
Report is 2 commits behind head on unstable.

Additional details and impacted files
@@             Coverage Diff              @@
##           unstable    #8024      +/-   ##
============================================
- Coverage     55.69%   55.68%   -0.01%     
============================================
  Files           834      834              
  Lines         59461    59461              
  Branches       4586     4584       -2     
============================================
- Hits          33116    33113       -3     
- Misses        26278    26281       +3     
  Partials         67       67              
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 5c114a2 Previous: db77aaa Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 750.14 us/op 945.45 us/op 0.79
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 30.387 us/op 34.572 us/op 0.88
BLS verify - blst 885.99 us/op 832.51 us/op 1.06
BLS verifyMultipleSignatures 3 - blst 1.3048 ms/op 1.1891 ms/op 1.10
BLS verifyMultipleSignatures 8 - blst 2.2546 ms/op 1.6492 ms/op 1.37
BLS verifyMultipleSignatures 32 - blst 4.3896 ms/op 4.8553 ms/op 0.90
BLS verifyMultipleSignatures 64 - blst 8.1985 ms/op 9.0072 ms/op 0.91
BLS verifyMultipleSignatures 128 - blst 15.763 ms/op 17.269 ms/op 0.91
BLS deserializing 10000 signatures 614.35 ms/op 680.81 ms/op 0.90
BLS deserializing 100000 signatures 6.1588 s/op 6.9822 s/op 0.88
BLS verifyMultipleSignatures - same message - 3 - blst 947.27 us/op 902.35 us/op 1.05
BLS verifyMultipleSignatures - same message - 8 - blst 1.0776 ms/op 1.0474 ms/op 1.03
BLS verifyMultipleSignatures - same message - 32 - blst 1.7250 ms/op 1.7137 ms/op 1.01
BLS verifyMultipleSignatures - same message - 64 - blst 2.4521 ms/op 2.6063 ms/op 0.94
BLS verifyMultipleSignatures - same message - 128 - blst 4.0085 ms/op 4.3364 ms/op 0.92
BLS aggregatePubkeys 32 - blst 17.377 us/op 19.871 us/op 0.87
BLS aggregatePubkeys 128 - blst 60.796 us/op 71.081 us/op 0.86
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 45.774 ms/op 52.680 ms/op 0.87
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 42.870 ms/op 47.500 ms/op 0.90
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 39.494 ms/op 34.497 ms/op 1.14
getSlashingsAndExits - default max 50.696 us/op 74.177 us/op 0.68
getSlashingsAndExits - 2k 209.93 us/op 293.62 us/op 0.71
proposeBlockBody type=full, size=empty 5.1805 ms/op 5.6177 ms/op 0.92
isKnown best case - 1 super set check 393.00 ns/op 217.00 ns/op 1.81
isKnown normal case - 2 super set checks 399.00 ns/op 213.00 ns/op 1.87
isKnown worse case - 16 super set checks 398.00 ns/op 214.00 ns/op 1.86
InMemoryCheckpointStateCache - add get delete 2.3860 us/op 2.4560 us/op 0.97
validate api signedAggregateAndProof - struct 1.9371 ms/op 1.4211 ms/op 1.36
validate gossip signedAggregateAndProof - struct 1.9377 ms/op 1.5822 ms/op 1.22
batch validate gossip attestation - vc 640000 - chunk 32 107.87 us/op 117.01 us/op 0.92
batch validate gossip attestation - vc 640000 - chunk 64 92.846 us/op 102.13 us/op 0.91
batch validate gossip attestation - vc 640000 - chunk 128 85.158 us/op 94.591 us/op 0.90
batch validate gossip attestation - vc 640000 - chunk 256 82.529 us/op 97.555 us/op 0.85
pickEth1Vote - no votes 811.44 us/op 948.08 us/op 0.86
pickEth1Vote - max votes 5.3666 ms/op 5.8682 ms/op 0.91
pickEth1Vote - Eth1Data hashTreeRoot value x2048 10.065 ms/op 11.467 ms/op 0.88
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 14.517 ms/op 15.712 ms/op 0.92
pickEth1Vote - Eth1Data fastSerialize value x2048 370.24 us/op 447.18 us/op 0.83
pickEth1Vote - Eth1Data fastSerialize tree x2048 2.3310 ms/op 2.1419 ms/op 1.09
bytes32 toHexString 525.00 ns/op 372.00 ns/op 1.41
bytes32 Buffer.toString(hex) 397.00 ns/op 256.00 ns/op 1.55
bytes32 Buffer.toString(hex) from Uint8Array 469.00 ns/op 340.00 ns/op 1.38
bytes32 Buffer.toString(hex) + 0x 408.00 ns/op 253.00 ns/op 1.61
Object access 1 prop 0.29700 ns/op 0.12400 ns/op 2.40
Map access 1 prop 0.30500 ns/op 0.13000 ns/op 2.35
Object get x1000 4.7970 ns/op 5.8660 ns/op 0.82
Map get x1000 5.7390 ns/op 6.5830 ns/op 0.87
Object set x1000 18.529 ns/op 28.212 ns/op 0.66
Map set x1000 16.226 ns/op 19.559 ns/op 0.83
Return object 10000 times 0.26940 ns/op 0.28980 ns/op 0.93
Throw Error 10000 times 3.2387 us/op 4.3566 us/op 0.74
toHex 91.495 ns/op 141.64 ns/op 0.65
Buffer.from 85.529 ns/op 116.46 ns/op 0.73
shared Buffer 60.096 ns/op 81.044 ns/op 0.74
fastMsgIdFn sha256 / 200 bytes 1.8290 us/op 2.1880 us/op 0.84
fastMsgIdFn h32 xxhash / 200 bytes 360.00 ns/op 220.00 ns/op 1.64
fastMsgIdFn h64 xxhash / 200 bytes 412.00 ns/op 271.00 ns/op 1.52
fastMsgIdFn sha256 / 1000 bytes 5.2860 us/op 7.2790 us/op 0.73
fastMsgIdFn h32 xxhash / 1000 bytes 483.00 ns/op 347.00 ns/op 1.39
fastMsgIdFn h64 xxhash / 1000 bytes 499.00 ns/op 344.00 ns/op 1.45
fastMsgIdFn sha256 / 10000 bytes 49.194 us/op 65.587 us/op 0.75
fastMsgIdFn h32 xxhash / 10000 bytes 1.8640 us/op 1.8530 us/op 1.01
fastMsgIdFn h64 xxhash / 10000 bytes 1.3050 us/op 1.2300 us/op 1.06
send data - 1000 256B messages 8.9914 ms/op 10.813 ms/op 0.83
send data - 1000 512B messages 12.944 ms/op 16.358 ms/op 0.79
send data - 1000 1024B messages 19.778 ms/op 26.630 ms/op 0.74
send data - 1000 1200B messages 13.514 ms/op 21.162 ms/op 0.64
send data - 1000 2048B messages 14.536 ms/op 23.316 ms/op 0.62
send data - 1000 4096B messages 14.805 ms/op 23.503 ms/op 0.63
send data - 1000 16384B messages 67.300 ms/op 69.086 ms/op 0.97
send data - 1000 65536B messages 255.79 ms/op 208.04 ms/op 1.23
enrSubnets - fastDeserialize 64 bits 1.7330 us/op 918.00 ns/op 1.89
enrSubnets - ssz BitVector 64 bits 498.00 ns/op 331.00 ns/op 1.50
enrSubnets - fastDeserialize 4 bits 305.00 ns/op 140.00 ns/op 2.18
enrSubnets - ssz BitVector 4 bits 490.00 ns/op 573.00 ns/op 0.86
prioritizePeers score -10:0 att 32-0.1 sync 2-0 99.687 us/op 120.94 us/op 0.82
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 119.46 us/op 139.53 us/op 0.86
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 163.22 us/op 205.39 us/op 0.79
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 292.62 us/op 385.11 us/op 0.76
prioritizePeers score 0:0 att 64-1 sync 4-1 354.62 us/op 468.70 us/op 0.76
array of 16000 items push then shift 1.1785 us/op 1.6160 us/op 0.73
LinkedList of 16000 items push then shift 6.8370 ns/op 7.1470 ns/op 0.96
array of 16000 items push then pop 62.022 ns/op 76.403 ns/op 0.81
LinkedList of 16000 items push then pop 5.8020 ns/op 7.4110 ns/op 0.78
array of 24000 items push then shift 1.7146 us/op 2.4091 us/op 0.71
LinkedList of 24000 items push then shift 6.4990 ns/op 7.2350 ns/op 0.90
array of 24000 items push then pop 82.411 ns/op 107.08 ns/op 0.77
LinkedList of 24000 items push then pop 6.2370 ns/op 6.9870 ns/op 0.89
intersect bitArray bitLen 8 5.7100 ns/op 6.3870 ns/op 0.89
intersect array and set length 8 32.055 ns/op 37.938 ns/op 0.84
intersect bitArray bitLen 128 25.956 ns/op 29.903 ns/op 0.87
intersect array and set length 128 542.21 ns/op 621.19 ns/op 0.87
bitArray.getTrueBitIndexes() bitLen 128 1.1110 us/op 1.0210 us/op 1.09
bitArray.getTrueBitIndexes() bitLen 248 1.7480 us/op 1.7960 us/op 0.97
bitArray.getTrueBitIndexes() bitLen 512 3.2230 us/op 3.6310 us/op 0.89
Buffer.concat 32 items 782.00 ns/op 617.00 ns/op 1.27
Uint8Array.set 32 items 1.0370 us/op 934.00 ns/op 1.11
Buffer.copy 2.4900 us/op 2.0340 us/op 1.22
Uint8Array.set - with subarray 1.6710 us/op 1.5620 us/op 1.07
Uint8Array.set - without subarray 1.1710 us/op 873.00 ns/op 1.34
getUint32 - dataview 383.00 ns/op 206.00 ns/op 1.86
getUint32 - manual 312.00 ns/op 135.00 ns/op 2.31
Set add up to 64 items then delete first 1.7644 us/op 2.1212 us/op 0.83
OrderedSet add up to 64 items then delete first 2.7221 us/op 3.3748 us/op 0.81
Set add up to 64 items then delete last 2.0319 us/op 2.5246 us/op 0.80
OrderedSet add up to 64 items then delete last 3.0059 us/op 3.6330 us/op 0.83
Set add up to 64 items then delete middle 1.9049 us/op 2.4890 us/op 0.77
OrderedSet add up to 64 items then delete middle 4.3997 us/op 6.7052 us/op 0.66
Set add up to 128 items then delete first 3.9765 us/op 5.5030 us/op 0.72
OrderedSet add up to 128 items then delete first 6.2069 us/op 7.9482 us/op 0.78
Set add up to 128 items then delete last 3.8578 us/op 5.0522 us/op 0.76
OrderedSet add up to 128 items then delete last 5.8484 us/op 7.6930 us/op 0.76
Set add up to 128 items then delete middle 3.8863 us/op 5.3290 us/op 0.73
OrderedSet add up to 128 items then delete middle 11.419 us/op 13.985 us/op 0.82
Set add up to 256 items then delete first 7.8133 us/op 10.183 us/op 0.77
OrderedSet add up to 256 items then delete first 12.216 us/op 16.470 us/op 0.74
Set add up to 256 items then delete last 7.6308 us/op 10.692 us/op 0.71
OrderedSet add up to 256 items then delete last 11.487 us/op 14.519 us/op 0.79
Set add up to 256 items then delete middle 7.5576 us/op 9.8221 us/op 0.77
OrderedSet add up to 256 items then delete middle 33.625 us/op 43.133 us/op 0.78
transfer serialized Status (84 B) 2.0270 us/op 2.2740 us/op 0.89
copy serialized Status (84 B) 1.3100 us/op 1.4390 us/op 0.91
transfer serialized SignedVoluntaryExit (112 B) 2.0580 us/op 2.3150 us/op 0.89
copy serialized SignedVoluntaryExit (112 B) 1.3120 us/op 1.2290 us/op 1.07
transfer serialized ProposerSlashing (416 B) 2.1310 us/op 2.3740 us/op 0.90
copy serialized ProposerSlashing (416 B) 1.4030 us/op 1.2990 us/op 1.08
transfer serialized Attestation (485 B) 2.1060 us/op 2.3940 us/op 0.88
copy serialized Attestation (485 B) 1.3220 us/op 1.3190 us/op 1.00
transfer serialized AttesterSlashing (33232 B) 2.1190 us/op 2.4750 us/op 0.86
copy serialized AttesterSlashing (33232 B) 2.5980 us/op 3.5150 us/op 0.74
transfer serialized Small SignedBeaconBlock (128000 B) 2.1680 us/op 3.1930 us/op 0.68
copy serialized Small SignedBeaconBlock (128000 B) 5.5290 us/op 9.7450 us/op 0.57
transfer serialized Avg SignedBeaconBlock (200000 B) 2.2510 us/op 3.5600 us/op 0.63
copy serialized Avg SignedBeaconBlock (200000 B) 7.9410 us/op 14.497 us/op 0.55
transfer serialized BlobsSidecar (524380 B) 3.1060 us/op 3.4760 us/op 0.89
copy serialized BlobsSidecar (524380 B) 66.261 us/op 75.668 us/op 0.88
transfer serialized Big SignedBeaconBlock (1000000 B) 3.7380 us/op 4.1130 us/op 0.91
copy serialized Big SignedBeaconBlock (1000000 B) 108.43 us/op 244.26 us/op 0.44
pass gossip attestations to forkchoice per slot 2.3575 ms/op 2.7972 ms/op 0.84
forkChoice updateHead vc 100000 bc 64 eq 0 385.67 us/op 462.45 us/op 0.83
forkChoice updateHead vc 600000 bc 64 eq 0 2.3294 ms/op 2.8892 ms/op 0.81
forkChoice updateHead vc 1000000 bc 64 eq 0 3.7687 ms/op 4.9495 ms/op 0.76
forkChoice updateHead vc 600000 bc 320 eq 0 2.1327 ms/op 2.8926 ms/op 0.74
forkChoice updateHead vc 600000 bc 1200 eq 0 2.1802 ms/op 3.4760 ms/op 0.63
forkChoice updateHead vc 600000 bc 7200 eq 0 2.3083 ms/op 3.1535 ms/op 0.73
forkChoice updateHead vc 600000 bc 64 eq 1000 9.2089 ms/op 10.731 ms/op 0.86
forkChoice updateHead vc 600000 bc 64 eq 10000 9.2359 ms/op 10.736 ms/op 0.86
forkChoice updateHead vc 600000 bc 64 eq 300000 10.719 ms/op 14.117 ms/op 0.76
computeDeltas 500000 validators 300 proto nodes 3.1272 ms/op 4.1119 ms/op 0.76
computeDeltas 500000 validators 1200 proto nodes 3.0602 ms/op 4.2923 ms/op 0.71
computeDeltas 500000 validators 7200 proto nodes 2.9674 ms/op 4.3883 ms/op 0.68
computeDeltas 750000 validators 300 proto nodes 4.5006 ms/op 6.2728 ms/op 0.72
computeDeltas 750000 validators 1200 proto nodes 4.5207 ms/op 7.0376 ms/op 0.64
computeDeltas 750000 validators 7200 proto nodes 4.5043 ms/op 6.4823 ms/op 0.69
computeDeltas 1400000 validators 300 proto nodes 8.5003 ms/op 11.593 ms/op 0.73
computeDeltas 1400000 validators 1200 proto nodes 8.4915 ms/op 11.760 ms/op 0.72
computeDeltas 1400000 validators 7200 proto nodes 8.3975 ms/op 12.205 ms/op 0.69
computeDeltas 2100000 validators 300 proto nodes 12.800 ms/op 18.760 ms/op 0.68
computeDeltas 2100000 validators 1200 proto nodes 12.751 ms/op 21.773 ms/op 0.59
computeDeltas 2100000 validators 7200 proto nodes 12.590 ms/op 18.815 ms/op 0.67
altair processAttestation - 250000 vs - 7PWei normalcase 1.6889 ms/op 4.3822 ms/op 0.39
altair processAttestation - 250000 vs - 7PWei worstcase 2.4324 ms/op 6.0429 ms/op 0.40
altair processAttestation - setStatus - 1/6 committees join 86.207 us/op 189.81 us/op 0.45
altair processAttestation - setStatus - 1/3 committees join 169.85 us/op 335.07 us/op 0.51
altair processAttestation - setStatus - 1/2 committees join 258.92 us/op 447.08 us/op 0.58
altair processAttestation - setStatus - 2/3 committees join 343.78 us/op 506.70 us/op 0.68
altair processAttestation - setStatus - 4/5 committees join 467.04 us/op 675.58 us/op 0.69
altair processAttestation - setStatus - 100% committees join 551.30 us/op 785.33 us/op 0.70
altair processBlock - 250000 vs - 7PWei normalcase 3.2175 ms/op 5.3419 ms/op 0.60
altair processBlock - 250000 vs - 7PWei normalcase hashState 31.914 ms/op 32.972 ms/op 0.97
altair processBlock - 250000 vs - 7PWei worstcase 37.871 ms/op 39.704 ms/op 0.95
altair processBlock - 250000 vs - 7PWei worstcase hashState 85.203 ms/op 83.770 ms/op 1.02
phase0 processBlock - 250000 vs - 7PWei normalcase 1.3229 ms/op 1.7431 ms/op 0.76
phase0 processBlock - 250000 vs - 7PWei worstcase 19.313 ms/op 25.850 ms/op 0.75
altair processEth1Data - 250000 vs - 7PWei normalcase 283.84 us/op 376.57 us/op 0.75
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 3.2490 us/op 6.8410 us/op 0.47
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 36.511 us/op 43.283 us/op 0.84
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 12.190 us/op 11.383 us/op 1.07
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 6.6580 us/op 7.6510 us/op 0.87
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 138.37 us/op 178.97 us/op 0.77
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.2505 ms/op 1.9184 ms/op 0.65
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.6649 ms/op 2.4805 ms/op 0.67
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.6817 ms/op 2.4331 ms/op 0.69
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.4285 ms/op 5.5990 ms/op 0.61
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.8140 ms/op 2.6204 ms/op 0.69
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.4314 ms/op 5.7670 ms/op 0.60
Tree 40 250000 create 321.38 ms/op 567.51 ms/op 0.57
Tree 40 250000 get(125000) 101.22 ns/op 153.25 ns/op 0.66
Tree 40 250000 set(125000) 1.1477 us/op 1.5595 us/op 0.74
Tree 40 250000 toArray() 12.540 ms/op 17.074 ms/op 0.73
Tree 40 250000 iterate all - toArray() + loop 12.897 ms/op 17.118 ms/op 0.75
Tree 40 250000 iterate all - get(i) 39.875 ms/op 54.273 ms/op 0.73
Array 250000 create 2.4042 ms/op 3.4532 ms/op 0.70
Array 250000 clone - spread 611.96 us/op 1.4023 ms/op 0.44
Array 250000 get(125000) 0.54600 ns/op 0.41800 ns/op 1.31
Array 250000 set(125000) 0.56700 ns/op 0.44200 ns/op 1.28
Array 250000 iterate all - loop 96.479 us/op 83.887 us/op 1.15
phase0 afterProcessEpoch - 250000 vs - 7PWei 38.146 ms/op 43.557 ms/op 0.88
Array.fill - length 1000000 2.5183 ms/op 4.1120 ms/op 0.61
Array push - length 1000000 8.9986 ms/op 13.583 ms/op 0.66
Array.get 0.24827 ns/op 0.27669 ns/op 0.90
Uint8Array.get 0.39953 ns/op 0.44845 ns/op 0.89
phase0 beforeProcessEpoch - 250000 vs - 7PWei 12.035 ms/op 18.419 ms/op 0.65
altair processEpoch - mainnet_e81889 255.91 ms/op 246.29 ms/op 1.04
mainnet_e81889 - altair beforeProcessEpoch 14.775 ms/op 19.237 ms/op 0.77
mainnet_e81889 - altair processJustificationAndFinalization 4.5730 us/op 5.5540 us/op 0.82
mainnet_e81889 - altair processInactivityUpdates 3.6102 ms/op 4.2528 ms/op 0.85
mainnet_e81889 - altair processRewardsAndPenalties 46.222 ms/op 40.296 ms/op 1.15
mainnet_e81889 - altair processRegistryUpdates 841.00 ns/op 729.00 ns/op 1.15
mainnet_e81889 - altair processSlashings 405.00 ns/op 186.00 ns/op 2.18
mainnet_e81889 - altair processEth1DataReset 396.00 ns/op 184.00 ns/op 2.15
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.0288 ms/op 1.2658 ms/op 0.81
mainnet_e81889 - altair processSlashingsReset 1.1300 us/op 899.00 ns/op 1.26
mainnet_e81889 - altair processRandaoMixesReset 1.2140 us/op 1.1460 us/op 1.06
mainnet_e81889 - altair processHistoricalRootsUpdate 397.00 ns/op 182.00 ns/op 2.18
mainnet_e81889 - altair processParticipationFlagUpdates 698.00 ns/op 534.00 ns/op 1.31
mainnet_e81889 - altair processSyncCommitteeUpdates 366.00 ns/op 143.00 ns/op 2.56
mainnet_e81889 - altair afterProcessEpoch 39.833 ms/op 45.486 ms/op 0.88
capella processEpoch - mainnet_e217614 943.67 ms/op 858.27 ms/op 1.10
mainnet_e217614 - capella beforeProcessEpoch 57.306 ms/op 62.870 ms/op 0.91
mainnet_e217614 - capella processJustificationAndFinalization 4.6320 us/op 5.5330 us/op 0.84
mainnet_e217614 - capella processInactivityUpdates 11.542 ms/op 14.792 ms/op 0.78
mainnet_e217614 - capella processRewardsAndPenalties 198.88 ms/op 184.83 ms/op 1.08
mainnet_e217614 - capella processRegistryUpdates 5.4180 us/op 6.5250 us/op 0.83
mainnet_e217614 - capella processSlashings 404.00 ns/op 183.00 ns/op 2.21
mainnet_e217614 - capella processEth1DataReset 405.00 ns/op 182.00 ns/op 2.23
mainnet_e217614 - capella processEffectiveBalanceUpdates 3.6733 ms/op 4.3219 ms/op 0.85
mainnet_e217614 - capella processSlashingsReset 999.00 ns/op 896.00 ns/op 1.11
mainnet_e217614 - capella processRandaoMixesReset 1.2330 us/op 1.2020 us/op 1.03
mainnet_e217614 - capella processHistoricalRootsUpdate 400.00 ns/op 183.00 ns/op 2.19
mainnet_e217614 - capella processParticipationFlagUpdates 693.00 ns/op 520.00 ns/op 1.33
mainnet_e217614 - capella afterProcessEpoch 122.30 ms/op 115.56 ms/op 1.06
phase0 processEpoch - mainnet_e58758 302.00 ms/op 308.81 ms/op 0.98
mainnet_e58758 - phase0 beforeProcessEpoch 78.487 ms/op 79.176 ms/op 0.99
mainnet_e58758 - phase0 processJustificationAndFinalization 5.9030 us/op 6.0620 us/op 0.97
mainnet_e58758 - phase0 processRewardsAndPenalties 36.779 ms/op 36.218 ms/op 1.02
mainnet_e58758 - phase0 processRegistryUpdates 2.7760 us/op 3.2300 us/op 0.86
mainnet_e58758 - phase0 processSlashings 399.00 ns/op 185.00 ns/op 2.16
mainnet_e58758 - phase0 processEth1DataReset 403.00 ns/op 184.00 ns/op 2.19
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 995.60 us/op 1.4113 ms/op 0.71
mainnet_e58758 - phase0 processSlashingsReset 1.0760 us/op 1.0210 us/op 1.05
mainnet_e58758 - phase0 processRandaoMixesReset 1.2310 us/op 1.2250 us/op 1.00
mainnet_e58758 - phase0 processHistoricalRootsUpdate 401.00 ns/op 186.00 ns/op 2.16
mainnet_e58758 - phase0 processParticipationRecordUpdates 1.2100 us/op 1.0020 us/op 1.21
mainnet_e58758 - phase0 afterProcessEpoch 32.116 ms/op 37.688 ms/op 0.85
phase0 processEffectiveBalanceUpdates - 250000 normalcase 929.24 us/op 1.4128 ms/op 0.66
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.3028 ms/op 1.9139 ms/op 0.68
altair processInactivityUpdates - 250000 normalcase 16.848 ms/op 18.258 ms/op 0.92
altair processInactivityUpdates - 250000 worstcase 16.313 ms/op 18.713 ms/op 0.87
phase0 processRegistryUpdates - 250000 normalcase 3.5250 us/op 7.5900 us/op 0.46
phase0 processRegistryUpdates - 250000 badcase_full_deposits 281.23 us/op 268.62 us/op 1.05
phase0 processRegistryUpdates - 250000 worstcase 0.5 92.301 ms/op 122.53 ms/op 0.75
altair processRewardsAndPenalties - 250000 normalcase 30.390 ms/op 27.261 ms/op 1.11
altair processRewardsAndPenalties - 250000 worstcase 29.028 ms/op 26.215 ms/op 1.11
phase0 getAttestationDeltas - 250000 normalcase 5.9457 ms/op 8.0611 ms/op 0.74
phase0 getAttestationDeltas - 250000 worstcase 16.700 ms/op 18.999 ms/op 0.88
phase0 processSlashings - 250000 worstcase 81.059 us/op 99.220 us/op 0.82
altair processSyncCommitteeUpdates - 250000 9.1382 ms/op 11.772 ms/op 0.78
BeaconState.hashTreeRoot - No change 437.00 ns/op 231.00 ns/op 1.89
BeaconState.hashTreeRoot - 1 full validator 75.850 us/op 79.539 us/op 0.95
BeaconState.hashTreeRoot - 32 full validator 842.34 us/op 827.01 us/op 1.02
BeaconState.hashTreeRoot - 512 full validator 9.6955 ms/op 10.757 ms/op 0.90
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 91.412 us/op 97.956 us/op 0.93
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.2857 ms/op 1.3872 ms/op 0.93
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 21.557 ms/op 23.334 ms/op 0.92
BeaconState.hashTreeRoot - 1 balances 72.340 us/op 77.140 us/op 0.94
BeaconState.hashTreeRoot - 32 balances 747.23 us/op 1.0017 ms/op 0.75
BeaconState.hashTreeRoot - 512 balances 5.5319 ms/op 8.7394 ms/op 0.63
BeaconState.hashTreeRoot - 250000 balances 175.91 ms/op 197.36 ms/op 0.89
aggregationBits - 2048 els - zipIndexesInBitList 17.077 us/op 24.338 us/op 0.70
byteArrayEquals 32 42.299 ns/op 55.600 ns/op 0.76
Buffer.compare 32 15.721 ns/op 17.426 ns/op 0.90
byteArrayEquals 1024 1.2463 us/op 1.6376 us/op 0.76
Buffer.compare 1024 24.438 ns/op 25.710 ns/op 0.95
byteArrayEquals 16384 19.863 us/op 26.513 us/op 0.75
Buffer.compare 16384 201.12 ns/op 187.00 ns/op 1.08
byteArrayEquals 123687377 149.03 ms/op 199.75 ms/op 0.75
Buffer.compare 123687377 3.7427 ms/op 9.4273 ms/op 0.40
byteArrayEquals 32 - diff last byte 41.532 ns/op 55.064 ns/op 0.75
Buffer.compare 32 - diff last byte 15.658 ns/op 18.105 ns/op 0.86
byteArrayEquals 1024 - diff last byte 1.2407 us/op 1.6638 us/op 0.75
Buffer.compare 1024 - diff last byte 24.973 ns/op 27.109 ns/op 0.92
byteArrayEquals 16384 - diff last byte 19.716 us/op 26.431 us/op 0.75
Buffer.compare 16384 - diff last byte 166.41 ns/op 199.18 ns/op 0.84
byteArrayEquals 123687377 - diff last byte 144.73 ms/op 200.87 ms/op 0.72
Buffer.compare 123687377 - diff last byte 5.3631 ms/op 8.7006 ms/op 0.62
byteArrayEquals 32 - random bytes 4.5650 ns/op 5.3380 ns/op 0.86
Buffer.compare 32 - random bytes 14.588 ns/op 17.992 ns/op 0.81
byteArrayEquals 1024 - random bytes 5.2780 ns/op 5.3610 ns/op 0.98
Buffer.compare 1024 - random bytes 14.448 ns/op 18.239 ns/op 0.79
byteArrayEquals 16384 - random bytes 4.5640 ns/op 5.4320 ns/op 0.84
Buffer.compare 16384 - random bytes 14.409 ns/op 18.303 ns/op 0.79
byteArrayEquals 123687377 - random bytes 7.2700 ns/op 6.8200 ns/op 1.07
Buffer.compare 123687377 - random bytes 17.200 ns/op 19.300 ns/op 0.89
regular array get 100000 times 38.086 us/op 45.918 us/op 0.83
wrappedArray get 100000 times 38.086 us/op 34.345 us/op 1.11
arrayWithProxy get 100000 times 8.2811 ms/op 14.176 ms/op 0.58
ssz.Root.equals 36.765 ns/op 48.419 ns/op 0.76
byteArrayEquals 36.236 ns/op 47.341 ns/op 0.77
Buffer.compare 8.3480 ns/op 10.882 ns/op 0.77
processSlot - 1 slots 8.3640 us/op 10.443 us/op 0.80
processSlot - 32 slots 2.5883 ms/op 1.9762 ms/op 1.31
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 2.9735 ms/op 3.1231 ms/op 0.95
getCommitteeAssignments - req 1 vs - 250000 vc 1.7897 ms/op 2.2116 ms/op 0.81
getCommitteeAssignments - req 100 vs - 250000 vc 3.4985 ms/op 4.2778 ms/op 0.82
getCommitteeAssignments - req 1000 vs - 250000 vc 3.7146 ms/op 4.5512 ms/op 0.82
findModifiedValidators - 10000 modified validators 753.76 ms/op 768.43 ms/op 0.98
findModifiedValidators - 1000 modified validators 679.65 ms/op 778.46 ms/op 0.87
findModifiedValidators - 100 modified validators 220.05 ms/op 195.06 ms/op 1.13
findModifiedValidators - 10 modified validators 120.25 ms/op 140.13 ms/op 0.86
findModifiedValidators - 1 modified validators 122.50 ms/op 144.46 ms/op 0.85
findModifiedValidators - no difference 125.63 ms/op 168.78 ms/op 0.74
compare ViewDUs 6.0420 s/op 6.3312 s/op 0.95
compare each validator Uint8Array 1.6498 s/op 1.2509 s/op 1.32
compare ViewDU to Uint8Array 698.80 ms/op 1.2311 s/op 0.57
migrate state 1000000 validators, 24 modified, 0 new 726.19 ms/op 839.63 ms/op 0.86
migrate state 1000000 validators, 1700 modified, 1000 new 1.1095 s/op 1.1587 s/op 0.96
migrate state 1000000 validators, 3400 modified, 2000 new 1.1802 s/op 1.2968 s/op 0.91
migrate state 1500000 validators, 24 modified, 0 new 759.36 ms/op 869.66 ms/op 0.87
migrate state 1500000 validators, 1700 modified, 1000 new 980.87 ms/op 1.0987 s/op 0.89
migrate state 1500000 validators, 3400 modified, 2000 new 1.2012 s/op 1.3226 s/op 0.91
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 7.1700 ns/op 4.4300 ns/op 1.62
state getBlockRootAtSlot - 250000 vs - 7PWei 499.96 ns/op 558.12 ns/op 0.90
naive computeProposerIndex 100000 validators 42.977 ms/op 56.882 ms/op 0.76
computeProposerIndex 100000 validators 1.2692 ms/op 1.5022 ms/op 0.84
naiveGetNextSyncCommitteeIndices 1000 validators 6.7644 s/op 8.0308 s/op 0.84
getNextSyncCommitteeIndices 1000 validators 91.332 ms/op 123.27 ms/op 0.74
naiveGetNextSyncCommitteeIndices 10000 validators 6.7287 s/op 8.1526 s/op 0.83
getNextSyncCommitteeIndices 10000 validators 91.342 ms/op 112.91 ms/op 0.81
naiveGetNextSyncCommitteeIndices 100000 validators 6.7814 s/op 7.6732 s/op 0.88
getNextSyncCommitteeIndices 100000 validators 91.354 ms/op 111.46 ms/op 0.82
naive computeShuffledIndex 100000 validators 21.395 s/op 23.313 s/op 0.92
cached computeShuffledIndex 100000 validators 438.10 ms/op 571.98 ms/op 0.77
naive computeShuffledIndex 2000000 validators 412.94 s/op 585.58 s/op 0.71
cached computeShuffledIndex 2000000 validators 22.645 s/op 64.096 s/op 0.35
computeProposers - vc 250000 503.06 us/op 631.41 us/op 0.80
computeEpochShuffling - vc 250000 36.586 ms/op 44.641 ms/op 0.82
getNextSyncCommittee - vc 250000 8.7877 ms/op 10.977 ms/op 0.80
computeSigningRoot for AttestationData 17.265 us/op 22.734 us/op 0.76
hash AttestationData serialized data then Buffer.toString(base64) 1.1024 us/op 1.6644 us/op 0.66
toHexString serialized data 909.12 ns/op 1.2589 us/op 0.72
Buffer.toString(base64) 104.56 ns/op 170.98 ns/op 0.61
nodejs block root to RootHex using toHex 100.19 ns/op 168.14 ns/op 0.60
nodejs block root to RootHex using toRootHex 65.388 ns/op 99.395 ns/op 0.66
browser block root to RootHex using the deprecated toHexString 173.22 ns/op 229.65 ns/op 0.75
browser block root to RootHex using toHex 138.19 ns/op 182.21 ns/op 0.76
browser block root to RootHex using toRootHex 129.09 ns/op 166.63 ns/op 0.77

by benchmarkbot/action

@nflaig
Copy link
Member Author

nflaig commented Jun 30, 2025

@wemeetagain wemeetagain merged commit d9dc444 into unstable Jul 1, 2025
24 of 26 checks passed
@wemeetagain wemeetagain deleted the nflaig/increase-gas-limit-45m branch July 1, 2025 14:55
@wemeetagain
Copy link
Member

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