ChainSafe / lodestar

🌟 TypeScript Implementation of Ethereum Consensus
https://lodestar.chainsafe.io
Apache License 2.0
1.11k stars 273 forks source link

chore: rename execution payload header type guard #6906

Closed nflaig closed 6 days ago

nflaig commented 6 days ago

Motivation

Align execution payload header type guard naming with type and spec

Description

Rename execution payload header type guard

isBlindedExecutionPayload --> isExecutionPayloadHeader

codecov[bot] commented 6 days ago

Codecov Report

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

Project coverage is 62.55%. Comparing base (b453b37) to head (cfee6d3).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## unstable #6906 +/- ## ============================================ - Coverage 62.55% 62.55% -0.01% ============================================ Files 575 575 Lines 61045 61045 Branches 2123 2118 -5 ============================================ - Hits 38187 38185 -2 - Misses 22819 22821 +2 Partials 39 39 ```
github-actions[bot] commented 6 days ago

Performance Report

✔️ no performance regression detected

Full benchmark results | Benchmark suite | Current: 6ce8032d767ce2f470f7e84ca96d570135bb9db6 | Previous: b453b37d53a946b6faf73277fe1d75becff3ae8f | Ratio | |-|-|-|-| | getPubkeys - index2pubkey - req 1000 vs - 250000 vc | 665.31 us/op | 658.32 us/op | 1.01 | | getPubkeys - validatorsArr - req 1000 vs - 250000 vc | 39.274 us/op | 54.602 us/op | 0.72 | | BLS verify - blst-native | 1.1203 ms/op | 1.1267 ms/op | 0.99 | | BLS verifyMultipleSignatures 3 - blst-native | 2.3981 ms/op | 2.3797 ms/op | 1.01 | | BLS verifyMultipleSignatures 8 - blst-native | 5.3267 ms/op | 5.2725 ms/op | 1.01 | | BLS verifyMultipleSignatures 32 - blst-native | 19.306 ms/op | 19.188 ms/op | 1.01 | | BLS verifyMultipleSignatures 64 - blst-native | 38.336 ms/op | 38.315 ms/op | 1.00 | | BLS verifyMultipleSignatures 128 - blst-native | 76.792 ms/op | 75.555 ms/op | 1.02 | | BLS deserializing 10000 signatures | 798.35 ms/op | 783.45 ms/op | 1.02 | | BLS deserializing 100000 signatures | 8.1926 s/op | 8.1085 s/op | 1.01 | | BLS verifyMultipleSignatures - same message - 3 - blst-native | 1.1476 ms/op | 1.1523 ms/op | 1.00 | | BLS verifyMultipleSignatures - same message - 8 - blst-native | 1.3143 ms/op | 1.3145 ms/op | 1.00 | | BLS verifyMultipleSignatures - same message - 32 - blst-native | 2.0516 ms/op | 2.1771 ms/op | 0.94 | | BLS verifyMultipleSignatures - same message - 64 - blst-native | 3.0474 ms/op | 3.0612 ms/op | 1.00 | | BLS verifyMultipleSignatures - same message - 128 - blst-native | 6.0603 ms/op | 7.1562 ms/op | 0.85 | | BLS aggregatePubkeys 32 - blst-native | 23.215 us/op | 23.648 us/op | 0.98 | | BLS aggregatePubkeys 128 - blst-native | 90.583 us/op | 91.190 us/op | 0.99 | | notSeenSlots=1 numMissedVotes=1 numBadVotes=10 | 64.234 ms/op | 71.384 ms/op | 0.90 | | notSeenSlots=1 numMissedVotes=0 numBadVotes=4 | 69.083 ms/op | 52.130 ms/op | 1.33 | | notSeenSlots=2 numMissedVotes=1 numBadVotes=10 | 27.837 ms/op | 35.542 ms/op | 0.78 | | getSlashingsAndExits - default max | 122.69 us/op | 293.00 us/op | 0.42 | | getSlashingsAndExits - 2k | 333.10 us/op | 443.08 us/op | 0.75 | | proposeBlockBody type=full, size=empty | 5.1869 ms/op | 5.3196 ms/op | 0.98 | | isKnown best case - 1 super set check | 776.00 ns/op | 692.00 ns/op | 1.12 | | isKnown normal case - 2 super set checks | 501.00 ns/op | 901.00 ns/op | 0.56 | | isKnown worse case - 16 super set checks | 498.00 ns/op | 652.00 ns/op | 0.76 | | InMemoryCheckpointStateCache - add get delete | 6.2150 us/op | 6.1700 us/op | 1.01 | | validate api signedAggregateAndProof - struct | 2.5901 ms/op | 2.5964 ms/op | 1.00 | | validate gossip signedAggregateAndProof - struct | 2.5011 ms/op | 2.5534 ms/op | 0.98 | | validate gossip attestation - vc 640000 | 1.1946 ms/op | 1.2239 ms/op | 0.98 | | batch validate gossip attestation - vc 640000 - chunk 32 | 149.83 us/op | 145.83 us/op | 1.03 | | batch validate gossip attestation - vc 640000 - chunk 64 | 131.51 us/op | 133.33 us/op | 0.99 | | batch validate gossip attestation - vc 640000 - chunk 128 | 135.88 us/op | 119.46 us/op | 1.14 | | batch validate gossip attestation - vc 640000 - chunk 256 | 133.81 us/op | 117.44 us/op | 1.14 | | pickEth1Vote - no votes | 1.1344 ms/op | 966.14 us/op | 1.17 | | pickEth1Vote - max votes | 15.059 ms/op | 9.6171 ms/op | 1.57 | | pickEth1Vote - Eth1Data hashTreeRoot value x2048 | 25.500 ms/op | 17.465 ms/op | 1.46 | | pickEth1Vote - Eth1Data hashTreeRoot tree x2048 | 31.235 ms/op | 19.083 ms/op | 1.64 | | pickEth1Vote - Eth1Data fastSerialize value x2048 | 627.57 us/op | 463.54 us/op | 1.35 | | pickEth1Vote - Eth1Data fastSerialize tree x2048 | 5.2497 ms/op | 6.0862 ms/op | 0.86 | | bytes32 toHexString | 1.0350 us/op | 668.00 ns/op | 1.55 | | bytes32 Buffer.toString(hex) | 538.00 ns/op | 477.00 ns/op | 1.13 | | bytes32 Buffer.toString(hex) from Uint8Array | 730.00 ns/op | 600.00 ns/op | 1.22 | | bytes32 Buffer.toString(hex) + 0x | 534.00 ns/op | 528.00 ns/op | 1.01 | | Object access 1 prop | 0.38600 ns/op | 0.37200 ns/op | 1.04 | | Map access 1 prop | 0.36800 ns/op | 0.37100 ns/op | 0.99 | | Object get x1000 | 5.4270 ns/op | 5.2590 ns/op | 1.03 | | Map get x1000 | 6.1760 ns/op | 5.9220 ns/op | 1.04 | | Object set x1000 | 39.053 ns/op | 26.256 ns/op | 1.49 | | Map set x1000 | 26.227 ns/op | 20.520 ns/op | 1.28 | | Return object 10000 times | 0.32410 ns/op | 0.31290 ns/op | 1.04 | | Throw Error 10000 times | 2.8332 us/op | 2.8357 us/op | 1.00 | | fastMsgIdFn sha256 / 200 bytes | 2.2310 us/op | 2.1290 us/op | 1.05 | | fastMsgIdFn h32 xxhash / 200 bytes | 513.00 ns/op | 492.00 ns/op | 1.04 | | fastMsgIdFn h64 xxhash / 200 bytes | 512.00 ns/op | 520.00 ns/op | 0.98 | | fastMsgIdFn sha256 / 1000 bytes | 6.4360 us/op | 6.2330 us/op | 1.03 | | fastMsgIdFn h32 xxhash / 1000 bytes | 623.00 ns/op | 626.00 ns/op | 1.00 | | fastMsgIdFn h64 xxhash / 1000 bytes | 573.00 ns/op | 591.00 ns/op | 0.97 | | fastMsgIdFn sha256 / 10000 bytes | 52.276 us/op | 51.580 us/op | 1.01 | | fastMsgIdFn h32 xxhash / 10000 bytes | 2.1050 us/op | 2.0540 us/op | 1.02 | | fastMsgIdFn h64 xxhash / 10000 bytes | 1.4370 us/op | 1.4440 us/op | 1.00 | | send data - 1000 256B messages | 14.432 ms/op | 12.970 ms/op | 1.11 | | send data - 1000 512B messages | 18.628 ms/op | 17.875 ms/op | 1.04 | | send data - 1000 1024B messages | 22.942 ms/op | 23.716 ms/op | 0.97 | | send data - 1000 1200B messages | 28.984 ms/op | 27.804 ms/op | 1.04 | | send data - 1000 2048B messages | 32.547 ms/op | 34.684 ms/op | 0.94 | | send data - 1000 4096B messages | 26.729 ms/op | 29.824 ms/op | 0.90 | | send data - 1000 16384B messages | 67.606 ms/op | 73.599 ms/op | 0.92 | | send data - 1000 65536B messages | 237.47 ms/op | 275.86 ms/op | 0.86 | | enrSubnets - fastDeserialize 64 bits | 1.3000 us/op | 1.2400 us/op | 1.05 | | enrSubnets - ssz BitVector 64 bits | 624.00 ns/op | 610.00 ns/op | 1.02 | | enrSubnets - fastDeserialize 4 bits | 402.00 ns/op | 392.00 ns/op | 1.03 | | enrSubnets - ssz BitVector 4 bits | 611.00 ns/op | 594.00 ns/op | 1.03 | | prioritizePeers score -10:0 att 32-0.1 sync 2-0 | 138.56 us/op | 130.25 us/op | 1.06 | | prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 | 148.52 us/op | 154.85 us/op | 0.96 | | prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 | 345.08 us/op | 378.14 us/op | 0.91 | | prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 | 491.87 us/op | 487.11 us/op | 1.01 | | prioritizePeers score 0:0 att 64-1 sync 4-1 | 602.88 us/op | 859.30 us/op | 0.70 | | array of 16000 items push then shift | 1.3426 us/op | 1.2611 us/op | 1.06 | | LinkedList of 16000 items push then shift | 6.7990 ns/op | 7.6700 ns/op | 0.89 | | array of 16000 items push then pop | 108.86 ns/op | 119.13 ns/op | 0.91 | | LinkedList of 16000 items push then pop | 6.4310 ns/op | 7.2940 ns/op | 0.88 | | array of 24000 items push then shift | 1.9622 us/op | 1.9672 us/op | 1.00 | | LinkedList of 24000 items push then shift | 6.6670 ns/op | 10.311 ns/op | 0.65 | | array of 24000 items push then pop | 135.73 ns/op | 174.38 ns/op | 0.78 | | LinkedList of 24000 items push then pop | 6.5300 ns/op | 8.6510 ns/op | 0.75 | | intersect bitArray bitLen 8 | 5.7170 ns/op | 5.6820 ns/op | 1.01 | | intersect array and set length 8 | 40.178 ns/op | 39.225 ns/op | 1.02 | | intersect bitArray bitLen 128 | 27.279 ns/op | 27.168 ns/op | 1.00 | | intersect array and set length 128 | 592.26 ns/op | 597.97 ns/op | 0.99 | | bitArray.getTrueBitIndexes() bitLen 128 | 1.9360 us/op | 2.1430 us/op | 0.90 | | bitArray.getTrueBitIndexes() bitLen 248 | 2.8210 us/op | 3.9540 us/op | 0.71 | | bitArray.getTrueBitIndexes() bitLen 512 | 5.6240 us/op | 7.5960 us/op | 0.74 | | Buffer.concat 32 items | 977.00 ns/op | 1.0470 us/op | 0.93 | | Uint8Array.set 32 items | 1.2360 us/op | 2.0220 us/op | 0.61 | | Buffer.copy | 1.4300 us/op | 1.9230 us/op | 0.74 | | Uint8Array.set - with subarray | 1.8830 us/op | 2.3970 us/op | 0.79 | | Uint8Array.set - without subarray | 1.6650 us/op | 1.9670 us/op | 0.85 | | Set add up to 64 items then delete first | 1.8323 us/op | 1.7929 us/op | 1.02 | | OrderedSet add up to 64 items then delete first | 2.8682 us/op | 3.5153 us/op | 0.82 | | Set add up to 64 items then delete last | 2.0944 us/op | 2.6028 us/op | 0.80 | | OrderedSet add up to 64 items then delete last | 3.1352 us/op | 4.1265 us/op | 0.76 | | Set add up to 64 items then delete middle | 2.0869 us/op | 2.1697 us/op | 0.96 | | OrderedSet add up to 64 items then delete middle | 4.5494 us/op | 4.5579 us/op | 1.00 | | Set add up to 128 items then delete first | 4.1429 us/op | 3.8012 us/op | 1.09 | | OrderedSet add up to 128 items then delete first | 6.2473 us/op | 5.8772 us/op | 1.06 | | Set add up to 128 items then delete last | 3.9528 us/op | 3.8227 us/op | 1.03 | | OrderedSet add up to 128 items then delete last | 5.9320 us/op | 7.2650 us/op | 0.82 | | Set add up to 128 items then delete middle | 3.9719 us/op | 4.1985 us/op | 0.95 | | OrderedSet add up to 128 items then delete middle | 11.781 us/op | 13.870 us/op | 0.85 | | Set add up to 256 items then delete first | 8.1672 us/op | 9.0318 us/op | 0.90 | | OrderedSet add up to 256 items then delete first | 12.926 us/op | 12.140 us/op | 1.06 | | Set add up to 256 items then delete last | 7.9146 us/op | 7.9935 us/op | 0.99 | | OrderedSet add up to 256 items then delete last | 11.769 us/op | 12.656 us/op | 0.93 | | Set add up to 256 items then delete middle | 7.6508 us/op | 7.9407 us/op | 0.96 | | OrderedSet add up to 256 items then delete middle | 34.765 us/op | 38.267 us/op | 0.91 | | transfer serialized Status (84 B) | 1.4880 us/op | 1.5650 us/op | 0.95 | | copy serialized Status (84 B) | 1.2690 us/op | 1.3310 us/op | 0.95 | | transfer serialized SignedVoluntaryExit (112 B) | 1.4410 us/op | 1.5950 us/op | 0.90 | | copy serialized SignedVoluntaryExit (112 B) | 1.1640 us/op | 1.3700 us/op | 0.85 | | transfer serialized ProposerSlashing (416 B) | 1.5030 us/op | 2.0040 us/op | 0.75 | | copy serialized ProposerSlashing (416 B) | 1.2820 us/op | 2.0570 us/op | 0.62 | | transfer serialized Attestation (485 B) | 1.5450 us/op | 2.0750 us/op | 0.74 | | copy serialized Attestation (485 B) | 1.5820 us/op | 1.9190 us/op | 0.82 | | transfer serialized AttesterSlashing (33232 B) | 2.2470 us/op | 1.7270 us/op | 1.30 | | copy serialized AttesterSlashing (33232 B) | 3.9600 us/op | 6.7130 us/op | 0.59 | | transfer serialized Small SignedBeaconBlock (128000 B) | 2.2880 us/op | 2.3310 us/op | 0.98 | | copy serialized Small SignedBeaconBlock (128000 B) | 9.5370 us/op | 20.562 us/op | 0.46 | | transfer serialized Avg SignedBeaconBlock (200000 B) | 2.7610 us/op | 2.6700 us/op | 1.03 | | copy serialized Avg SignedBeaconBlock (200000 B) | 13.476 us/op | 27.766 us/op | 0.49 | | transfer serialized BlobsSidecar (524380 B) | 3.0280 us/op | 3.5620 us/op | 0.85 | | copy serialized BlobsSidecar (524380 B) | 74.026 us/op | 80.890 us/op | 0.92 | | transfer serialized Big SignedBeaconBlock (1000000 B) | 3.0190 us/op | 3.8920 us/op | 0.78 | | copy serialized Big SignedBeaconBlock (1000000 B) | 138.12 us/op | 152.66 us/op | 0.90 | | pass gossip attestations to forkchoice per slot | 2.6215 ms/op | 2.7295 ms/op | 0.96 | | forkChoice updateHead vc 100000 bc 64 eq 0 | 506.75 us/op | 414.36 us/op | 1.22 | | forkChoice updateHead vc 600000 bc 64 eq 0 | 2.3824 ms/op | 2.5271 ms/op | 0.94 | | forkChoice updateHead vc 1000000 bc 64 eq 0 | 4.3885 ms/op | 4.3049 ms/op | 1.02 | | forkChoice updateHead vc 600000 bc 320 eq 0 | 2.5975 ms/op | 2.8577 ms/op | 0.91 | | forkChoice updateHead vc 600000 bc 1200 eq 0 | 2.4851 ms/op | 2.8533 ms/op | 0.87 | | forkChoice updateHead vc 600000 bc 7200 eq 0 | 2.7538 ms/op | 3.3540 ms/op | 0.82 | | forkChoice updateHead vc 600000 bc 64 eq 1000 | 9.0960 ms/op | 10.272 ms/op | 0.89 | | forkChoice updateHead vc 600000 bc 64 eq 10000 | 9.6065 ms/op | 9.7890 ms/op | 0.98 | | forkChoice updateHead vc 600000 bc 64 eq 300000 | 11.057 ms/op | 16.815 ms/op | 0.66 | | computeDeltas 500000 validators 300 proto nodes | 3.0024 ms/op | 3.1160 ms/op | 0.96 | | computeDeltas 500000 validators 1200 proto nodes | 3.0754 ms/op | 3.1583 ms/op | 0.97 | | computeDeltas 500000 validators 7200 proto nodes | 3.0145 ms/op | 3.2830 ms/op | 0.92 | | computeDeltas 750000 validators 300 proto nodes | 4.5362 ms/op | 4.8585 ms/op | 0.93 | | computeDeltas 750000 validators 1200 proto nodes | 4.4870 ms/op | 4.5282 ms/op | 0.99 | | computeDeltas 750000 validators 7200 proto nodes | 4.6128 ms/op | 4.6650 ms/op | 0.99 | | computeDeltas 1400000 validators 300 proto nodes | 8.3862 ms/op | 8.6684 ms/op | 0.97 | | computeDeltas 1400000 validators 1200 proto nodes | 8.5061 ms/op | 8.9272 ms/op | 0.95 | | computeDeltas 1400000 validators 7200 proto nodes | 8.5006 ms/op | 9.0095 ms/op | 0.94 | | computeDeltas 2100000 validators 300 proto nodes | 12.905 ms/op | 12.992 ms/op | 0.99 | | computeDeltas 2100000 validators 1200 proto nodes | 13.081 ms/op | 13.033 ms/op | 1.00 | | computeDeltas 2100000 validators 7200 proto nodes | 12.983 ms/op | 13.231 ms/op | 0.98 | | altair processAttestation - 250000 vs - 7PWei normalcase | 1.4955 ms/op | 1.4902 ms/op | 1.00 | | altair processAttestation - 250000 vs - 7PWei worstcase | 2.2576 ms/op | 3.0329 ms/op | 0.74 | | altair processAttestation - setStatus - 1/6 committees join | 72.136 us/op | 101.94 us/op | 0.71 | | altair processAttestation - setStatus - 1/3 committees join | 151.45 us/op | 187.10 us/op | 0.81 | | altair processAttestation - setStatus - 1/2 committees join | 207.96 us/op | 274.85 us/op | 0.76 | | altair processAttestation - setStatus - 2/3 committees join | 283.22 us/op | 352.09 us/op | 0.80 | | altair processAttestation - setStatus - 4/5 committees join | 419.70 us/op | 483.46 us/op | 0.87 | | altair processAttestation - setStatus - 100% committees join | 501.44 us/op | 602.71 us/op | 0.83 | | altair processBlock - 250000 vs - 7PWei normalcase | 3.9824 ms/op | 4.4703 ms/op | 0.89 | | altair processBlock - 250000 vs - 7PWei normalcase hashState | 19.073 ms/op | 26.201 ms/op | 0.73 | | altair processBlock - 250000 vs - 7PWei worstcase | 35.276 ms/op | 40.399 ms/op | 0.87 | | altair processBlock - 250000 vs - 7PWei worstcase hashState | 71.054 ms/op | 90.496 ms/op | 0.79 | | phase0 processBlock - 250000 vs - 7PWei normalcase | 1.9545 ms/op | 2.3496 ms/op | 0.83 | | phase0 processBlock - 250000 vs - 7PWei worstcase | 24.110 ms/op | 27.678 ms/op | 0.87 | | altair processEth1Data - 250000 vs - 7PWei normalcase | 265.91 us/op | 393.20 us/op | 0.68 | | getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 | 4.6530 us/op | 5.8040 us/op | 0.80 | | getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 | 19.153 us/op | 21.898 us/op | 0.87 | | getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 | 7.2340 us/op | 7.7660 us/op | 0.93 | | getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 | 4.8430 us/op | 5.8330 us/op | 0.83 | | getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 | 75.581 us/op | 86.936 us/op | 0.87 | | getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 | 831.34 us/op | 784.90 us/op | 1.06 | | getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 | 1.0999 ms/op | 625.57 us/op | 1.76 | | getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 | 670.27 us/op | 1.0621 ms/op | 0.63 | | getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 | 2.0582 ms/op | 1.9918 ms/op | 1.03 | | getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 | 1.1956 ms/op | 1.1960 ms/op | 1.00 | | getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 | 3.0861 ms/op | 3.0949 ms/op | 1.00 | | Tree 40 250000 create | 193.81 ms/op | 199.96 ms/op | 0.97 | | Tree 40 250000 get(125000) | 119.41 ns/op | 113.15 ns/op | 1.06 | | Tree 40 250000 set(125000) | 543.65 ns/op | 597.53 ns/op | 0.91 | | Tree 40 250000 toArray() | 13.687 ms/op | 15.011 ms/op | 0.91 | | Tree 40 250000 iterate all - toArray() + loop | 13.905 ms/op | 10.583 ms/op | 1.31 | | Tree 40 250000 iterate all - get(i) | 43.206 ms/op | 44.477 ms/op | 0.97 | | MutableVector 250000 create | 8.1164 ms/op | 10.881 ms/op | 0.75 | | MutableVector 250000 get(125000) | 5.9270 ns/op | 5.7450 ns/op | 1.03 | | MutableVector 250000 set(125000) | 182.97 ns/op | 187.91 ns/op | 0.97 | | MutableVector 250000 toArray() | 2.6935 ms/op | 3.7887 ms/op | 0.71 | | MutableVector 250000 iterate all - toArray() + loop | 2.8521 ms/op | 3.5573 ms/op | 0.80 | | MutableVector 250000 iterate all - get(i) | 1.4825 ms/op | 1.3876 ms/op | 1.07 | | Array 250000 create | 2.4261 ms/op | 3.1705 ms/op | 0.77 | | Array 250000 clone - spread | 1.3830 ms/op | 1.3699 ms/op | 1.01 | | Array 250000 get(125000) | 0.59300 ns/op | 0.56300 ns/op | 1.05 | | Array 250000 set(125000) | 0.59100 ns/op | 0.58000 ns/op | 1.02 | | Array 250000 iterate all - loop | 78.849 us/op | 76.162 us/op | 1.04 | | effectiveBalanceIncrements clone Uint8Array 300000 | 16.295 us/op | 27.819 us/op | 0.59 | | effectiveBalanceIncrements clone MutableVector 300000 | 323.00 ns/op | 298.00 ns/op | 1.08 | | effectiveBalanceIncrements rw all Uint8Array 300000 | 171.73 us/op | 160.61 us/op | 1.07 | | effectiveBalanceIncrements rw all MutableVector 300000 | 60.677 ms/op | 58.136 ms/op | 1.04 | | phase0 afterProcessEpoch - 250000 vs - 7PWei | 79.504 ms/op | 72.907 ms/op | 1.09 | | phase0 beforeProcessEpoch - 250000 vs - 7PWei | 50.344 ms/op | 47.600 ms/op | 1.06 | | altair processEpoch - mainnet_e81889 | 348.81 ms/op | 326.91 ms/op | 1.07 | | mainnet_e81889 - altair beforeProcessEpoch | 81.411 ms/op | 60.616 ms/op | 1.34 | | mainnet_e81889 - altair processJustificationAndFinalization | 15.857 us/op | 15.392 us/op | 1.03 | | mainnet_e81889 - altair processInactivityUpdates | 7.5926 ms/op | 4.7544 ms/op | 1.60 | | mainnet_e81889 - altair processRewardsAndPenalties | 47.866 ms/op | 47.817 ms/op | 1.00 | | mainnet_e81889 - altair processRegistryUpdates | 3.0330 us/op | 2.7700 us/op | 1.09 | | mainnet_e81889 - altair processSlashings | 1.0340 us/op | 775.00 ns/op | 1.33 | | mainnet_e81889 - altair processEth1DataReset | 785.00 ns/op | 751.00 ns/op | 1.05 | | mainnet_e81889 - altair processEffectiveBalanceUpdates | 848.44 us/op | 2.0632 ms/op | 0.41 | | mainnet_e81889 - altair processSlashingsReset | 2.9940 us/op | 2.6900 us/op | 1.11 | | mainnet_e81889 - altair processRandaoMixesReset | 4.1490 us/op | 3.5690 us/op | 1.16 | | mainnet_e81889 - altair processHistoricalRootsUpdate | 904.00 ns/op | 900.00 ns/op | 1.00 | | mainnet_e81889 - altair processParticipationFlagUpdates | 2.0010 us/op | 3.0500 us/op | 0.66 | | mainnet_e81889 - altair processSyncCommitteeUpdates | 861.00 ns/op | 951.00 ns/op | 0.91 | | mainnet_e81889 - altair afterProcessEpoch | 83.337 ms/op | 82.632 ms/op | 1.01 | | capella processEpoch - mainnet_e217614 | 1.5771 s/op | 1.2488 s/op | 1.26 | | mainnet_e217614 - capella beforeProcessEpoch | 463.40 ms/op | 248.27 ms/op | 1.87 | | mainnet_e217614 - capella processJustificationAndFinalization | 17.703 us/op | 16.316 us/op | 1.09 | | mainnet_e217614 - capella processInactivityUpdates | 16.901 ms/op | 18.443 ms/op | 0.92 | | mainnet_e217614 - capella processRewardsAndPenalties | 286.66 ms/op | 247.65 ms/op | 1.16 | | mainnet_e217614 - capella processRegistryUpdates | 13.765 us/op | 14.351 us/op | 0.96 | | mainnet_e217614 - capella processSlashings | 951.00 ns/op | 798.00 ns/op | 1.19 | | mainnet_e217614 - capella processEth1DataReset | 787.00 ns/op | 894.00 ns/op | 0.88 | | mainnet_e217614 - capella processEffectiveBalanceUpdates | 7.8732 ms/op | 4.3211 ms/op | 1.82 | | mainnet_e217614 - capella processSlashingsReset | 2.6110 us/op | 8.1940 us/op | 0.32 | | mainnet_e217614 - capella processRandaoMixesReset | 12.701 us/op | 7.9030 us/op | 1.61 | | mainnet_e217614 - capella processHistoricalRootsUpdate | 1.2760 us/op | 1.2450 us/op | 1.02 | | mainnet_e217614 - capella processParticipationFlagUpdates | 2.0870 us/op | 2.6870 us/op | 0.78 | | mainnet_e217614 - capella afterProcessEpoch | 254.65 ms/op | 216.65 ms/op | 1.18 | | phase0 processEpoch - mainnet_e58758 | 423.87 ms/op | 347.84 ms/op | 1.22 | | mainnet_e58758 - phase0 beforeProcessEpoch | 133.01 ms/op | 99.582 ms/op | 1.34 | | mainnet_e58758 - phase0 processJustificationAndFinalization | 16.499 us/op | 13.753 us/op | 1.20 | | mainnet_e58758 - phase0 processRewardsAndPenalties | 27.878 ms/op | 31.336 ms/op | 0.89 | | mainnet_e58758 - phase0 processRegistryUpdates | 6.1550 us/op | 7.7700 us/op | 0.79 | | mainnet_e58758 - phase0 processSlashings | 848.00 ns/op | 880.00 ns/op | 0.96 | | mainnet_e58758 - phase0 processEth1DataReset | 775.00 ns/op | 881.00 ns/op | 0.88 | | mainnet_e58758 - phase0 processEffectiveBalanceUpdates | 664.30 us/op | 1.1191 ms/op | 0.59 | | mainnet_e58758 - phase0 processSlashingsReset | 3.7290 us/op | 2.4370 us/op | 1.53 | | mainnet_e58758 - phase0 processRandaoMixesReset | 3.9690 us/op | 3.7040 us/op | 1.07 | | mainnet_e58758 - phase0 processHistoricalRootsUpdate | 920.00 ns/op | 1.2150 us/op | 0.76 | | mainnet_e58758 - phase0 processParticipationRecordUpdates | 4.6770 us/op | 5.3740 us/op | 0.87 | | mainnet_e58758 - phase0 afterProcessEpoch | 72.189 ms/op | 69.226 ms/op | 1.04 | | phase0 processEffectiveBalanceUpdates - 250000 normalcase | 831.84 us/op | 797.54 us/op | 1.04 | | phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 | 1.6902 ms/op | 1.3520 ms/op | 1.25 | | altair processInactivityUpdates - 250000 normalcase | 18.826 ms/op | 20.038 ms/op | 0.94 | | altair processInactivityUpdates - 250000 worstcase | 19.173 ms/op | 19.397 ms/op | 0.99 | | phase0 processRegistryUpdates - 250000 normalcase | 6.7750 us/op | 7.9990 us/op | 0.85 | | phase0 processRegistryUpdates - 250000 badcase_full_deposits | 305.12 us/op | 296.91 us/op | 1.03 | | phase0 processRegistryUpdates - 250000 worstcase 0.5 | 114.72 ms/op | 118.92 ms/op | 0.96 | | altair processRewardsAndPenalties - 250000 normalcase | 38.905 ms/op | 44.373 ms/op | 0.88 | | altair processRewardsAndPenalties - 250000 worstcase | 34.228 ms/op | 36.372 ms/op | 0.94 | | phase0 getAttestationDeltas - 250000 normalcase | 5.8770 ms/op | 5.5580 ms/op | 1.06 | | phase0 getAttestationDeltas - 250000 worstcase | 6.4921 ms/op | 5.8152 ms/op | 1.12 | | phase0 processSlashings - 250000 worstcase | 91.202 us/op | 95.629 us/op | 0.95 | | altair processSyncCommitteeUpdates - 250000 | 96.623 ms/op | 101.18 ms/op | 0.95 | | BeaconState.hashTreeRoot - No change | 482.00 ns/op | 463.00 ns/op | 1.04 | | BeaconState.hashTreeRoot - 1 full validator | 87.499 us/op | 72.518 us/op | 1.21 | | BeaconState.hashTreeRoot - 32 full validator | 995.69 us/op | 788.61 us/op | 1.26 | | BeaconState.hashTreeRoot - 512 full validator | 9.7652 ms/op | 11.108 ms/op | 0.88 | | BeaconState.hashTreeRoot - 1 validator.effectiveBalance | 140.79 us/op | 117.39 us/op | 1.20 | | BeaconState.hashTreeRoot - 32 validator.effectiveBalance | 1.7847 ms/op | 1.7823 ms/op | 1.00 | | BeaconState.hashTreeRoot - 512 validator.effectiveBalance | 18.700 ms/op | 27.865 ms/op | 0.67 | | BeaconState.hashTreeRoot - 1 balances | 83.416 us/op | 68.055 us/op | 1.23 | | BeaconState.hashTreeRoot - 32 balances | 711.89 us/op | 757.75 us/op | 0.94 | | BeaconState.hashTreeRoot - 512 balances | 10.909 ms/op | 8.1983 ms/op | 1.33 | | BeaconState.hashTreeRoot - 250000 balances | 145.52 ms/op | 186.90 ms/op | 0.78 | | aggregationBits - 2048 els - zipIndexesInBitList | 22.399 us/op | 22.051 us/op | 1.02 | | byteArrayEquals 32 | 46.777 ns/op | 48.457 ns/op | 0.97 | | Buffer.compare 32 | 14.866 ns/op | 15.590 ns/op | 0.95 | | byteArrayEquals 1024 | 1.2243 us/op | 1.2760 us/op | 0.96 | | Buffer.compare 1024 | 21.550 ns/op | 23.057 ns/op | 0.93 | | byteArrayEquals 16384 | 20.651 us/op | 20.114 us/op | 1.03 | | Buffer.compare 16384 | 198.63 ns/op | 179.31 ns/op | 1.11 | | byteArrayEquals 123687377 | 153.43 ms/op | 152.62 ms/op | 1.01 | | Buffer.compare 123687377 | 5.9866 ms/op | 4.7024 ms/op | 1.27 | | byteArrayEquals 32 - diff last byte | 47.879 ns/op | 47.465 ns/op | 1.01 | | Buffer.compare 32 - diff last byte | 16.066 ns/op | 16.269 ns/op | 0.99 | | byteArrayEquals 1024 - diff last byte | 1.2775 us/op | 1.2599 us/op | 1.01 | | Buffer.compare 1024 - diff last byte | 23.041 ns/op | 24.427 ns/op | 0.94 | | byteArrayEquals 16384 - diff last byte | 20.331 us/op | 20.109 us/op | 1.01 | | Buffer.compare 16384 - diff last byte | 201.14 ns/op | 175.00 ns/op | 1.15 | | byteArrayEquals 123687377 - diff last byte | 154.21 ms/op | 155.50 ms/op | 0.99 | | Buffer.compare 123687377 - diff last byte | 4.9416 ms/op | 4.7768 ms/op | 1.03 | | byteArrayEquals 32 - random bytes | 5.0320 ns/op | 4.9630 ns/op | 1.01 | | Buffer.compare 32 - random bytes | 16.404 ns/op | 15.830 ns/op | 1.04 | | byteArrayEquals 1024 - random bytes | 4.9590 ns/op | 4.9660 ns/op | 1.00 | | Buffer.compare 1024 - random bytes | 16.387 ns/op | 15.910 ns/op | 1.03 | | byteArrayEquals 16384 - random bytes | 5.0090 ns/op | 4.9990 ns/op | 1.00 | | Buffer.compare 16384 - random bytes | 16.225 ns/op | 15.862 ns/op | 1.02 | | byteArrayEquals 123687377 - random bytes | 8.0900 ns/op | 8.0000 ns/op | 1.01 | | Buffer.compare 123687377 - random bytes | 19.310 ns/op | 19.060 ns/op | 1.01 | | regular array get 100000 times | 31.593 us/op | 31.197 us/op | 1.01 | | wrappedArray get 100000 times | 31.390 us/op | 31.146 us/op | 1.01 | | arrayWithProxy get 100000 times | 11.555 ms/op | 9.7112 ms/op | 1.19 | | ssz.Root.equals | 45.155 ns/op | 44.153 ns/op | 1.02 | | byteArrayEquals | 44.055 ns/op | 43.177 ns/op | 1.02 | | Buffer.compare | 9.2340 ns/op | 9.1970 ns/op | 1.00 | | shuffle list - 16384 els | 5.8861 ms/op | 5.7497 ms/op | 1.02 | | shuffle list - 250000 els | 83.684 ms/op | 83.480 ms/op | 1.00 | | processSlot - 1 slots | 15.005 us/op | 9.6890 us/op | 1.55 | | processSlot - 32 slots | 2.2536 ms/op | 1.8621 ms/op | 1.21 | | getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei | 39.817 ms/op | 39.255 ms/op | 1.01 | | getCommitteeAssignments - req 1 vs - 250000 vc | 1.9002 ms/op | 1.7610 ms/op | 1.08 | | getCommitteeAssignments - req 100 vs - 250000 vc | 3.7091 ms/op | 3.4273 ms/op | 1.08 | | getCommitteeAssignments - req 1000 vs - 250000 vc | 3.9544 ms/op | 3.8374 ms/op | 1.03 | | findModifiedValidators - 10000 modified validators | 308.11 ms/op | 242.44 ms/op | 1.27 | | findModifiedValidators - 1000 modified validators | 207.22 ms/op | 184.57 ms/op | 1.12 | | findModifiedValidators - 100 modified validators | 203.18 ms/op | 146.19 ms/op | 1.39 | | findModifiedValidators - 10 modified validators | 187.83 ms/op | 142.93 ms/op | 1.31 | | findModifiedValidators - 1 modified validators | 172.32 ms/op | 180.07 ms/op | 0.96 | | findModifiedValidators - no difference | 170.53 ms/op | 135.66 ms/op | 1.26 | | compare ViewDUs | 3.1008 s/op | 3.2527 s/op | 0.95 | | compare each validator Uint8Array | 1.2722 s/op | 1.4118 s/op | 0.90 | | compare ViewDU to Uint8Array | 725.40 ms/op | 785.34 ms/op | 0.92 | | migrate state 1000000 validators, 24 modified, 0 new | 550.62 ms/op | 565.17 ms/op | 0.97 | | migrate state 1000000 validators, 1700 modified, 1000 new | 837.81 ms/op | 761.83 ms/op | 1.10 | | migrate state 1000000 validators, 3400 modified, 2000 new | 1.0195 s/op | 1.1310 s/op | 0.90 | | migrate state 1500000 validators, 24 modified, 0 new | 584.80 ms/op | 582.13 ms/op | 1.00 | | migrate state 1500000 validators, 1700 modified, 1000 new | 832.18 ms/op | 774.72 ms/op | 1.07 | | migrate state 1500000 validators, 3400 modified, 2000 new | 1.0550 s/op | 893.68 ms/op | 1.18 | | RootCache.getBlockRootAtSlot - 250000 vs - 7PWei | 7.1400 ns/op | 6.1100 ns/op | 1.17 | | state getBlockRootAtSlot - 250000 vs - 7PWei | 661.00 ns/op | 872.53 ns/op | 0.76 | | computeProposers - vc 250000 | 6.6521 ms/op | 5.5389 ms/op | 1.20 | | computeEpochShuffling - vc 250000 | 85.209 ms/op | 81.252 ms/op | 1.05 | | getNextSyncCommittee - vc 250000 | 105.61 ms/op | 93.144 ms/op | 1.13 | | computeSigningRoot for AttestationData | 18.427 us/op | 19.558 us/op | 0.94 | | hash AttestationData serialized data then Buffer.toString(base64) | 1.2155 us/op | 1.2264 us/op | 0.99 | | toHexString serialized data | 780.61 ns/op | 777.08 ns/op | 1.00 | | Buffer.toString(base64) | 138.07 ns/op | 143.32 ns/op | 0.96 |

by benchmarkbot/action