lodestar icon indicating copy to clipboard operation
lodestar copied to clipboard

chore: unhide execution engine mock flag

Open nflaig opened this issue 1 year ago • 2 comments

Motivation

This flag is useful to quickly spin up or node on any network for testing / development and different users have asked for something like this.

Description

Unhide execution engine mock flag --execution.engineMock

Previous discussion https://github.com/ChainSafe/lodestar/pull/6872

nflaig avatar Jun 29 '24 14:06 nflaig

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 62.52%. Comparing base (f69bc11) to head (1153a84). Report is 1 commits behind head on unstable.

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #6922   +/-   ##
=========================================
  Coverage     62.52%   62.52%           
=========================================
  Files           575      575           
  Lines         60985    60985           
  Branches       2118     2120    +2     
=========================================
  Hits          38128    38128           
  Misses        22818    22818           
  Partials         39       39           

codecov[bot] avatar Jun 29 '24 14:06 codecov[bot]

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 82859d228975675ee9e5136b3da4b406f60425ed Previous: d87a9018e6c071f3957de4356ac9bfd8ccd4e523 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 629.44 us/op 516.28 us/op 1.22
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 38.102 us/op 37.733 us/op 1.01
BLS verify - blst-native 1.1098 ms/op 1.1111 ms/op 1.00
BLS verifyMultipleSignatures 3 - blst-native 2.3675 ms/op 2.3868 ms/op 0.99
BLS verifyMultipleSignatures 8 - blst-native 5.2527 ms/op 5.2575 ms/op 1.00
BLS verifyMultipleSignatures 32 - blst-native 19.234 ms/op 19.185 ms/op 1.00
BLS verifyMultipleSignatures 64 - blst-native 38.371 ms/op 37.936 ms/op 1.01
BLS verifyMultipleSignatures 128 - blst-native 76.107 ms/op 75.015 ms/op 1.01
BLS deserializing 10000 signatures 746.27 ms/op 794.42 ms/op 0.94
BLS deserializing 100000 signatures 7.7787 s/op 8.0156 s/op 0.97
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.1354 ms/op 1.1417 ms/op 0.99
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.2910 ms/op 1.2976 ms/op 0.99
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.0355 ms/op 2.0382 ms/op 1.00
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.5600 ms/op 3.4894 ms/op 1.02
BLS verifyMultipleSignatures - same message - 128 - blst-native 4.8136 ms/op 6.1630 ms/op 0.78
BLS aggregatePubkeys 32 - blst-native 21.979 us/op 23.693 us/op 0.93
BLS aggregatePubkeys 128 - blst-native 85.119 us/op 88.669 us/op 0.96
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 55.487 ms/op 60.599 ms/op 0.92
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 42.402 ms/op 45.178 ms/op 0.94
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 27.501 ms/op 31.163 ms/op 0.88
getSlashingsAndExits - default max 86.700 us/op 73.939 us/op 1.17
getSlashingsAndExits - 2k 230.56 us/op 244.76 us/op 0.94
proposeBlockBody type=full, size=empty 4.6996 ms/op 4.9790 ms/op 0.94
isKnown best case - 1 super set check 474.00 ns/op 462.00 ns/op 1.03
isKnown normal case - 2 super set checks 450.00 ns/op 457.00 ns/op 0.98
isKnown worse case - 16 super set checks 448.00 ns/op 456.00 ns/op 0.98
InMemoryCheckpointStateCache - add get delete 3.9200 us/op 3.8230 us/op 1.03
validate api signedAggregateAndProof - struct 2.2957 ms/op 2.3082 ms/op 0.99
validate gossip signedAggregateAndProof - struct 2.3014 ms/op 2.3034 ms/op 1.00
validate gossip attestation - vc 640000 1.1377 ms/op 1.1201 ms/op 1.02
batch validate gossip attestation - vc 640000 - chunk 32 132.39 us/op 131.41 us/op 1.01
batch validate gossip attestation - vc 640000 - chunk 64 115.05 us/op 116.77 us/op 0.99
batch validate gossip attestation - vc 640000 - chunk 128 109.51 us/op 110.33 us/op 0.99
batch validate gossip attestation - vc 640000 - chunk 256 105.76 us/op 109.06 us/op 0.97
pickEth1Vote - no votes 815.87 us/op 818.11 us/op 1.00
pickEth1Vote - max votes 7.2893 ms/op 5.7678 ms/op 1.26
pickEth1Vote - Eth1Data hashTreeRoot value x2048 14.188 ms/op 9.4287 ms/op 1.50
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 19.049 ms/op 15.641 ms/op 1.22
pickEth1Vote - Eth1Data fastSerialize value x2048 370.56 us/op 337.18 us/op 1.10
pickEth1Vote - Eth1Data fastSerialize tree x2048 4.8985 ms/op 7.1937 ms/op 0.68
bytes32 toHexString 585.00 ns/op 611.00 ns/op 0.96
bytes32 Buffer.toString(hex) 422.00 ns/op 440.00 ns/op 0.96
bytes32 Buffer.toString(hex) from Uint8Array 531.00 ns/op 547.00 ns/op 0.97
bytes32 Buffer.toString(hex) + 0x 426.00 ns/op 427.00 ns/op 1.00
Object access 1 prop 0.32000 ns/op 0.30800 ns/op 1.04
Map access 1 prop 0.31700 ns/op 0.30900 ns/op 1.03
Object get x1000 5.2770 ns/op 4.7810 ns/op 1.10
Map get x1000 5.7330 ns/op 5.5400 ns/op 1.03
Object set x1000 24.689 ns/op 22.508 ns/op 1.10
Map set x1000 18.274 ns/op 18.621 ns/op 0.98
Return object 10000 times 0.29460 ns/op 0.29990 ns/op 0.98
Throw Error 10000 times 2.6219 us/op 2.7011 us/op 0.97
fastMsgIdFn sha256 / 200 bytes 1.9640 us/op 1.9710 us/op 1.00
fastMsgIdFn h32 xxhash / 200 bytes 401.00 ns/op 409.00 ns/op 0.98
fastMsgIdFn h64 xxhash / 200 bytes 434.00 ns/op 453.00 ns/op 0.96
fastMsgIdFn sha256 / 1000 bytes 5.8480 us/op 6.0390 us/op 0.97
fastMsgIdFn h32 xxhash / 1000 bytes 522.00 ns/op 525.00 ns/op 0.99
fastMsgIdFn h64 xxhash / 1000 bytes 515.00 ns/op 528.00 ns/op 0.98
fastMsgIdFn sha256 / 10000 bytes 47.710 us/op 52.245 us/op 0.91
fastMsgIdFn h32 xxhash / 10000 bytes 1.8410 us/op 1.8840 us/op 0.98
fastMsgIdFn h64 xxhash / 10000 bytes 1.2710 us/op 1.3070 us/op 0.97
send data - 1000 256B messages 9.9279 ms/op 9.8411 ms/op 1.01
send data - 1000 512B messages 13.103 ms/op 13.058 ms/op 1.00
send data - 1000 1024B messages 21.513 ms/op 21.032 ms/op 1.02
send data - 1000 1200B messages 22.654 ms/op 22.802 ms/op 0.99
send data - 1000 2048B messages 29.029 ms/op 28.359 ms/op 1.02
send data - 1000 4096B messages 24.840 ms/op 24.802 ms/op 1.00
send data - 1000 16384B messages 62.710 ms/op 68.316 ms/op 0.92
send data - 1000 65536B messages 245.57 ms/op 237.85 ms/op 1.03
enrSubnets - fastDeserialize 64 bits 1.1350 us/op 1.1500 us/op 0.99
enrSubnets - ssz BitVector 64 bits 522.00 ns/op 551.00 ns/op 0.95
enrSubnets - fastDeserialize 4 bits 327.00 ns/op 355.00 ns/op 0.92
enrSubnets - ssz BitVector 4 bits 520.00 ns/op 557.00 ns/op 0.93
prioritizePeers score -10:0 att 32-0.1 sync 2-0 241.10 us/op 138.45 us/op 1.74
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 285.37 us/op 177.79 us/op 1.61
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 399.72 us/op 308.69 us/op 1.29
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 641.57 us/op 471.96 us/op 1.36
prioritizePeers score 0:0 att 64-1 sync 4-1 811.36 us/op 538.95 us/op 1.51
array of 16000 items push then shift 1.2934 us/op 1.2559 us/op 1.03
LinkedList of 16000 items push then shift 7.1000 ns/op 7.6440 ns/op 0.93
array of 16000 items push then pop 81.304 ns/op 124.99 ns/op 0.65
LinkedList of 16000 items push then pop 6.3420 ns/op 6.3420 ns/op 1.00
array of 24000 items push then shift 1.8989 us/op 1.9249 us/op 0.99
LinkedList of 24000 items push then shift 6.9380 ns/op 6.4600 ns/op 1.07
array of 24000 items push then pop 106.26 ns/op 108.85 ns/op 0.98
LinkedList of 24000 items push then pop 6.0750 ns/op 6.3100 ns/op 0.96
intersect bitArray bitLen 8 5.1560 ns/op 5.4460 ns/op 0.95
intersect array and set length 8 36.575 ns/op 39.930 ns/op 0.92
intersect bitArray bitLen 128 25.601 ns/op 26.613 ns/op 0.96
intersect array and set length 128 550.47 ns/op 587.12 ns/op 0.94
bitArray.getTrueBitIndexes() bitLen 128 2.1010 us/op 2.1410 us/op 0.98
bitArray.getTrueBitIndexes() bitLen 248 3.2780 us/op 2.8960 us/op 1.13
bitArray.getTrueBitIndexes() bitLen 512 6.8110 us/op 6.0840 us/op 1.12
Buffer.concat 32 items 1.0270 us/op 1.1660 us/op 0.88
Uint8Array.set 32 items 1.6740 us/op 1.5940 us/op 1.05
Buffer.copy 1.7730 us/op 1.7800 us/op 1.00
Uint8Array.set - with subarray 2.7400 us/op 2.3520 us/op 1.16
Uint8Array.set - without subarray 1.7530 us/op 1.7810 us/op 0.98
Set add up to 64 items then delete first 1.7274 us/op 1.7539 us/op 0.98
OrderedSet add up to 64 items then delete first 2.6962 us/op 2.8310 us/op 0.95
Set add up to 64 items then delete last 2.0730 us/op 2.0768 us/op 1.00
OrderedSet add up to 64 items then delete last 3.1521 us/op 3.1329 us/op 1.01
Set add up to 64 items then delete middle 2.0921 us/op 2.0780 us/op 1.01
OrderedSet add up to 64 items then delete middle 4.5780 us/op 4.5539 us/op 1.01
Set add up to 128 items then delete first 4.0992 us/op 4.0770 us/op 1.01
OrderedSet add up to 128 items then delete first 6.4225 us/op 6.4254 us/op 1.00
Set add up to 128 items then delete last 3.9731 us/op 3.9591 us/op 1.00
OrderedSet add up to 128 items then delete last 6.0892 us/op 6.0400 us/op 1.01
Set add up to 128 items then delete middle 3.9770 us/op 3.9699 us/op 1.00
OrderedSet add up to 128 items then delete middle 11.641 us/op 12.024 us/op 0.97
Set add up to 256 items then delete first 8.1405 us/op 7.9777 us/op 1.02
OrderedSet add up to 256 items then delete first 12.827 us/op 12.766 us/op 1.00
Set add up to 256 items then delete last 7.8237 us/op 7.7762 us/op 1.01
OrderedSet add up to 256 items then delete last 12.015 us/op 12.034 us/op 1.00
Set add up to 256 items then delete middle 7.7888 us/op 7.7617 us/op 1.00
OrderedSet add up to 256 items then delete middle 34.475 us/op 34.684 us/op 0.99
transfer serialized Status (84 B) 1.3670 us/op 1.4630 us/op 0.93
copy serialized Status (84 B) 1.1870 us/op 1.2770 us/op 0.93
transfer serialized SignedVoluntaryExit (112 B) 1.5630 us/op 1.4750 us/op 1.06
copy serialized SignedVoluntaryExit (112 B) 1.2880 us/op 1.2550 us/op 1.03
transfer serialized ProposerSlashing (416 B) 2.2150 us/op 1.5490 us/op 1.43
copy serialized ProposerSlashing (416 B) 1.8970 us/op 1.6010 us/op 1.18
transfer serialized Attestation (485 B) 2.0660 us/op 1.6520 us/op 1.25
copy serialized Attestation (485 B) 1.9710 us/op 1.3630 us/op 1.45
transfer serialized AttesterSlashing (33232 B) 2.2670 us/op 1.8650 us/op 1.22
copy serialized AttesterSlashing (33232 B) 4.3040 us/op 3.7160 us/op 1.16
transfer serialized Small SignedBeaconBlock (128000 B) 2.5890 us/op 2.0020 us/op 1.29
copy serialized Small SignedBeaconBlock (128000 B) 9.7870 us/op 10.450 us/op 0.94
transfer serialized Avg SignedBeaconBlock (200000 B) 2.6810 us/op 2.5950 us/op 1.03
copy serialized Avg SignedBeaconBlock (200000 B) 13.649 us/op 14.089 us/op 0.97
transfer serialized BlobsSidecar (524380 B) 3.1160 us/op 2.9520 us/op 1.06
copy serialized BlobsSidecar (524380 B) 122.01 us/op 87.951 us/op 1.39
transfer serialized Big SignedBeaconBlock (1000000 B) 3.6430 us/op 3.5070 us/op 1.04
copy serialized Big SignedBeaconBlock (1000000 B) 128.34 us/op 326.06 us/op 0.39
pass gossip attestations to forkchoice per slot 2.5343 ms/op 2.5701 ms/op 0.99
forkChoice updateHead vc 100000 bc 64 eq 0 409.08 us/op 471.84 us/op 0.87
forkChoice updateHead vc 600000 bc 64 eq 0 2.5407 ms/op 2.6297 ms/op 0.97
forkChoice updateHead vc 1000000 bc 64 eq 0 4.4028 ms/op 4.6138 ms/op 0.95
forkChoice updateHead vc 600000 bc 320 eq 0 2.3773 ms/op 2.5207 ms/op 0.94
forkChoice updateHead vc 600000 bc 1200 eq 0 2.4207 ms/op 2.5689 ms/op 0.94
forkChoice updateHead vc 600000 bc 7200 eq 0 2.8715 ms/op 2.8233 ms/op 1.02
forkChoice updateHead vc 600000 bc 64 eq 1000 9.6579 ms/op 9.6644 ms/op 1.00
forkChoice updateHead vc 600000 bc 64 eq 10000 9.5607 ms/op 9.5619 ms/op 1.00
forkChoice updateHead vc 600000 bc 64 eq 300000 11.164 ms/op 11.786 ms/op 0.95
computeDeltas 500000 validators 300 proto nodes 2.9384 ms/op 2.9917 ms/op 0.98
computeDeltas 500000 validators 1200 proto nodes 2.9738 ms/op 3.0944 ms/op 0.96
computeDeltas 500000 validators 7200 proto nodes 3.0022 ms/op 3.0398 ms/op 0.99
computeDeltas 750000 validators 300 proto nodes 4.4005 ms/op 4.6112 ms/op 0.95
computeDeltas 750000 validators 1200 proto nodes 4.3275 ms/op 4.5042 ms/op 0.96
computeDeltas 750000 validators 7200 proto nodes 4.4188 ms/op 4.3965 ms/op 1.01
computeDeltas 1400000 validators 300 proto nodes 8.0880 ms/op 8.2221 ms/op 0.98
computeDeltas 1400000 validators 1200 proto nodes 8.4086 ms/op 8.2180 ms/op 1.02
computeDeltas 1400000 validators 7200 proto nodes 8.3330 ms/op 8.1976 ms/op 1.02
computeDeltas 2100000 validators 300 proto nodes 12.398 ms/op 12.061 ms/op 1.03
computeDeltas 2100000 validators 1200 proto nodes 12.861 ms/op 12.074 ms/op 1.07
computeDeltas 2100000 validators 7200 proto nodes 12.396 ms/op 12.371 ms/op 1.00
altair processAttestation - 250000 vs - 7PWei normalcase 1.3408 ms/op 1.3205 ms/op 1.02
altair processAttestation - 250000 vs - 7PWei worstcase 2.1045 ms/op 2.0709 ms/op 1.02
altair processAttestation - setStatus - 1/6 committees join 66.154 us/op 60.905 us/op 1.09
altair processAttestation - setStatus - 1/3 committees join 128.20 us/op 122.72 us/op 1.04
altair processAttestation - setStatus - 1/2 committees join 182.06 us/op 190.82 us/op 0.95
altair processAttestation - setStatus - 2/3 committees join 263.67 us/op 260.91 us/op 1.01
altair processAttestation - setStatus - 4/5 committees join 393.39 us/op 382.79 us/op 1.03
altair processAttestation - setStatus - 100% committees join 473.64 us/op 461.22 us/op 1.03
altair processBlock - 250000 vs - 7PWei normalcase 4.1153 ms/op 4.0258 ms/op 1.02
altair processBlock - 250000 vs - 7PWei normalcase hashState 30.374 ms/op 29.123 ms/op 1.04
altair processBlock - 250000 vs - 7PWei worstcase 42.510 ms/op 42.882 ms/op 0.99
altair processBlock - 250000 vs - 7PWei worstcase hashState 91.889 ms/op 60.704 ms/op 1.51
phase0 processBlock - 250000 vs - 7PWei normalcase 1.9077 ms/op 1.7358 ms/op 1.10
phase0 processBlock - 250000 vs - 7PWei worstcase 23.644 ms/op 23.487 ms/op 1.01
altair processEth1Data - 250000 vs - 7PWei normalcase 255.36 us/op 242.22 us/op 1.05
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 2.8780 us/op 3.8410 us/op 0.75
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 21.025 us/op 18.332 us/op 1.15
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 9.9430 us/op 6.6010 us/op 1.51
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 4.8920 us/op 4.4490 us/op 1.10
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 72.828 us/op 69.419 us/op 1.05
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 823.32 us/op 752.50 us/op 1.09
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.0401 ms/op 641.96 us/op 1.62
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.0619 ms/op 1.0186 ms/op 1.04
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 1.9398 ms/op 1.9452 ms/op 1.00
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.1075 ms/op 1.2129 ms/op 0.91
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 2.8694 ms/op 3.1920 ms/op 0.90
Tree 40 250000 create 182.49 ms/op 173.63 ms/op 1.05
Tree 40 250000 get(125000) 115.78 ns/op 111.22 ns/op 1.04
Tree 40 250000 set(125000) 517.40 ns/op 506.95 ns/op 1.02
Tree 40 250000 toArray() 12.483 ms/op 9.5716 ms/op 1.30
Tree 40 250000 iterate all - toArray() + loop 12.531 ms/op 9.4960 ms/op 1.32
Tree 40 250000 iterate all - get(i) 41.296 ms/op 39.558 ms/op 1.04
MutableVector 250000 create 11.421 ms/op 7.6832 ms/op 1.49
MutableVector 250000 get(125000) 6.2110 ns/op 5.5880 ns/op 1.11
MutableVector 250000 set(125000) 177.00 ns/op 151.38 ns/op 1.17
MutableVector 250000 toArray() 2.5911 ms/op 2.9338 ms/op 0.88
MutableVector 250000 iterate all - toArray() + loop 2.6852 ms/op 3.0193 ms/op 0.89
MutableVector 250000 iterate all - get(i) 1.4032 ms/op 1.5593 ms/op 0.90
Array 250000 create 2.3163 ms/op 2.3377 ms/op 0.99
Array 250000 clone - spread 1.2394 ms/op 1.2525 ms/op 0.99
Array 250000 get(125000) 0.57800 ns/op 0.57500 ns/op 1.01
Array 250000 set(125000) 0.59100 ns/op 0.59800 ns/op 0.99
Array 250000 iterate all - loop 76.916 us/op 77.148 us/op 1.00
effectiveBalanceIncrements clone Uint8Array 300000 14.080 us/op 13.514 us/op 1.04
effectiveBalanceIncrements clone MutableVector 300000 314.00 ns/op 314.00 ns/op 1.00
effectiveBalanceIncrements rw all Uint8Array 300000 166.71 us/op 167.07 us/op 1.00
effectiveBalanceIncrements rw all MutableVector 300000 50.870 ms/op 50.373 ms/op 1.01
phase0 afterProcessEpoch - 250000 vs - 7PWei 77.866 ms/op 76.054 ms/op 1.02
phase0 beforeProcessEpoch - 250000 vs - 7PWei 37.873 ms/op 39.270 ms/op 0.96
altair processEpoch - mainnet_e81889 370.29 ms/op 329.63 ms/op 1.12
mainnet_e81889 - altair beforeProcessEpoch 59.259 ms/op 35.486 ms/op 1.67
mainnet_e81889 - altair processJustificationAndFinalization 9.2150 us/op 10.356 us/op 0.89
mainnet_e81889 - altair processInactivityUpdates 5.5260 ms/op 5.4628 ms/op 1.01
mainnet_e81889 - altair processRewardsAndPenalties 47.881 ms/op 46.940 ms/op 1.02
mainnet_e81889 - altair processRegistryUpdates 1.9140 us/op 1.7930 us/op 1.07
mainnet_e81889 - altair processSlashings 750.00 ns/op 824.00 ns/op 0.91
mainnet_e81889 - altair processEth1DataReset 740.00 ns/op 735.00 ns/op 1.01
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.2982 ms/op 1.2955 ms/op 1.00
mainnet_e81889 - altair processSlashingsReset 2.3100 us/op 2.5020 us/op 0.92
mainnet_e81889 - altair processRandaoMixesReset 2.6100 us/op 2.7990 us/op 0.93
mainnet_e81889 - altair processHistoricalRootsUpdate 703.00 ns/op 710.00 ns/op 0.99
mainnet_e81889 - altair processParticipationFlagUpdates 1.3880 us/op 1.5550 us/op 0.89
mainnet_e81889 - altair processSyncCommitteeUpdates 652.00 ns/op 772.00 ns/op 0.84
mainnet_e81889 - altair afterProcessEpoch 76.902 ms/op 79.831 ms/op 0.96
capella processEpoch - mainnet_e217614 1.2177 s/op 1.2421 s/op 0.98
mainnet_e217614 - capella beforeProcessEpoch 226.91 ms/op 236.03 ms/op 0.96
mainnet_e217614 - capella processJustificationAndFinalization 8.7200 us/op 11.981 us/op 0.73
mainnet_e217614 - capella processInactivityUpdates 14.425 ms/op 17.211 ms/op 0.84
mainnet_e217614 - capella processRewardsAndPenalties 268.20 ms/op 268.71 ms/op 1.00
mainnet_e217614 - capella processRegistryUpdates 12.108 us/op 13.790 us/op 0.88
mainnet_e217614 - capella processSlashings 787.00 ns/op 875.00 ns/op 0.90
mainnet_e217614 - capella processEth1DataReset 738.00 ns/op 995.00 ns/op 0.74
mainnet_e217614 - capella processEffectiveBalanceUpdates 3.9097 ms/op 15.735 ms/op 0.25
mainnet_e217614 - capella processSlashingsReset 1.2120 us/op 5.5430 us/op 0.22
mainnet_e217614 - capella processRandaoMixesReset 1.5340 us/op 5.1500 us/op 0.30
mainnet_e217614 - capella processHistoricalRootsUpdate 722.00 ns/op 1.5570 us/op 0.46
mainnet_e217614 - capella processParticipationFlagUpdates 1.4140 us/op 1.9510 us/op 0.72
mainnet_e217614 - capella afterProcessEpoch 239.33 ms/op 216.68 ms/op 1.10
phase0 processEpoch - mainnet_e58758 333.52 ms/op 380.87 ms/op 0.88
mainnet_e58758 - phase0 beforeProcessEpoch 102.63 ms/op 121.94 ms/op 0.84
mainnet_e58758 - phase0 processJustificationAndFinalization 9.8910 us/op 18.443 us/op 0.54
mainnet_e58758 - phase0 processRewardsAndPenalties 36.925 ms/op 25.891 ms/op 1.43
mainnet_e58758 - phase0 processRegistryUpdates 6.2220 us/op 9.1420 us/op 0.68
mainnet_e58758 - phase0 processSlashings 755.00 ns/op 770.00 ns/op 0.98
mainnet_e58758 - phase0 processEth1DataReset 742.00 ns/op 856.00 ns/op 0.87
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.0722 ms/op 1.1723 ms/op 0.91
mainnet_e58758 - phase0 processSlashingsReset 2.0700 us/op 2.7470 us/op 0.75
mainnet_e58758 - phase0 processRandaoMixesReset 2.5200 us/op 2.0440 us/op 1.23
mainnet_e58758 - phase0 processHistoricalRootsUpdate 673.00 ns/op 441.00 ns/op 1.53
mainnet_e58758 - phase0 processParticipationRecordUpdates 2.2140 us/op 5.7860 us/op 0.38
mainnet_e58758 - phase0 afterProcessEpoch 65.491 ms/op 70.087 ms/op 0.93
phase0 processEffectiveBalanceUpdates - 250000 normalcase 813.64 us/op 813.58 us/op 1.00
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.4432 ms/op 1.3944 ms/op 1.03
altair processInactivityUpdates - 250000 normalcase 16.750 ms/op 18.115 ms/op 0.92
altair processInactivityUpdates - 250000 worstcase 16.653 ms/op 17.457 ms/op 0.95
phase0 processRegistryUpdates - 250000 normalcase 3.2310 us/op 5.9530 us/op 0.54
phase0 processRegistryUpdates - 250000 badcase_full_deposits 322.06 us/op 302.52 us/op 1.06
phase0 processRegistryUpdates - 250000 worstcase 0.5 103.26 ms/op 110.36 ms/op 0.94
altair processRewardsAndPenalties - 250000 normalcase 50.731 ms/op 44.707 ms/op 1.13
altair processRewardsAndPenalties - 250000 worstcase 41.663 ms/op 36.224 ms/op 1.15
phase0 getAttestationDeltas - 250000 normalcase 5.5377 ms/op 7.2376 ms/op 0.77
phase0 getAttestationDeltas - 250000 worstcase 6.0313 ms/op 8.0911 ms/op 0.75
phase0 processSlashings - 250000 worstcase 81.290 us/op 94.771 us/op 0.86
altair processSyncCommitteeUpdates - 250000 99.229 ms/op 115.98 ms/op 0.86
BeaconState.hashTreeRoot - No change 467.00 ns/op 616.00 ns/op 0.76
BeaconState.hashTreeRoot - 1 full validator 147.34 us/op 137.10 us/op 1.07
BeaconState.hashTreeRoot - 32 full validator 1.5406 ms/op 1.1547 ms/op 1.33
BeaconState.hashTreeRoot - 512 full validator 13.629 ms/op 12.793 ms/op 1.07
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 146.52 us/op 159.80 us/op 0.92
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.8987 ms/op 2.4495 ms/op 0.78
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 25.016 ms/op 31.628 ms/op 0.79
BeaconState.hashTreeRoot - 1 balances 105.96 us/op 120.70 us/op 0.88
BeaconState.hashTreeRoot - 32 balances 1.2506 ms/op 1.0581 ms/op 1.18
BeaconState.hashTreeRoot - 512 balances 8.3085 ms/op 6.7121 ms/op 1.24
BeaconState.hashTreeRoot - 250000 balances 169.95 ms/op 216.36 ms/op 0.79
aggregationBits - 2048 els - zipIndexesInBitList 19.612 us/op 31.026 us/op 0.63
byteArrayEquals 32 47.596 ns/op 48.735 ns/op 0.98
Buffer.compare 32 15.482 ns/op 15.542 ns/op 1.00
byteArrayEquals 1024 1.2653 us/op 1.2757 us/op 0.99
Buffer.compare 1024 24.132 ns/op 24.104 ns/op 1.00
byteArrayEquals 16384 20.060 us/op 20.922 us/op 0.96
Buffer.compare 16384 179.06 ns/op 184.75 ns/op 0.97
byteArrayEquals 123687377 146.31 ms/op 157.45 ms/op 0.93
Buffer.compare 123687377 5.2964 ms/op 6.9997 ms/op 0.76
byteArrayEquals 32 - diff last byte 47.429 ns/op 48.414 ns/op 0.98
Buffer.compare 32 - diff last byte 16.838 ns/op 16.244 ns/op 1.04
byteArrayEquals 1024 - diff last byte 1.2596 us/op 1.2996 us/op 0.97
Buffer.compare 1024 - diff last byte 23.369 ns/op 25.156 ns/op 0.93
byteArrayEquals 16384 - diff last byte 20.072 us/op 20.968 us/op 0.96
Buffer.compare 16384 - diff last byte 254.83 ns/op 206.13 ns/op 1.24
byteArrayEquals 123687377 - diff last byte 150.75 ms/op 152.30 ms/op 0.99
Buffer.compare 123687377 - diff last byte 4.3520 ms/op 6.5050 ms/op 0.67
byteArrayEquals 32 - random bytes 4.8300 ns/op 4.8290 ns/op 1.00
Buffer.compare 32 - random bytes 16.794 ns/op 15.669 ns/op 1.07
byteArrayEquals 1024 - random bytes 4.8350 ns/op 4.9140 ns/op 0.98
Buffer.compare 1024 - random bytes 17.027 ns/op 15.435 ns/op 1.10
byteArrayEquals 16384 - random bytes 4.7920 ns/op 4.9280 ns/op 0.97
Buffer.compare 16384 - random bytes 16.990 ns/op 15.685 ns/op 1.08
byteArrayEquals 123687377 - random bytes 7.6100 ns/op 7.9800 ns/op 0.95
Buffer.compare 123687377 - random bytes 20.050 ns/op 18.590 ns/op 1.08
regular array get 100000 times 30.560 us/op 30.655 us/op 1.00
wrappedArray get 100000 times 30.532 us/op 30.494 us/op 1.00
arrayWithProxy get 100000 times 9.6846 ms/op 8.8857 ms/op 1.09
ssz.Root.equals 39.786 ns/op 44.216 ns/op 0.90
byteArrayEquals 39.675 ns/op 43.019 ns/op 0.92
Buffer.compare 8.1730 ns/op 8.9440 ns/op 0.91
shuffle list - 16384 els 4.9972 ms/op 5.7012 ms/op 0.88
shuffle list - 250000 els 73.687 ms/op 81.917 ms/op 0.90
processSlot - 1 slots 11.788 us/op 11.994 us/op 0.98
processSlot - 32 slots 3.5408 ms/op 2.6349 ms/op 1.34
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 43.302 ms/op 36.560 ms/op 1.18
getCommitteeAssignments - req 1 vs - 250000 vc 1.7888 ms/op 1.7649 ms/op 1.01
getCommitteeAssignments - req 100 vs - 250000 vc 3.5204 ms/op 3.4828 ms/op 1.01
getCommitteeAssignments - req 1000 vs - 250000 vc 3.7708 ms/op 3.7196 ms/op 1.01
findModifiedValidators - 10000 modified validators 245.35 ms/op 216.53 ms/op 1.13
findModifiedValidators - 1000 modified validators 153.71 ms/op 146.48 ms/op 1.05
findModifiedValidators - 100 modified validators 144.13 ms/op 142.39 ms/op 1.01
findModifiedValidators - 10 modified validators 147.34 ms/op 135.05 ms/op 1.09
findModifiedValidators - 1 modified validators 133.91 ms/op 128.43 ms/op 1.04
findModifiedValidators - no difference 148.70 ms/op 156.97 ms/op 0.95
compare ViewDUs 3.2146 s/op 2.9490 s/op 1.09
compare each validator Uint8Array 1.6929 s/op 1.1731 s/op 1.44
compare ViewDU to Uint8Array 639.24 ms/op 725.82 ms/op 0.88
migrate state 1000000 validators, 24 modified, 0 new 569.81 ms/op 508.98 ms/op 1.12
migrate state 1000000 validators, 1700 modified, 1000 new 807.98 ms/op 677.18 ms/op 1.19
migrate state 1000000 validators, 3400 modified, 2000 new 1.0139 s/op 844.18 ms/op 1.20
migrate state 1500000 validators, 24 modified, 0 new 575.81 ms/op 533.91 ms/op 1.08
migrate state 1500000 validators, 1700 modified, 1000 new 803.96 ms/op 858.95 ms/op 0.94
migrate state 1500000 validators, 3400 modified, 2000 new 956.93 ms/op 978.06 ms/op 0.98
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.9800 ns/op 7.0400 ns/op 0.85
state getBlockRootAtSlot - 250000 vs - 7PWei 366.23 ns/op 357.81 ns/op 1.02
computeProposers - vc 250000 5.4807 ms/op 5.3130 ms/op 1.03
computeEpochShuffling - vc 250000 81.779 ms/op 83.497 ms/op 0.98
getNextSyncCommittee - vc 250000 106.52 ms/op 94.406 ms/op 1.13
computeSigningRoot for AttestationData 28.420 us/op 15.766 us/op 1.80
hash AttestationData serialized data then Buffer.toString(base64) 1.1407 us/op 1.1652 us/op 0.98
toHexString serialized data 713.80 ns/op 803.09 ns/op 0.89
Buffer.toString(base64) 136.29 ns/op 150.52 ns/op 0.91

by benchmarkbot/action

github-actions[bot] avatar Jun 29 '24 14:06 github-actions[bot]

:tada: This PR is included in v1.20.0 :tada:

wemeetagain avatar Jul 11 '24 16:07 wemeetagain