ChainSafe / lodestar

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

test: increase timeout of keystore tests #6846

Closed nflaig closed 1 month ago

nflaig commented 1 month ago

Motivation

This test fails from time to time due to timeout, e.g. https://github.com/ChainSafe/lodestar/actions/runs/9347594913/job/25725115027?pr=6845#step:5:4076

Description

Increase timeout of keystore tests

github-actions[bot] commented 1 month ago

Performance Report

✔️ no performance regression detected

Full benchmark results | Benchmark suite | Current: 481581e16d3cdd0f91d999d4f4850cf048cf2743 | Previous: 8b6ecc44c1892115d0e7396b2a5f0ae8fc0d9e6f | Ratio | |-|-|-|-| | getPubkeys - index2pubkey - req 1000 vs - 250000 vc | 1.2563 ms/op | 938.75 us/op | 1.34 | | getPubkeys - validatorsArr - req 1000 vs - 250000 vc | 85.486 us/op | 48.287 us/op | 1.77 | | BLS verify - blst-native | 1.2639 ms/op | 1.1825 ms/op | 1.07 | | BLS verifyMultipleSignatures 3 - blst-native | 2.5949 ms/op | 2.4792 ms/op | 1.05 | | BLS verifyMultipleSignatures 8 - blst-native | 5.8867 ms/op | 5.3882 ms/op | 1.09 | | BLS verifyMultipleSignatures 32 - blst-native | 20.217 ms/op | 19.694 ms/op | 1.03 | | BLS verifyMultipleSignatures 64 - blst-native | 40.621 ms/op | 38.632 ms/op | 1.05 | | BLS verifyMultipleSignatures 128 - blst-native | 81.747 ms/op | 75.759 ms/op | 1.08 | | BLS deserializing 10000 signatures | 924.92 ms/op | 860.86 ms/op | 1.07 | | BLS deserializing 100000 signatures | 9.2727 s/op | 8.8004 s/op | 1.05 | | BLS verifyMultipleSignatures - same message - 3 - blst-native | 1.2742 ms/op | 1.2651 ms/op | 1.01 | | BLS verifyMultipleSignatures - same message - 8 - blst-native | 1.4469 ms/op | 1.4332 ms/op | 1.01 | | BLS verifyMultipleSignatures - same message - 32 - blst-native | 2.3179 ms/op | 2.2299 ms/op | 1.04 | | BLS verifyMultipleSignatures - same message - 64 - blst-native | 3.4862 ms/op | 3.3273 ms/op | 1.05 | | BLS verifyMultipleSignatures - same message - 128 - blst-native | 5.5178 ms/op | 5.4543 ms/op | 1.01 | | BLS aggregatePubkeys 32 - blst-native | 27.757 us/op | 27.016 us/op | 1.03 | | BLS aggregatePubkeys 128 - blst-native | 108.19 us/op | 105.64 us/op | 1.02 | | notSeenSlots=1 numMissedVotes=1 numBadVotes=10 | 64.633 ms/op | 50.345 ms/op | 1.28 | | notSeenSlots=1 numMissedVotes=0 numBadVotes=4 | 56.937 ms/op | 48.830 ms/op | 1.17 | | notSeenSlots=2 numMissedVotes=1 numBadVotes=10 | 46.827 ms/op | 29.092 ms/op | 1.61 | | getSlashingsAndExits - default max | 149.08 us/op | 89.072 us/op | 1.67 | | getSlashingsAndExits - 2k | 353.18 us/op | 258.60 us/op | 1.37 | | proposeBlockBody type=full, size=empty | 6.6833 ms/op | 5.1887 ms/op | 1.29 | | isKnown best case - 1 super set check | 422.00 ns/op | 298.00 ns/op | 1.42 | | isKnown normal case - 2 super set checks | 436.00 ns/op | 288.00 ns/op | 1.51 | | isKnown worse case - 16 super set checks | 488.00 ns/op | 301.00 ns/op | 1.62 | | InMemoryCheckpointStateCache - add get delete | 6.5650 us/op | 4.3630 us/op | 1.50 | | validate api signedAggregateAndProof - struct | 2.5577 ms/op | 2.4355 ms/op | 1.05 | | validate gossip signedAggregateAndProof - struct | 2.5735 ms/op | 2.4335 ms/op | 1.06 | | validate gossip attestation - vc 640000 | 1.2579 ms/op | 1.1844 ms/op | 1.06 | | batch validate gossip attestation - vc 640000 - chunk 32 | 171.99 us/op | 152.42 us/op | 1.13 | | batch validate gossip attestation - vc 640000 - chunk 64 | 159.72 us/op | 134.15 us/op | 1.19 | | batch validate gossip attestation - vc 640000 - chunk 128 | 151.52 us/op | 135.13 us/op | 1.12 | | batch validate gossip attestation - vc 640000 - chunk 256 | 146.17 us/op | 135.43 us/op | 1.08 | | pickEth1Vote - no votes | 1.2871 ms/op | 1.1063 ms/op | 1.16 | | pickEth1Vote - max votes | 12.532 ms/op | 9.7620 ms/op | 1.28 | | pickEth1Vote - Eth1Data hashTreeRoot value x2048 | 21.676 ms/op | 20.370 ms/op | 1.06 | | pickEth1Vote - Eth1Data hashTreeRoot tree x2048 | 33.722 ms/op | 19.802 ms/op | 1.70 | | pickEth1Vote - Eth1Data fastSerialize value x2048 | 722.61 us/op | 513.50 us/op | 1.41 | | pickEth1Vote - Eth1Data fastSerialize tree x2048 | 5.5281 ms/op | 7.5258 ms/op | 0.73 | | bytes32 toHexString | 847.00 ns/op | 533.00 ns/op | 1.59 | | bytes32 Buffer.toString(hex) | 276.00 ns/op | 249.00 ns/op | 1.11 | | bytes32 Buffer.toString(hex) from Uint8Array | 522.00 ns/op | 380.00 ns/op | 1.37 | | bytes32 Buffer.toString(hex) + 0x | 303.00 ns/op | 266.00 ns/op | 1.14 | | Object access 1 prop | 0.22600 ns/op | 0.14700 ns/op | 1.54 | | Map access 1 prop | 0.14300 ns/op | 0.13300 ns/op | 1.08 | | Object get x1000 | 6.8070 ns/op | 6.0840 ns/op | 1.12 | | Map get x1000 | 6.9090 ns/op | 7.0500 ns/op | 0.98 | | Object set x1000 | 61.102 ns/op | 35.508 ns/op | 1.72 | | Map set x1000 | 40.882 ns/op | 24.734 ns/op | 1.65 | | Return object 10000 times | 0.33480 ns/op | 0.29970 ns/op | 1.12 | | Throw Error 10000 times | 3.6250 us/op | 3.5739 us/op | 1.01 | | fastMsgIdFn sha256 / 200 bytes | 2.5720 us/op | 2.2180 us/op | 1.16 | | fastMsgIdFn h32 xxhash / 200 bytes | 294.00 ns/op | 233.00 ns/op | 1.26 | | fastMsgIdFn h64 xxhash / 200 bytes | 284.00 ns/op | 265.00 ns/op | 1.07 | | fastMsgIdFn sha256 / 1000 bytes | 7.7410 us/op | 7.6520 us/op | 1.01 | | fastMsgIdFn h32 xxhash / 1000 bytes | 441.00 ns/op | 391.00 ns/op | 1.13 | | fastMsgIdFn h64 xxhash / 1000 bytes | 361.00 ns/op | 349.00 ns/op | 1.03 | | fastMsgIdFn sha256 / 10000 bytes | 68.121 us/op | 66.804 us/op | 1.02 | | fastMsgIdFn h32 xxhash / 10000 bytes | 2.0360 us/op | 1.9370 us/op | 1.05 | | fastMsgIdFn h64 xxhash / 10000 bytes | 1.3360 us/op | 1.2560 us/op | 1.06 | | send data - 1000 256B messages | 15.737 ms/op | 13.367 ms/op | 1.18 | | send data - 1000 512B messages | 22.316 ms/op | 19.066 ms/op | 1.17 | | send data - 1000 1024B messages | 32.794 ms/op | 27.968 ms/op | 1.17 | | send data - 1000 1200B messages | 32.947 ms/op | 28.272 ms/op | 1.17 | | send data - 1000 2048B messages | 26.616 ms/op | 32.347 ms/op | 0.82 | | send data - 1000 4096B messages | 39.021 ms/op | 33.821 ms/op | 1.15 | | send data - 1000 16384B messages | 87.611 ms/op | 78.672 ms/op | 1.11 | | send data - 1000 65536B messages | 286.43 ms/op | 221.38 ms/op | 1.29 | | enrSubnets - fastDeserialize 64 bits | 1.3460 us/op | 1.1220 us/op | 1.20 | | enrSubnets - ssz BitVector 64 bits | 394.00 ns/op | 351.00 ns/op | 1.12 | | enrSubnets - fastDeserialize 4 bits | 225.00 ns/op | 151.00 ns/op | 1.49 | | enrSubnets - ssz BitVector 4 bits | 592.00 ns/op | 375.00 ns/op | 1.58 | | prioritizePeers score -10:0 att 32-0.1 sync 2-0 | 223.50 us/op | 157.00 us/op | 1.42 | | prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 | 215.24 us/op | 152.62 us/op | 1.41 | | prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 | 398.14 us/op | 271.88 us/op | 1.46 | | prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 | 605.15 us/op | 404.83 us/op | 1.49 | | prioritizePeers score 0:0 att 64-1 sync 4-1 | 794.70 us/op | 602.36 us/op | 1.32 | | array of 16000 items push then shift | 1.9285 us/op | 1.7163 us/op | 1.12 | | LinkedList of 16000 items push then shift | 10.794 ns/op | 7.5930 ns/op | 1.42 | | array of 16000 items push then pop | 155.09 ns/op | 122.57 ns/op | 1.27 | | LinkedList of 16000 items push then pop | 11.416 ns/op | 7.1560 ns/op | 1.60 | | array of 24000 items push then shift | 2.9075 us/op | 2.4802 us/op | 1.17 | | LinkedList of 24000 items push then shift | 11.490 ns/op | 7.3270 ns/op | 1.57 | | array of 24000 items push then pop | 198.08 ns/op | 137.18 ns/op | 1.44 | | LinkedList of 24000 items push then pop | 12.462 ns/op | 7.6490 ns/op | 1.63 | | intersect bitArray bitLen 8 | 9.7190 ns/op | 6.7810 ns/op | 1.43 | | intersect array and set length 8 | 92.750 ns/op | 48.769 ns/op | 1.90 | | intersect bitArray bitLen 128 | 42.397 ns/op | 31.000 ns/op | 1.37 | | intersect array and set length 128 | 1.0139 us/op | 738.23 ns/op | 1.37 | | bitArray.getTrueBitIndexes() bitLen 128 | 2.1400 us/op | 1.9830 us/op | 1.08 | | bitArray.getTrueBitIndexes() bitLen 248 | 3.5890 us/op | 3.8110 us/op | 0.94 | | bitArray.getTrueBitIndexes() bitLen 512 | 7.5870 us/op | 7.7020 us/op | 0.99 | | Buffer.concat 32 items | 1.2870 us/op | 1.0040 us/op | 1.28 | | Uint8Array.set 32 items | 2.4110 us/op | 1.4950 us/op | 1.61 | | Buffer.copy | 2.4960 us/op | 1.6940 us/op | 1.47 | | Uint8Array.set - with subarray | 4.3650 us/op | 2.9030 us/op | 1.50 | | Uint8Array.set - without subarray | 2.8590 us/op | 1.4940 us/op | 1.91 | | Set add up to 64 items then delete first | 3.7090 us/op | 2.6886 us/op | 1.38 | | OrderedSet add up to 64 items then delete first | 6.0329 us/op | 3.8843 us/op | 1.55 | | Set add up to 64 items then delete last | 4.1112 us/op | 3.0223 us/op | 1.36 | | OrderedSet add up to 64 items then delete last | 6.3136 us/op | 3.9977 us/op | 1.58 | | Set add up to 64 items then delete middle | 4.0605 us/op | 2.5951 us/op | 1.56 | | OrderedSet add up to 64 items then delete middle | 8.4205 us/op | 5.5474 us/op | 1.52 | | Set add up to 128 items then delete first | 8.2280 us/op | 5.2599 us/op | 1.56 | | OrderedSet add up to 128 items then delete first | 13.818 us/op | 7.6838 us/op | 1.80 | | Set add up to 128 items then delete last | 7.9800 us/op | 5.1576 us/op | 1.55 | | OrderedSet add up to 128 items then delete last | 11.457 us/op | 7.9401 us/op | 1.44 | | Set add up to 128 items then delete middle | 7.4750 us/op | 5.2871 us/op | 1.41 | | OrderedSet add up to 128 items then delete middle | 21.092 us/op | 14.662 us/op | 1.44 | | Set add up to 256 items then delete first | 17.641 us/op | 10.655 us/op | 1.66 | | OrderedSet add up to 256 items then delete first | 30.256 us/op | 16.337 us/op | 1.85 | | Set add up to 256 items then delete last | 17.184 us/op | 9.7729 us/op | 1.76 | | OrderedSet add up to 256 items then delete last | 24.387 us/op | 14.910 us/op | 1.64 | | Set add up to 256 items then delete middle | 16.565 us/op | 9.9254 us/op | 1.67 | | OrderedSet add up to 256 items then delete middle | 56.769 us/op | 42.476 us/op | 1.34 | | transfer serialized Status (84 B) | 1.9030 us/op | 1.5230 us/op | 1.25 | | copy serialized Status (84 B) | 1.5500 us/op | 1.2640 us/op | 1.23 | | transfer serialized SignedVoluntaryExit (112 B) | 1.9030 us/op | 1.6770 us/op | 1.13 | | copy serialized SignedVoluntaryExit (112 B) | 1.7520 us/op | 1.3630 us/op | 1.29 | | transfer serialized ProposerSlashing (416 B) | 2.6850 us/op | 2.3350 us/op | 1.15 | | copy serialized ProposerSlashing (416 B) | 3.1620 us/op | 2.3290 us/op | 1.36 | | transfer serialized Attestation (485 B) | 3.7260 us/op | 1.7670 us/op | 2.11 | | copy serialized Attestation (485 B) | 3.1380 us/op | 1.6200 us/op | 1.94 | | transfer serialized AttesterSlashing (33232 B) | 3.2470 us/op | 1.7960 us/op | 1.81 | | copy serialized AttesterSlashing (33232 B) | 12.599 us/op | 5.3770 us/op | 2.34 | | transfer serialized Small SignedBeaconBlock (128000 B) | 5.4490 us/op | 2.5500 us/op | 2.14 | | copy serialized Small SignedBeaconBlock (128000 B) | 39.429 us/op | 17.098 us/op | 2.31 | | transfer serialized Avg SignedBeaconBlock (200000 B) | 6.4430 us/op | 3.1060 us/op | 2.07 | | copy serialized Avg SignedBeaconBlock (200000 B) | 51.760 us/op | 22.921 us/op | 2.26 | | transfer serialized BlobsSidecar (524380 B) | 5.2890 us/op | 3.1200 us/op | 1.70 | | copy serialized BlobsSidecar (524380 B) | 140.46 us/op | 81.207 us/op | 1.73 | | transfer serialized Big SignedBeaconBlock (1000000 B) | 4.9830 us/op | 2.8550 us/op | 1.75 | | copy serialized Big SignedBeaconBlock (1000000 B) | 320.05 us/op | 157.49 us/op | 2.03 | | pass gossip attestations to forkchoice per slot | 3.9369 ms/op | 3.1808 ms/op | 1.24 | | forkChoice updateHead vc 100000 bc 64 eq 0 | 838.53 us/op | 507.21 us/op | 1.65 | | forkChoice updateHead vc 600000 bc 64 eq 0 | 4.8907 ms/op | 3.1880 ms/op | 1.53 | | forkChoice updateHead vc 1000000 bc 64 eq 0 | 9.8954 ms/op | 5.4507 ms/op | 1.82 | | forkChoice updateHead vc 600000 bc 320 eq 0 | 5.5137 ms/op | 3.0998 ms/op | 1.78 | | forkChoice updateHead vc 600000 bc 1200 eq 0 | 4.6279 ms/op | 3.3082 ms/op | 1.40 | | forkChoice updateHead vc 600000 bc 7200 eq 0 | 5.6131 ms/op | 3.9695 ms/op | 1.41 | | forkChoice updateHead vc 600000 bc 64 eq 1000 | 12.839 ms/op | 11.389 ms/op | 1.13 | | forkChoice updateHead vc 600000 bc 64 eq 10000 | 11.938 ms/op | 11.522 ms/op | 1.04 | | forkChoice updateHead vc 600000 bc 64 eq 300000 | 39.770 ms/op | 15.355 ms/op | 2.59 | | computeDeltas 500000 validators 300 proto nodes | 5.6223 ms/op | 3.7209 ms/op | 1.51 | | computeDeltas 500000 validators 1200 proto nodes | 4.4078 ms/op | 3.8218 ms/op | 1.15 | | computeDeltas 500000 validators 7200 proto nodes | 3.8869 ms/op | 4.1058 ms/op | 0.95 | | computeDeltas 750000 validators 300 proto nodes | 5.8489 ms/op | 6.5951 ms/op | 0.89 | | computeDeltas 750000 validators 1200 proto nodes | 6.0226 ms/op | 6.1981 ms/op | 0.97 | | computeDeltas 750000 validators 7200 proto nodes | 6.6597 ms/op | 5.9281 ms/op | 1.12 | | computeDeltas 1400000 validators 300 proto nodes | 11.997 ms/op | 10.811 ms/op | 1.11 | | computeDeltas 1400000 validators 1200 proto nodes | 15.565 ms/op | 10.407 ms/op | 1.50 | | computeDeltas 1400000 validators 7200 proto nodes | 16.738 ms/op | 10.135 ms/op | 1.65 | | computeDeltas 2100000 validators 300 proto nodes | 21.976 ms/op | 14.836 ms/op | 1.48 | | computeDeltas 2100000 validators 1200 proto nodes | 22.450 ms/op | 14.403 ms/op | 1.56 | | computeDeltas 2100000 validators 7200 proto nodes | 22.127 ms/op | 14.908 ms/op | 1.48 | | altair processAttestation - 250000 vs - 7PWei normalcase | 2.7566 ms/op | 1.7732 ms/op | 1.55 | | altair processAttestation - 250000 vs - 7PWei worstcase | 4.7676 ms/op | 2.6951 ms/op | 1.77 | | altair processAttestation - setStatus - 1/6 committees join | 121.57 us/op | 88.826 us/op | 1.37 | | altair processAttestation - setStatus - 1/3 committees join | 252.19 us/op | 184.30 us/op | 1.37 | | altair processAttestation - setStatus - 1/2 committees join | 318.64 us/op | 246.23 us/op | 1.29 | | altair processAttestation - setStatus - 2/3 committees join | 394.35 us/op | 334.35 us/op | 1.18 | | altair processAttestation - setStatus - 4/5 committees join | 632.17 us/op | 469.32 us/op | 1.35 | | altair processAttestation - setStatus - 100% committees join | 749.13 us/op | 567.62 us/op | 1.32 | | altair processBlock - 250000 vs - 7PWei normalcase | 6.7229 ms/op | 4.3318 ms/op | 1.55 | | altair processBlock - 250000 vs - 7PWei normalcase hashState | 39.108 ms/op | 26.430 ms/op | 1.48 | | altair processBlock - 250000 vs - 7PWei worstcase | 53.544 ms/op | 39.800 ms/op | 1.35 | | altair processBlock - 250000 vs - 7PWei worstcase hashState | 104.60 ms/op | 85.064 ms/op | 1.23 | | phase0 processBlock - 250000 vs - 7PWei normalcase | 3.0922 ms/op | 2.2540 ms/op | 1.37 | | phase0 processBlock - 250000 vs - 7PWei worstcase | 31.624 ms/op | 26.556 ms/op | 1.19 | | altair processEth1Data - 250000 vs - 7PWei normalcase | 543.74 us/op | 409.92 us/op | 1.33 | | getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 | 10.541 us/op | 6.5370 us/op | 1.61 | | getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 | 44.066 us/op | 24.866 us/op | 1.77 | | getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 | 15.767 us/op | 9.0260 us/op | 1.75 | | getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 | 11.054 us/op | 6.1080 us/op | 1.81 | | getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 | 147.21 us/op | 118.29 us/op | 1.24 | | getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 | 1.0010 ms/op | 706.45 us/op | 1.42 | | getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 | 1.2099 ms/op | 954.76 us/op | 1.27 | | getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 | 1.1050 ms/op | 977.66 us/op | 1.13 | | getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 | 3.0623 ms/op | 2.2173 ms/op | 1.38 | | getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 | 2.0746 ms/op | 1.5585 ms/op | 1.33 | | getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 | 6.0932 ms/op | 3.6733 ms/op | 1.66 | | Tree 40 250000 create | 503.81 ms/op | 265.84 ms/op | 1.90 | | Tree 40 250000 get(125000) | 173.50 ns/op | 158.84 ns/op | 1.09 | | Tree 40 250000 set(125000) | 1.2510 us/op | 760.55 ns/op | 1.64 | | Tree 40 250000 toArray() | 24.587 ms/op | 21.602 ms/op | 1.14 | | Tree 40 250000 iterate all - toArray() + loop | 27.135 ms/op | 22.924 ms/op | 1.18 | | Tree 40 250000 iterate all - get(i) | 66.679 ms/op | 58.627 ms/op | 1.14 | | MutableVector 250000 create | 13.714 ms/op | 10.938 ms/op | 1.25 | | MutableVector 250000 get(125000) | 7.9010 ns/op | 6.3670 ns/op | 1.24 | | MutableVector 250000 set(125000) | 486.09 ns/op | 220.73 ns/op | 2.20 | | MutableVector 250000 toArray() | 5.6536 ms/op | 3.8434 ms/op | 1.47 | | MutableVector 250000 iterate all - toArray() + loop | 5.2588 ms/op | 4.4589 ms/op | 1.18 | | MutableVector 250000 iterate all - get(i) | 2.2431 ms/op | 1.6040 ms/op | 1.40 | | Array 250000 create | 4.4824 ms/op | 3.7210 ms/op | 1.20 | | Array 250000 clone - spread | 1.7817 ms/op | 1.4920 ms/op | 1.19 | | Array 250000 get(125000) | 0.52100 ns/op | 0.43800 ns/op | 1.19 | | Array 250000 set(125000) | 0.56700 ns/op | 0.46200 ns/op | 1.23 | | Array 250000 iterate all - loop | 104.32 us/op | 95.067 us/op | 1.10 | | effectiveBalanceIncrements clone Uint8Array 300000 | 66.809 us/op | 39.069 us/op | 1.71 | | effectiveBalanceIncrements clone MutableVector 300000 | 162.00 ns/op | 132.00 ns/op | 1.23 | | effectiveBalanceIncrements rw all Uint8Array 300000 | 217.68 us/op | 200.81 us/op | 1.08 | | effectiveBalanceIncrements rw all MutableVector 300000 | 150.98 ms/op | 71.587 ms/op | 2.11 | | phase0 afterProcessEpoch - 250000 vs - 7PWei | 103.38 ms/op | 91.639 ms/op | 1.13 | | phase0 beforeProcessEpoch - 250000 vs - 7PWei | 78.524 ms/op | 44.203 ms/op | 1.78 | | altair processEpoch - mainnet_e81889 | 597.14 ms/op | 426.31 ms/op | 1.40 | | mainnet_e81889 - altair beforeProcessEpoch | 123.94 ms/op | 71.217 ms/op | 1.74 | | mainnet_e81889 - altair processJustificationAndFinalization | 31.155 us/op | 16.760 us/op | 1.86 | | mainnet_e81889 - altair processInactivityUpdates | 9.7886 ms/op | 6.7589 ms/op | 1.45 | | mainnet_e81889 - altair processRewardsAndPenalties | 77.798 ms/op | 44.483 ms/op | 1.75 | | mainnet_e81889 - altair processRegistryUpdates | 5.7980 us/op | 2.9110 us/op | 1.99 | | mainnet_e81889 - altair processSlashings | 1.3180 us/op | 472.00 ns/op | 2.79 | | mainnet_e81889 - altair processEth1DataReset | 1.0030 us/op | 484.00 ns/op | 2.07 | | mainnet_e81889 - altair processEffectiveBalanceUpdates | 6.4421 ms/op | 1.1177 ms/op | 5.76 | | mainnet_e81889 - altair processSlashingsReset | 7.3900 us/op | 3.8280 us/op | 1.93 | | mainnet_e81889 - altair processRandaoMixesReset | 10.500 us/op | 5.7230 us/op | 1.83 | | mainnet_e81889 - altair processHistoricalRootsUpdate | 1.1990 us/op | 1.1660 us/op | 1.03 | | mainnet_e81889 - altair processParticipationFlagUpdates | 4.7810 us/op | 3.4650 us/op | 1.38 | | mainnet_e81889 - altair processSyncCommitteeUpdates | 679.00 ns/op | 770.00 ns/op | 0.88 | | mainnet_e81889 - altair afterProcessEpoch | 100.22 ms/op | 100.10 ms/op | 1.00 | | capella processEpoch - mainnet_e217614 | 1.7624 s/op | 2.0809 s/op | 0.85 | | mainnet_e217614 - capella beforeProcessEpoch | 394.56 ms/op | 337.65 ms/op | 1.17 | | mainnet_e217614 - capella processJustificationAndFinalization | 29.620 us/op | 42.337 us/op | 0.70 | | mainnet_e217614 - capella processInactivityUpdates | 25.990 ms/op | 35.901 ms/op | 0.72 | | mainnet_e217614 - capella processRewardsAndPenalties | 329.64 ms/op | 289.96 ms/op | 1.14 | | mainnet_e217614 - capella processRegistryUpdates | 28.235 us/op | 14.420 us/op | 1.96 | | mainnet_e217614 - capella processSlashings | 1.3140 us/op | 735.00 ns/op | 1.79 | | mainnet_e217614 - capella processEth1DataReset | 1.1030 us/op | 467.00 ns/op | 2.36 | | mainnet_e217614 - capella processEffectiveBalanceUpdates | 20.698 ms/op | 3.8323 ms/op | 5.40 | | mainnet_e217614 - capella processSlashingsReset | 5.7670 us/op | 5.3130 us/op | 1.09 | | mainnet_e217614 - capella processRandaoMixesReset | 9.5040 us/op | 10.147 us/op | 0.94 | | mainnet_e217614 - capella processHistoricalRootsUpdate | 1.0680 us/op | 1.3510 us/op | 0.79 | | mainnet_e217614 - capella processParticipationFlagUpdates | 3.6850 us/op | 4.7550 us/op | 0.77 | | mainnet_e217614 - capella afterProcessEpoch | 320.46 ms/op | 284.38 ms/op | 1.13 | | phase0 processEpoch - mainnet_e58758 | 653.08 ms/op | 426.22 ms/op | 1.53 | | mainnet_e58758 - phase0 beforeProcessEpoch | 165.89 ms/op | 117.85 ms/op | 1.41 | | mainnet_e58758 - phase0 processJustificationAndFinalization | 29.021 us/op | 13.725 us/op | 2.11 | | mainnet_e58758 - phase0 processRewardsAndPenalties | 40.923 ms/op | 21.140 ms/op | 1.94 | | mainnet_e58758 - phase0 processRegistryUpdates | 14.034 us/op | 7.3030 us/op | 1.92 | | mainnet_e58758 - phase0 processSlashings | 810.00 ns/op | 327.00 ns/op | 2.48 | | mainnet_e58758 - phase0 processEth1DataReset | 745.00 ns/op | 459.00 ns/op | 1.62 | | mainnet_e58758 - phase0 processEffectiveBalanceUpdates | 1.5495 ms/op | 938.17 us/op | 1.65 | | mainnet_e58758 - phase0 processSlashingsReset | 4.6810 us/op | 3.7790 us/op | 1.24 | | mainnet_e58758 - phase0 processRandaoMixesReset | 7.8510 us/op | 5.2320 us/op | 1.50 | | mainnet_e58758 - phase0 processHistoricalRootsUpdate | 1.3960 us/op | 624.00 ns/op | 2.24 | | mainnet_e58758 - phase0 processParticipationRecordUpdates | 7.9220 us/op | 3.8340 us/op | 2.07 | | mainnet_e58758 - phase0 afterProcessEpoch | 91.125 ms/op | 84.475 ms/op | 1.08 | | phase0 processEffectiveBalanceUpdates - 250000 normalcase | 1.7393 ms/op | 1.1501 ms/op | 1.51 | | phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 | 3.7300 ms/op | 2.0175 ms/op | 1.85 | | altair processInactivityUpdates - 250000 normalcase | 21.685 ms/op | 17.222 ms/op | 1.26 | | altair processInactivityUpdates - 250000 worstcase | 21.613 ms/op | 17.050 ms/op | 1.27 | | phase0 processRegistryUpdates - 250000 normalcase | 10.152 us/op | 7.4830 us/op | 1.36 | | phase0 processRegistryUpdates - 250000 badcase_full_deposits | 348.07 us/op | 293.97 us/op | 1.18 | | phase0 processRegistryUpdates - 250000 worstcase 0.5 | 155.55 ms/op | 137.08 ms/op | 1.13 | | altair processRewardsAndPenalties - 250000 normalcase | 47.635 ms/op | 37.847 ms/op | 1.26 | | altair processRewardsAndPenalties - 250000 worstcase | 43.188 ms/op | 37.862 ms/op | 1.14 | | phase0 getAttestationDeltas - 250000 normalcase | 7.8812 ms/op | 8.1059 ms/op | 0.97 | | phase0 getAttestationDeltas - 250000 worstcase | 9.7740 ms/op | 10.539 ms/op | 0.93 | | phase0 processSlashings - 250000 worstcase | 110.74 us/op | 114.35 us/op | 0.97 | | altair processSyncCommitteeUpdates - 250000 | 138.60 ms/op | 145.04 ms/op | 0.96 | | BeaconState.hashTreeRoot - No change | 431.00 ns/op | 329.00 ns/op | 1.31 | | BeaconState.hashTreeRoot - 1 full validator | 139.40 us/op | 101.07 us/op | 1.38 | | BeaconState.hashTreeRoot - 32 full validator | 1.3368 ms/op | 1.0721 ms/op | 1.25 | | BeaconState.hashTreeRoot - 512 full validator | 12.355 ms/op | 14.460 ms/op | 0.85 | | BeaconState.hashTreeRoot - 1 validator.effectiveBalance | 125.81 us/op | 161.74 us/op | 0.78 | | BeaconState.hashTreeRoot - 32 validator.effectiveBalance | 2.0355 ms/op | 2.4683 ms/op | 0.82 | | BeaconState.hashTreeRoot - 512 validator.effectiveBalance | 25.008 ms/op | 25.247 ms/op | 0.99 | | BeaconState.hashTreeRoot - 1 balances | 99.678 us/op | 103.76 us/op | 0.96 | | BeaconState.hashTreeRoot - 32 balances | 864.77 us/op | 1.4518 ms/op | 0.60 | | BeaconState.hashTreeRoot - 512 balances | 8.6648 ms/op | 9.8096 ms/op | 0.88 | | BeaconState.hashTreeRoot - 250000 balances | 184.69 ms/op | 186.78 ms/op | 0.99 | | aggregationBits - 2048 els - zipIndexesInBitList | 26.615 us/op | 31.803 us/op | 0.84 | | byteArrayEquals 32 | 54.171 ns/op | 58.200 ns/op | 0.93 | | Buffer.compare 32 | 46.010 ns/op | 52.358 ns/op | 0.88 | | byteArrayEquals 1024 | 1.5998 us/op | 1.7325 us/op | 0.92 | | Buffer.compare 1024 | 55.407 ns/op | 62.227 ns/op | 0.89 | | byteArrayEquals 16384 | 25.488 us/op | 27.618 us/op | 0.92 | | Buffer.compare 16384 | 240.54 ns/op | 252.49 ns/op | 0.95 | | byteArrayEquals 123687377 | 193.34 ms/op | 196.27 ms/op | 0.99 | | Buffer.compare 123687377 | 8.0150 ms/op | 8.0961 ms/op | 0.99 | | byteArrayEquals 32 - diff last byte | 54.133 ns/op | 53.400 ns/op | 1.01 | | Buffer.compare 32 - diff last byte | 47.014 ns/op | 47.230 ns/op | 1.00 | | byteArrayEquals 1024 - diff last byte | 1.6076 us/op | 1.6079 us/op | 1.00 | | Buffer.compare 1024 - diff last byte | 57.370 ns/op | 56.020 ns/op | 1.02 | | byteArrayEquals 16384 - diff last byte | 25.429 us/op | 25.853 us/op | 0.98 | | Buffer.compare 16384 - diff last byte | 240.16 ns/op | 250.56 ns/op | 0.96 | | byteArrayEquals 123687377 - diff last byte | 194.16 ms/op | 193.15 ms/op | 1.01 | | Buffer.compare 123687377 - diff last byte | 7.6191 ms/op | 7.3294 ms/op | 1.04 | | byteArrayEquals 32 - random bytes | 5.1950 ns/op | 5.4360 ns/op | 0.96 | | Buffer.compare 32 - random bytes | 49.695 ns/op | 48.696 ns/op | 1.02 | | byteArrayEquals 1024 - random bytes | 5.2020 ns/op | 5.2320 ns/op | 0.99 | | Buffer.compare 1024 - random bytes | 47.545 ns/op | 47.178 ns/op | 1.01 | | byteArrayEquals 16384 - random bytes | 5.1610 ns/op | 5.1980 ns/op | 0.99 | | Buffer.compare 16384 - random bytes | 47.538 ns/op | 46.831 ns/op | 1.02 | | byteArrayEquals 123687377 - random bytes | 6.4700 ns/op | 6.5500 ns/op | 0.99 | | Buffer.compare 123687377 - random bytes | 49.270 ns/op | 48.330 ns/op | 1.02 | | regular array get 100000 times | 33.431 us/op | 34.529 us/op | 0.97 | | wrappedArray get 100000 times | 37.054 us/op | 33.163 us/op | 1.12 | | arrayWithProxy get 100000 times | 12.999 ms/op | 13.856 ms/op | 0.94 | | ssz.Root.equals | 46.255 ns/op | 46.477 ns/op | 1.00 | | byteArrayEquals | 45.866 ns/op | 46.021 ns/op | 1.00 | | Buffer.compare | 10.537 ns/op | 10.719 ns/op | 0.98 | | shuffle list - 16384 els | 6.3527 ms/op | 6.6723 ms/op | 0.95 | | shuffle list - 250000 els | 94.044 ms/op | 97.445 ms/op | 0.97 | | processSlot - 1 slots | 13.731 us/op | 17.303 us/op | 0.79 | | processSlot - 32 slots | 3.2344 ms/op | 2.8729 ms/op | 1.13 | | getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei | 36.683 ms/op | 34.746 ms/op | 1.06 | | getCommitteeAssignments - req 1 vs - 250000 vc | 2.1589 ms/op | 2.2612 ms/op | 0.95 | | getCommitteeAssignments - req 100 vs - 250000 vc | 4.1588 ms/op | 4.3363 ms/op | 0.96 | | getCommitteeAssignments - req 1000 vs - 250000 vc | 4.5282 ms/op | 4.5972 ms/op | 0.98 | | findModifiedValidators - 10000 modified validators | 284.99 ms/op | 281.96 ms/op | 1.01 | | findModifiedValidators - 1000 modified validators | 198.62 ms/op | 177.21 ms/op | 1.12 | | findModifiedValidators - 100 modified validators | 177.03 ms/op | 193.84 ms/op | 0.91 | | findModifiedValidators - 10 modified validators | 181.25 ms/op | 176.08 ms/op | 1.03 | | findModifiedValidators - 1 modified validators | 178.91 ms/op | 188.97 ms/op | 0.95 | | findModifiedValidators - no difference | 173.41 ms/op | 165.16 ms/op | 1.05 | | compare ViewDUs | 3.1322 s/op | 3.0163 s/op | 1.04 | | compare each validator Uint8Array | 1.7413 s/op | 1.2934 s/op | 1.35 | | compare ViewDU to Uint8Array | 1.3482 s/op | 1.2452 s/op | 1.08 | | migrate state 1000000 validators, 24 modified, 0 new | 613.66 ms/op | 559.07 ms/op | 1.10 | | migrate state 1000000 validators, 1700 modified, 1000 new | 859.74 ms/op | 862.84 ms/op | 1.00 | | migrate state 1000000 validators, 3400 modified, 2000 new | 1.0116 s/op | 919.95 ms/op | 1.10 | | migrate state 1500000 validators, 24 modified, 0 new | 532.55 ms/op | 577.46 ms/op | 0.92 | | migrate state 1500000 validators, 1700 modified, 1000 new | 804.23 ms/op | 819.79 ms/op | 0.98 | | migrate state 1500000 validators, 3400 modified, 2000 new | 958.40 ms/op | 971.28 ms/op | 0.99 | | RootCache.getBlockRootAtSlot - 250000 vs - 7PWei | 4.4600 ns/op | 4.9400 ns/op | 0.90 | | state getBlockRootAtSlot - 250000 vs - 7PWei | 825.16 ns/op | 929.97 ns/op | 0.89 | | computeProposers - vc 250000 | 8.2700 ms/op | 8.3208 ms/op | 0.99 | | computeEpochShuffling - vc 250000 | 93.523 ms/op | 94.436 ms/op | 0.99 | | getNextSyncCommittee - vc 250000 | 137.35 ms/op | 148.82 ms/op | 0.92 | | computeSigningRoot for AttestationData | 28.059 us/op | 23.739 us/op | 1.18 | | hash AttestationData serialized data then Buffer.toString(base64) | 1.5294 us/op | 1.5761 us/op | 0.97 | | toHexString serialized data | 928.09 ns/op | 1.4616 us/op | 0.63 | | Buffer.toString(base64) | 176.75 ns/op | 277.38 ns/op | 0.64 |

by benchmarkbot/action

codecov[bot] commented 1 month ago

Codecov Report

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

Project coverage is 62.20%. Comparing base (95ce044) to head (4f82246). Report is 7 commits behind head on unstable.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## unstable #6846 +/- ## ============================================ - Coverage 62.21% 62.20% -0.02% ============================================ Files 571 572 +1 Lines 60017 60043 +26 Branches 1975 1982 +7 ============================================ + Hits 37338 37347 +9 - Misses 22636 22653 +17 Partials 43 43 ```
wemeetagain commented 3 weeks ago

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