-
-
Notifications
You must be signed in to change notification settings - Fork 331
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: revert "feat: asyncAggregateWithRandomness (#7204) (#7435)" #7450
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## unstable #7450 +/- ##
============================================
- Coverage 50.25% 50.25% -0.01%
============================================
Files 602 602
Lines 40404 40409 +5
Branches 2204 2204
============================================
Hits 20307 20307
- Misses 20057 20062 +5
Partials 40 40 |
|
Benchmark suite | Current: 24c001b | Previous: 277437e | Ratio |
---|---|---|---|
10000 bytes - compress - snappy | 55.421 us/op | 10.628 us/op | 5.21 |
Full benchmark results
Benchmark suite | Current: 24c001b | Previous: 277437e | Ratio |
---|---|---|---|
getPubkeys - index2pubkey - req 1000 vs - 250000 vc | 982.07 us/op | 2.0702 ms/op | 0.47 |
getPubkeys - validatorsArr - req 1000 vs - 250000 vc | 36.698 us/op | 77.229 us/op | 0.48 |
BLS verify - blst | 1.2201 ms/op | 1.0981 ms/op | 1.11 |
BLS verifyMultipleSignatures 3 - blst | 1.4197 ms/op | 1.6308 ms/op | 0.87 |
BLS verifyMultipleSignatures 8 - blst | 2.2802 ms/op | 2.6924 ms/op | 0.85 |
BLS verifyMultipleSignatures 32 - blst | 5.7931 ms/op | 8.3866 ms/op | 0.69 |
BLS verifyMultipleSignatures 64 - blst | 9.3259 ms/op | 13.627 ms/op | 0.68 |
BLS verifyMultipleSignatures 128 - blst | 18.428 ms/op | 23.567 ms/op | 0.78 |
BLS deserializing 10000 signatures | 712.23 ms/op | 805.87 ms/op | 0.88 |
BLS deserializing 100000 signatures | 7.1342 s/op | 8.4054 s/op | 0.85 |
BLS verifyMultipleSignatures - same message - 3 - blst | 1.0019 ms/op | 1.0877 ms/op | 0.92 |
BLS verifyMultipleSignatures - same message - 8 - blst | 1.0925 ms/op | 1.2061 ms/op | 0.91 |
BLS verifyMultipleSignatures - same message - 32 - blst | 1.7842 ms/op | 2.0407 ms/op | 0.87 |
BLS verifyMultipleSignatures - same message - 64 - blst | 2.6502 ms/op | 2.7966 ms/op | 0.95 |
BLS verifyMultipleSignatures - same message - 128 - blst | 4.5593 ms/op | 4.9451 ms/op | 0.92 |
BLS aggregatePubkeys 32 - blst | 21.745 us/op | 21.618 us/op | 1.01 |
BLS aggregatePubkeys 128 - blst | 76.569 us/op | 76.571 us/op | 1.00 |
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 | 58.633 ms/op | 121.59 ms/op | 0.48 |
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 | 51.790 ms/op | 93.451 ms/op | 0.55 |
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 | 46.683 ms/op | 71.679 ms/op | 0.65 |
getSlashingsAndExits - default max | 76.111 us/op | 147.70 us/op | 0.52 |
getSlashingsAndExits - 2k | 353.01 us/op | 788.72 us/op | 0.45 |
proposeBlockBody type=full, size=empty | 6.5637 ms/op | 10.758 ms/op | 0.61 |
isKnown best case - 1 super set check | 275.00 ns/op | 210.00 ns/op | 1.31 |
isKnown normal case - 2 super set checks | 227.00 ns/op | 212.00 ns/op | 1.07 |
isKnown worse case - 16 super set checks | 215.00 ns/op | 210.00 ns/op | 1.02 |
InMemoryCheckpointStateCache - add get delete | 2.8160 us/op | 6.4320 us/op | 0.44 |
validate api signedAggregateAndProof - struct | 1.9772 ms/op | 1.9164 ms/op | 1.03 |
validate gossip signedAggregateAndProof - struct | 1.7023 ms/op | 2.0303 ms/op | 0.84 |
batch validate gossip attestation - vc 640000 - chunk 32 | 144.00 us/op | 186.50 us/op | 0.77 |
batch validate gossip attestation - vc 640000 - chunk 64 | 121.76 us/op | 175.05 us/op | 0.70 |
batch validate gossip attestation - vc 640000 - chunk 128 | 113.27 us/op | 176.71 us/op | 0.64 |
batch validate gossip attestation - vc 640000 - chunk 256 | 127.13 us/op | 171.73 us/op | 0.74 |
pickEth1Vote - no votes | 1.1123 ms/op | 1.0873 ms/op | 1.02 |
pickEth1Vote - max votes | 15.188 ms/op | 15.943 ms/op | 0.95 |
pickEth1Vote - Eth1Data hashTreeRoot value x2048 | 24.246 ms/op | 21.547 ms/op | 1.13 |
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 | 26.913 ms/op | 51.947 ms/op | 0.52 |
pickEth1Vote - Eth1Data fastSerialize value x2048 | 530.66 us/op | 481.75 us/op | 1.10 |
pickEth1Vote - Eth1Data fastSerialize tree x2048 | 2.8088 ms/op | 3.0387 ms/op | 0.92 |
bytes32 toHexString | 429.00 ns/op | 634.00 ns/op | 0.68 |
bytes32 Buffer.toString(hex) | 271.00 ns/op | 355.00 ns/op | 0.76 |
bytes32 Buffer.toString(hex) from Uint8Array | 360.00 ns/op | 568.00 ns/op | 0.63 |
bytes32 Buffer.toString(hex) + 0x | 296.00 ns/op | 278.00 ns/op | 1.06 |
Object access 1 prop | 0.13700 ns/op | 0.16800 ns/op | 0.82 |
Map access 1 prop | 0.16300 ns/op | 0.13700 ns/op | 1.19 |
Object get x1000 | 8.1470 ns/op | 6.4340 ns/op | 1.27 |
Map get x1000 | 7.1420 ns/op | 6.7190 ns/op | 1.06 |
Object set x1000 | 53.362 ns/op | 36.639 ns/op | 1.46 |
Map set x1000 | 33.134 ns/op | 56.276 ns/op | 0.59 |
Return object 10000 times | 0.31640 ns/op | 0.48560 ns/op | 0.65 |
Throw Error 10000 times | 5.2450 us/op | 5.2463 us/op | 1.00 |
toHex | 153.53 ns/op | 133.62 ns/op | 1.15 |
Buffer.from | 142.34 ns/op | 135.03 ns/op | 1.05 |
shared Buffer | 95.614 ns/op | 86.984 ns/op | 1.10 |
fastMsgIdFn sha256 / 200 bytes | 2.8360 us/op | 2.4460 us/op | 1.16 |
fastMsgIdFn h32 xxhash / 200 bytes | 237.00 ns/op | 221.00 ns/op | 1.07 |
fastMsgIdFn h64 xxhash / 200 bytes | 404.00 ns/op | 370.00 ns/op | 1.09 |
fastMsgIdFn sha256 / 1000 bytes | 9.8730 us/op | 12.078 us/op | 0.82 |
fastMsgIdFn h32 xxhash / 1000 bytes | 388.00 ns/op | 390.00 ns/op | 0.99 |
fastMsgIdFn h64 xxhash / 1000 bytes | 360.00 ns/op | 444.00 ns/op | 0.81 |
fastMsgIdFn sha256 / 10000 bytes | 68.652 us/op | 68.176 us/op | 1.01 |
fastMsgIdFn h32 xxhash / 10000 bytes | 1.9860 us/op | 2.0480 us/op | 0.97 |
fastMsgIdFn h64 xxhash / 10000 bytes | 1.4320 us/op | 1.3710 us/op | 1.04 |
100 bytes - compress - snappyjs | 1.9317 us/op | 1.8961 us/op | 1.02 |
100 bytes - compress - snappy | 1.3198 us/op | 1.6574 us/op | 0.80 |
100 bytes - compress - snappy-wasm | 843.83 ns/op | 1.2147 us/op | 0.69 |
100 bytes - compress - snappy-wasm - prealloc | 439.68 ns/op | 446.87 ns/op | 0.98 |
200 bytes - compress - snappyjs | 2.0396 us/op | 2.9251 us/op | 0.70 |
200 bytes - compress - snappy | 1.3344 us/op | 20.180 us/op | 0.07 |
200 bytes - compress - snappy-wasm | 1.0071 us/op | 2.1750 us/op | 0.46 |
200 bytes - compress - snappy-wasm - prealloc | 449.41 ns/op | 646.46 ns/op | 0.70 |
300 bytes - compress - snappyjs | 2.4640 us/op | 3.0198 us/op | 0.82 |
300 bytes - compress - snappy | 1.6217 us/op | 1.8017 us/op | 0.90 |
300 bytes - compress - snappy-wasm | 1.9524 us/op | 1.6420 us/op | 1.19 |
300 bytes - compress - snappy-wasm - prealloc | 851.43 ns/op | 1.0433 us/op | 0.82 |
400 bytes - compress - snappyjs | 3.7594 us/op | 3.3949 us/op | 1.11 |
400 bytes - compress - snappy | 4.1990 us/op | 3.9390 us/op | 1.07 |
400 bytes - compress - snappy-wasm | 1.2661 us/op | 2.8703 us/op | 0.44 |
400 bytes - compress - snappy-wasm - prealloc | 646.18 ns/op | 1.0109 us/op | 0.64 |
500 bytes - compress - snappyjs | 3.0314 us/op | 3.8213 us/op | 0.79 |
500 bytes - compress - snappy | 1.9199 us/op | 6.5397 us/op | 0.29 |
500 bytes - compress - snappy-wasm | 1.6662 us/op | 1.9433 us/op | 0.86 |
500 bytes - compress - snappy-wasm - prealloc | 685.23 ns/op | 1.3181 us/op | 0.52 |
1000 bytes - compress - snappyjs | 4.6837 us/op | 5.8253 us/op | 0.80 |
1000 bytes - compress - snappy | 2.2133 us/op | 2.8806 us/op | 0.77 |
1000 bytes - compress - snappy-wasm | 2.4557 us/op | 3.1694 us/op | 0.77 |
1000 bytes - compress - snappy-wasm - prealloc | 1.0759 us/op | 1.2987 us/op | 0.83 |
10000 bytes - compress - snappyjs | 31.235 us/op | 31.174 us/op | 1.00 |
10000 bytes - compress - snappy | 55.421 us/op | 10.628 us/op | 5.21 |
10000 bytes - compress - snappy-wasm | 8.3450 us/op | 10.497 us/op | 0.79 |
10000 bytes - compress - snappy-wasm - prealloc | 8.6792 us/op | 9.1369 us/op | 0.95 |
100 bytes - uncompress - snappyjs | 1.1353 us/op | 839.03 ns/op | 1.35 |
100 bytes - uncompress - snappy | 1.4355 us/op | 1.6888 us/op | 0.85 |
100 bytes - uncompress - snappy-wasm | 674.75 ns/op | 775.50 ns/op | 0.87 |
100 bytes - uncompress - snappy-wasm - prealloc | 369.41 ns/op | 378.73 ns/op | 0.98 |
200 bytes - uncompress - snappyjs | 1.3080 us/op | 2.1679 us/op | 0.60 |
200 bytes - uncompress - snappy | 1.3257 us/op | 1.7594 us/op | 0.75 |
200 bytes - uncompress - snappy-wasm | 926.10 ns/op | 1.3003 us/op | 0.71 |
200 bytes - uncompress - snappy-wasm - prealloc | 367.68 ns/op | 390.25 ns/op | 0.94 |
300 bytes - uncompress - snappyjs | 1.3176 us/op | 20.697 us/op | 0.06 |
300 bytes - uncompress - snappy | 1.2586 us/op | 1.8521 us/op | 0.68 |
300 bytes - uncompress - snappy-wasm | 873.00 ns/op | 1.5050 us/op | 0.58 |
300 bytes - uncompress - snappy-wasm - prealloc | 472.68 ns/op | 481.15 ns/op | 0.98 |
400 bytes - uncompress - snappyjs | 2.0097 us/op | 4.9571 us/op | 0.41 |
400 bytes - uncompress - snappy | 1.3203 us/op | 2.1881 us/op | 0.60 |
400 bytes - uncompress - snappy-wasm | 1.2542 us/op | 2.1812 us/op | 0.57 |
400 bytes - uncompress - snappy-wasm - prealloc | 482.88 ns/op | 728.40 ns/op | 0.66 |
500 bytes - uncompress - snappyjs | 1.9010 us/op | 3.4743 us/op | 0.55 |
500 bytes - uncompress - snappy | 1.4953 us/op | 2.7622 us/op | 0.54 |
500 bytes - uncompress - snappy-wasm | 1.3099 us/op | 2.5796 us/op | 0.51 |
500 bytes - uncompress - snappy-wasm - prealloc | 524.59 ns/op | 1.4325 us/op | 0.37 |
1000 bytes - uncompress - snappyjs | 3.2429 us/op | 3.2439 us/op | 1.00 |
1000 bytes - uncompress - snappy | 1.7559 us/op | 10.082 us/op | 0.17 |
1000 bytes - uncompress - snappy-wasm | 1.2078 us/op | 2.5050 us/op | 0.48 |
1000 bytes - uncompress - snappy-wasm - prealloc | 886.93 ns/op | 1.6298 us/op | 0.54 |
10000 bytes - uncompress - snappyjs | 16.302 us/op | 19.454 us/op | 0.84 |
10000 bytes - uncompress - snappy | 48.523 us/op | 19.204 us/op | 2.53 |
10000 bytes - uncompress - snappy-wasm | 5.7742 us/op | 8.0364 us/op | 0.72 |
10000 bytes - uncompress - snappy-wasm - prealloc | 5.9869 us/op | 8.0803 us/op | 0.74 |
send data - 1000 256B messages | 17.891 ms/op | 31.050 ms/op | 0.58 |
send data - 1000 512B messages | 23.274 ms/op | 37.059 ms/op | 0.63 |
send data - 1000 1024B messages | 30.509 ms/op | 43.298 ms/op | 0.70 |
send data - 1000 1200B messages | 31.360 ms/op | 55.724 ms/op | 0.56 |
send data - 1000 2048B messages | 27.864 ms/op | 47.052 ms/op | 0.59 |
send data - 1000 4096B messages | 32.713 ms/op | 56.855 ms/op | 0.58 |
send data - 1000 16384B messages | 73.547 ms/op | 98.413 ms/op | 0.75 |
send data - 1000 65536B messages | 291.70 ms/op | 831.52 ms/op | 0.35 |
enrSubnets - fastDeserialize 64 bits | 1.0380 us/op | 1.4460 us/op | 0.72 |
enrSubnets - ssz BitVector 64 bits | 353.00 ns/op | 372.00 ns/op | 0.95 |
enrSubnets - fastDeserialize 4 bits | 147.00 ns/op | 193.00 ns/op | 0.76 |
enrSubnets - ssz BitVector 4 bits | 385.00 ns/op | 358.00 ns/op | 1.08 |
prioritizePeers score -10:0 att 32-0.1 sync 2-0 | 163.25 us/op | 149.57 us/op | 1.09 |
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 | 187.32 us/op | 192.67 us/op | 0.97 |
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 | 326.54 us/op | 272.45 us/op | 1.20 |
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 | 527.19 us/op | 564.73 us/op | 0.93 |
prioritizePeers score 0:0 att 64-1 sync 4-1 | 801.86 us/op | 576.62 us/op | 1.39 |
array of 16000 items push then shift | 1.8182 us/op | 1.6947 us/op | 1.07 |
LinkedList of 16000 items push then shift | 12.385 ns/op | 19.210 ns/op | 0.64 |
array of 16000 items push then pop | 99.645 ns/op | 105.33 ns/op | 0.95 |
LinkedList of 16000 items push then pop | 11.127 ns/op | 10.796 ns/op | 1.03 |
array of 24000 items push then shift | 2.7008 us/op | 2.6588 us/op | 1.02 |
LinkedList of 24000 items push then shift | 10.728 ns/op | 35.180 ns/op | 0.30 |
array of 24000 items push then pop | 142.44 ns/op | 158.59 ns/op | 0.90 |
LinkedList of 24000 items push then pop | 12.624 ns/op | 11.591 ns/op | 1.09 |
intersect bitArray bitLen 8 | 8.1890 ns/op | 6.6590 ns/op | 1.23 |
intersect array and set length 8 | 69.440 ns/op | 47.913 ns/op | 1.45 |
intersect bitArray bitLen 128 | 50.270 ns/op | 31.163 ns/op | 1.61 |
intersect array and set length 128 | 933.05 ns/op | 783.90 ns/op | 1.19 |
bitArray.getTrueBitIndexes() bitLen 128 | 1.3210 us/op | 2.0000 us/op | 0.66 |
bitArray.getTrueBitIndexes() bitLen 248 | 2.5340 us/op | 2.6200 us/op | 0.97 |
bitArray.getTrueBitIndexes() bitLen 512 | 4.9410 us/op | 6.5410 us/op | 0.76 |
Buffer.concat 32 items | 831.00 ns/op | 936.00 ns/op | 0.89 |
Uint8Array.set 32 items | 2.5490 us/op | 3.7480 us/op | 0.68 |
Buffer.copy | 3.4170 us/op | 6.0800 us/op | 0.56 |
Uint8Array.set - with subarray | 3.2860 us/op | 5.2820 us/op | 0.62 |
Uint8Array.set - without subarray | 2.2610 us/op | 3.5930 us/op | 0.63 |
getUint32 - dataview | 392.00 ns/op | 235.00 ns/op | 1.67 |
getUint32 - manual | 138.00 ns/op | 171.00 ns/op | 0.81 |
Set add up to 64 items then delete first | 3.6680 us/op | 3.3326 us/op | 1.10 |
OrderedSet add up to 64 items then delete first | 5.3156 us/op | 8.5778 us/op | 0.62 |
Set add up to 64 items then delete last | 3.5850 us/op | 2.8515 us/op | 1.26 |
OrderedSet add up to 64 items then delete last | 5.8252 us/op | 4.9594 us/op | 1.17 |
Set add up to 64 items then delete middle | 3.5901 us/op | 4.1579 us/op | 0.86 |
OrderedSet add up to 64 items then delete middle | 8.1558 us/op | 7.3046 us/op | 1.12 |
Set add up to 128 items then delete first | 7.6529 us/op | 7.3847 us/op | 1.04 |
OrderedSet add up to 128 items then delete first | 12.625 us/op | 9.9063 us/op | 1.27 |
Set add up to 128 items then delete last | 9.3154 us/op | 8.9781 us/op | 1.04 |
OrderedSet add up to 128 items then delete last | 12.160 us/op | 12.460 us/op | 0.98 |
Set add up to 128 items then delete middle | 8.8246 us/op | 8.1792 us/op | 1.08 |
OrderedSet add up to 128 items then delete middle | 18.770 us/op | 19.770 us/op | 0.95 |
Set add up to 256 items then delete first | 16.801 us/op | 15.407 us/op | 1.09 |
OrderedSet add up to 256 items then delete first | 27.835 us/op | 26.664 us/op | 1.04 |
Set add up to 256 items then delete last | 17.323 us/op | 16.945 us/op | 1.02 |
OrderedSet add up to 256 items then delete last | 28.015 us/op | 19.233 us/op | 1.46 |
Set add up to 256 items then delete middle | 14.103 us/op | 13.475 us/op | 1.05 |
OrderedSet add up to 256 items then delete middle | 50.868 us/op | 55.511 us/op | 0.92 |
transfer serialized Status (84 B) | 3.5010 us/op | 4.6500 us/op | 0.75 |
copy serialized Status (84 B) | 1.9060 us/op | 2.4350 us/op | 0.78 |
transfer serialized SignedVoluntaryExit (112 B) | 3.4610 us/op | 4.2140 us/op | 0.82 |
copy serialized SignedVoluntaryExit (112 B) | 2.0140 us/op | 2.6030 us/op | 0.77 |
transfer serialized ProposerSlashing (416 B) | 3.9670 us/op | 6.0360 us/op | 0.66 |
copy serialized ProposerSlashing (416 B) | 2.9290 us/op | 4.6710 us/op | 0.63 |
transfer serialized Attestation (485 B) | 3.8630 us/op | 8.0610 us/op | 0.48 |
copy serialized Attestation (485 B) | 2.6890 us/op | 3.8100 us/op | 0.71 |
transfer serialized AttesterSlashing (33232 B) | 3.8370 us/op | 4.5480 us/op | 0.84 |
copy serialized AttesterSlashing (33232 B) | 6.7220 us/op | 21.934 us/op | 0.31 |
transfer serialized Small SignedBeaconBlock (128000 B) | 4.9830 us/op | 5.7570 us/op | 0.87 |
copy serialized Small SignedBeaconBlock (128000 B) | 18.481 us/op | 27.578 us/op | 0.67 |
transfer serialized Avg SignedBeaconBlock (200000 B) | 5.0800 us/op | 6.7020 us/op | 0.76 |
copy serialized Avg SignedBeaconBlock (200000 B) | 28.272 us/op | 37.264 us/op | 0.76 |
transfer serialized BlobsSidecar (524380 B) | 5.6800 us/op | 6.8800 us/op | 0.83 |
copy serialized BlobsSidecar (524380 B) | 81.777 us/op | 225.63 us/op | 0.36 |
transfer serialized Big SignedBeaconBlock (1000000 B) | 7.1540 us/op | 6.4340 us/op | 1.11 |
copy serialized Big SignedBeaconBlock (1000000 B) | 199.54 us/op | 322.08 us/op | 0.62 |
pass gossip attestations to forkchoice per slot | 3.3114 ms/op | 3.4497 ms/op | 0.96 |
forkChoice updateHead vc 100000 bc 64 eq 0 | 647.12 us/op | 461.89 us/op | 1.40 |
forkChoice updateHead vc 600000 bc 64 eq 0 | 4.8990 ms/op | 9.1459 ms/op | 0.54 |
forkChoice updateHead vc 1000000 bc 64 eq 0 | 7.1780 ms/op | 10.463 ms/op | 0.69 |
forkChoice updateHead vc 600000 bc 320 eq 0 | 3.8101 ms/op | 6.1955 ms/op | 0.61 |
forkChoice updateHead vc 600000 bc 1200 eq 0 | 3.8898 ms/op | 6.5451 ms/op | 0.59 |
forkChoice updateHead vc 600000 bc 7200 eq 0 | 5.7830 ms/op | 4.4290 ms/op | 1.31 |
forkChoice updateHead vc 600000 bc 64 eq 1000 | 11.542 ms/op | 11.052 ms/op | 1.04 |
forkChoice updateHead vc 600000 bc 64 eq 10000 | 15.607 ms/op | 10.974 ms/op | 1.42 |
forkChoice updateHead vc 600000 bc 64 eq 300000 | 29.357 ms/op | 14.956 ms/op | 1.96 |
computeDeltas 500000 validators 300 proto nodes | 4.8458 ms/op | 4.0774 ms/op | 1.19 |
computeDeltas 500000 validators 1200 proto nodes | 4.5519 ms/op | 4.1143 ms/op | 1.11 |
computeDeltas 500000 validators 7200 proto nodes | 4.4732 ms/op | 4.2623 ms/op | 1.05 |
computeDeltas 750000 validators 300 proto nodes | 6.9224 ms/op | 6.3650 ms/op | 1.09 |
computeDeltas 750000 validators 1200 proto nodes | 6.5718 ms/op | 6.3066 ms/op | 1.04 |
computeDeltas 750000 validators 7200 proto nodes | 8.2035 ms/op | 6.2650 ms/op | 1.31 |
computeDeltas 1400000 validators 300 proto nodes | 14.376 ms/op | 11.735 ms/op | 1.23 |
computeDeltas 1400000 validators 1200 proto nodes | 12.900 ms/op | 11.874 ms/op | 1.09 |
computeDeltas 1400000 validators 7200 proto nodes | 14.143 ms/op | 11.888 ms/op | 1.19 |
computeDeltas 2100000 validators 300 proto nodes | 19.079 ms/op | 17.971 ms/op | 1.06 |
computeDeltas 2100000 validators 1200 proto nodes | 19.518 ms/op | 19.240 ms/op | 1.01 |
computeDeltas 2100000 validators 7200 proto nodes | 18.883 ms/op | 20.443 ms/op | 0.92 |
altair processAttestation - 250000 vs - 7PWei normalcase | 2.7570 ms/op | 2.6384 ms/op | 1.04 |
altair processAttestation - 250000 vs - 7PWei worstcase | 4.3102 ms/op | 4.2331 ms/op | 1.02 |
altair processAttestation - setStatus - 1/6 committees join | 182.02 us/op | 145.52 us/op | 1.25 |
altair processAttestation - setStatus - 1/3 committees join | 277.07 us/op | 268.97 us/op | 1.03 |
altair processAttestation - setStatus - 1/2 committees join | 394.20 us/op | 351.60 us/op | 1.12 |
altair processAttestation - setStatus - 2/3 committees join | 553.70 us/op | 650.46 us/op | 0.85 |
altair processAttestation - setStatus - 4/5 committees join | 667.11 us/op | 855.46 us/op | 0.78 |
altair processAttestation - setStatus - 100% committees join | 875.38 us/op | 1.1012 ms/op | 0.79 |
altair processBlock - 250000 vs - 7PWei normalcase | 11.595 ms/op | 5.8119 ms/op | 1.99 |
altair processBlock - 250000 vs - 7PWei normalcase hashState | 39.764 ms/op | 46.566 ms/op | 0.85 |
altair processBlock - 250000 vs - 7PWei worstcase | 45.531 ms/op | 51.149 ms/op | 0.89 |
altair processBlock - 250000 vs - 7PWei worstcase hashState | 103.67 ms/op | 109.07 ms/op | 0.95 |
phase0 processBlock - 250000 vs - 7PWei normalcase | 2.4398 ms/op | 2.3599 ms/op | 1.03 |
phase0 processBlock - 250000 vs - 7PWei worstcase | 30.035 ms/op | 28.382 ms/op | 1.06 |
altair processEth1Data - 250000 vs - 7PWei normalcase | 351.98 us/op | 355.10 us/op | 0.99 |
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 | 5.5770 us/op | 7.0290 us/op | 0.79 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 | 41.527 us/op | 37.849 us/op | 1.10 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 | 14.237 us/op | 10.228 us/op | 1.39 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 | 7.0630 us/op | 9.2830 us/op | 0.76 |
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 | 170.93 us/op | 184.33 us/op | 0.93 |
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 | 1.2808 ms/op | 1.2119 ms/op | 1.06 |
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 | 1.6442 ms/op | 1.6573 ms/op | 0.99 |
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 | 1.4972 ms/op | 1.9075 ms/op | 0.78 |
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 | 3.4038 ms/op | 5.0021 ms/op | 0.68 |
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 | 1.7635 ms/op | 2.7535 ms/op | 0.64 |
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 | 3.5861 ms/op | 4.5602 ms/op | 0.79 |
Tree 40 250000 create | 569.90 ms/op | 733.78 ms/op | 0.78 |
Tree 40 250000 get(125000) | 153.90 ns/op | 150.89 ns/op | 1.02 |
Tree 40 250000 set(125000) | 1.9969 us/op | 2.7415 us/op | 0.73 |
Tree 40 250000 toArray() | 22.244 ms/op | 23.497 ms/op | 0.95 |
Tree 40 250000 iterate all - toArray() + loop | 21.708 ms/op | 25.332 ms/op | 0.86 |
Tree 40 250000 iterate all - get(i) | 59.602 ms/op | 64.132 ms/op | 0.93 |
Array 250000 create | 4.2875 ms/op | 4.6723 ms/op | 0.92 |
Array 250000 clone - spread | 1.7224 ms/op | 1.9548 ms/op | 0.88 |
Array 250000 get(125000) | 0.43500 ns/op | 0.42900 ns/op | 1.01 |
Array 250000 set(125000) | 0.46200 ns/op | 0.48300 ns/op | 0.96 |
Array 250000 iterate all - loop | 114.81 us/op | 89.412 us/op | 1.28 |
phase0 afterProcessEpoch - 250000 vs - 7PWei | 50.087 ms/op | 53.861 ms/op | 0.93 |
Array.fill - length 1000000 | 3.8705 ms/op | 6.8462 ms/op | 0.57 |
Array push - length 1000000 | 16.223 ms/op | 21.347 ms/op | 0.76 |
Array.get | 0.29163 ns/op | 0.30516 ns/op | 0.96 |
Uint8Array.get | 0.45261 ns/op | 0.48600 ns/op | 0.93 |
phase0 beforeProcessEpoch - 250000 vs - 7PWei | 23.813 ms/op | 21.043 ms/op | 1.13 |
altair processEpoch - mainnet_e81889 | 325.62 ms/op | 425.23 ms/op | 0.77 |
mainnet_e81889 - altair beforeProcessEpoch | 23.431 ms/op | 26.538 ms/op | 0.88 |
mainnet_e81889 - altair processJustificationAndFinalization | 6.4470 us/op | 7.0400 us/op | 0.92 |
mainnet_e81889 - altair processInactivityUpdates | 4.8222 ms/op | 7.9744 ms/op | 0.60 |
mainnet_e81889 - altair processRewardsAndPenalties | 49.054 ms/op | 56.997 ms/op | 0.86 |
mainnet_e81889 - altair processRegistryUpdates | 973.00 ns/op | 1.1510 us/op | 0.85 |
mainnet_e81889 - altair processSlashings | 205.00 ns/op | 280.00 ns/op | 0.73 |
mainnet_e81889 - altair processEth1DataReset | 208.00 ns/op | 247.00 ns/op | 0.84 |
mainnet_e81889 - altair processEffectiveBalanceUpdates | 1.2765 ms/op | 1.4488 ms/op | 0.88 |
mainnet_e81889 - altair processSlashingsReset | 1000.0 ns/op | 1.0270 us/op | 0.97 |
mainnet_e81889 - altair processRandaoMixesReset | 1.2570 us/op | 1.8110 us/op | 0.69 |
mainnet_e81889 - altair processHistoricalRootsUpdate | 211.00 ns/op | 270.00 ns/op | 0.78 |
mainnet_e81889 - altair processParticipationFlagUpdates | 570.00 ns/op | 563.00 ns/op | 1.01 |
mainnet_e81889 - altair processSyncCommitteeUpdates | 160.00 ns/op | 162.00 ns/op | 0.99 |
mainnet_e81889 - altair afterProcessEpoch | 52.947 ms/op | 57.065 ms/op | 0.93 |
capella processEpoch - mainnet_e217614 | 1.0780 s/op | 987.73 ms/op | 1.09 |
mainnet_e217614 - capella beforeProcessEpoch | 88.857 ms/op | 69.381 ms/op | 1.28 |
mainnet_e217614 - capella processJustificationAndFinalization | 6.3520 us/op | 5.5740 us/op | 1.14 |
mainnet_e217614 - capella processInactivityUpdates | 21.072 ms/op | 16.583 ms/op | 1.27 |
mainnet_e217614 - capella processRewardsAndPenalties | 222.79 ms/op | 199.01 ms/op | 1.12 |
mainnet_e217614 - capella processRegistryUpdates | 9.5460 us/op | 9.0550 us/op | 1.05 |
mainnet_e217614 - capella processSlashings | 218.00 ns/op | 203.00 ns/op | 1.07 |
mainnet_e217614 - capella processEth1DataReset | 185.00 ns/op | 202.00 ns/op | 0.92 |
mainnet_e217614 - capella processEffectiveBalanceUpdates | 16.079 ms/op | 18.012 ms/op | 0.89 |
mainnet_e217614 - capella processSlashingsReset | 1.0630 us/op | 932.00 ns/op | 1.14 |
mainnet_e217614 - capella processRandaoMixesReset | 1.2960 us/op | 1.2970 us/op | 1.00 |
mainnet_e217614 - capella processHistoricalRootsUpdate | 216.00 ns/op | 202.00 ns/op | 1.07 |
mainnet_e217614 - capella processParticipationFlagUpdates | 593.00 ns/op | 555.00 ns/op | 1.07 |
mainnet_e217614 - capella afterProcessEpoch | 132.06 ms/op | 135.46 ms/op | 0.97 |
phase0 processEpoch - mainnet_e58758 | 390.92 ms/op | 373.11 ms/op | 1.05 |
mainnet_e58758 - phase0 beforeProcessEpoch | 89.112 ms/op | 93.181 ms/op | 0.96 |
mainnet_e58758 - phase0 processJustificationAndFinalization | 7.6230 us/op | 5.5210 us/op | 1.38 |
mainnet_e58758 - phase0 processRewardsAndPenalties | 47.745 ms/op | 50.037 ms/op | 0.95 |
mainnet_e58758 - phase0 processRegistryUpdates | 3.3460 us/op | 3.7760 us/op | 0.89 |
mainnet_e58758 - phase0 processSlashings | 205.00 ns/op | 199.00 ns/op | 1.03 |
mainnet_e58758 - phase0 processEth1DataReset | 210.00 ns/op | 198.00 ns/op | 1.06 |
mainnet_e58758 - phase0 processEffectiveBalanceUpdates | 1.2680 ms/op | 1.0740 ms/op | 1.18 |
mainnet_e58758 - phase0 processSlashingsReset | 1.0310 us/op | 1.0090 us/op | 1.02 |
mainnet_e58758 - phase0 processRandaoMixesReset | 1.2830 us/op | 1.2820 us/op | 1.00 |
mainnet_e58758 - phase0 processHistoricalRootsUpdate | 207.00 ns/op | 185.00 ns/op | 1.12 |
mainnet_e58758 - phase0 processParticipationRecordUpdates | 918.00 ns/op | 978.00 ns/op | 0.94 |
mainnet_e58758 - phase0 afterProcessEpoch | 45.859 ms/op | 45.779 ms/op | 1.00 |
phase0 processEffectiveBalanceUpdates - 250000 normalcase | 1.7163 ms/op | 1.7796 ms/op | 0.96 |
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 | 2.4645 ms/op | 2.6755 ms/op | 0.92 |
altair processInactivityUpdates - 250000 normalcase | 20.262 ms/op | 19.813 ms/op | 1.02 |
altair processInactivityUpdates - 250000 worstcase | 20.465 ms/op | 19.871 ms/op | 1.03 |
phase0 processRegistryUpdates - 250000 normalcase | 11.025 us/op | 7.9130 us/op | 1.39 |
phase0 processRegistryUpdates - 250000 badcase_full_deposits | 482.25 us/op | 665.24 us/op | 0.72 |
phase0 processRegistryUpdates - 250000 worstcase 0.5 | 122.27 ms/op | 142.76 ms/op | 0.86 |
altair processRewardsAndPenalties - 250000 normalcase | 51.477 ms/op | 56.113 ms/op | 0.92 |
altair processRewardsAndPenalties - 250000 worstcase | 39.744 ms/op | 47.847 ms/op | 0.83 |
phase0 getAttestationDeltas - 250000 normalcase | 6.3483 ms/op | 9.9321 ms/op | 0.64 |
phase0 getAttestationDeltas - 250000 worstcase | 8.2754 ms/op | 8.5205 ms/op | 0.97 |
phase0 processSlashings - 250000 worstcase | 116.28 us/op | 110.63 us/op | 1.05 |
altair processSyncCommitteeUpdates - 250000 | 145.79 ms/op | 140.86 ms/op | 1.04 |
BeaconState.hashTreeRoot - No change | 255.00 ns/op | 246.00 ns/op | 1.04 |
BeaconState.hashTreeRoot - 1 full validator | 86.700 us/op | 87.911 us/op | 0.99 |
BeaconState.hashTreeRoot - 32 full validator | 1.4045 ms/op | 810.84 us/op | 1.73 |
BeaconState.hashTreeRoot - 512 full validator | 10.784 ms/op | 9.6597 ms/op | 1.12 |
BeaconState.hashTreeRoot - 1 validator.effectiveBalance | 116.49 us/op | 113.24 us/op | 1.03 |
BeaconState.hashTreeRoot - 32 validator.effectiveBalance | 1.3003 ms/op | 1.3051 ms/op | 1.00 |
BeaconState.hashTreeRoot - 512 validator.effectiveBalance | 26.103 ms/op | 21.758 ms/op | 1.20 |
BeaconState.hashTreeRoot - 1 balances | 84.374 us/op | 80.623 us/op | 1.05 |
BeaconState.hashTreeRoot - 32 balances | 863.03 us/op | 995.38 us/op | 0.87 |
BeaconState.hashTreeRoot - 512 balances | 8.1312 ms/op | 8.7947 ms/op | 0.92 |
BeaconState.hashTreeRoot - 250000 balances | 181.61 ms/op | 191.45 ms/op | 0.95 |
aggregationBits - 2048 els - zipIndexesInBitList | 22.646 us/op | 24.977 us/op | 0.91 |
byteArrayEquals 32 | 54.404 ns/op | 56.358 ns/op | 0.97 |
Buffer.compare 32 | 17.439 ns/op | 17.970 ns/op | 0.97 |
byteArrayEquals 1024 | 1.6071 us/op | 1.7438 us/op | 0.92 |
Buffer.compare 1024 | 24.632 ns/op | 27.399 ns/op | 0.90 |
byteArrayEquals 16384 | 26.001 us/op | 27.114 us/op | 0.96 |
Buffer.compare 16384 | 252.48 ns/op | 217.42 ns/op | 1.16 |
byteArrayEquals 123687377 | 207.14 ms/op | 202.72 ms/op | 1.02 |
Buffer.compare 123687377 | 9.2143 ms/op | 8.2920 ms/op | 1.11 |
byteArrayEquals 32 - diff last byte | 57.441 ns/op | 55.003 ns/op | 1.04 |
Buffer.compare 32 - diff last byte | 18.175 ns/op | 17.880 ns/op | 1.02 |
byteArrayEquals 1024 - diff last byte | 1.7001 us/op | 1.6668 us/op | 1.02 |
Buffer.compare 1024 - diff last byte | 27.148 ns/op | 26.856 ns/op | 1.01 |
byteArrayEquals 16384 - diff last byte | 27.474 us/op | 26.250 us/op | 1.05 |
Buffer.compare 16384 - diff last byte | 217.86 ns/op | 199.69 ns/op | 1.09 |
byteArrayEquals 123687377 - diff last byte | 204.89 ms/op | 203.95 ms/op | 1.00 |
Buffer.compare 123687377 - diff last byte | 7.8908 ms/op | 8.2566 ms/op | 0.96 |
byteArrayEquals 32 - random bytes | 5.3880 ns/op | 5.3940 ns/op | 1.00 |
Buffer.compare 32 - random bytes | 18.648 ns/op | 18.239 ns/op | 1.02 |
byteArrayEquals 1024 - random bytes | 5.3460 ns/op | 5.4360 ns/op | 0.98 |
Buffer.compare 1024 - random bytes | 18.381 ns/op | 17.779 ns/op | 1.03 |
byteArrayEquals 16384 - random bytes | 5.2790 ns/op | 5.3260 ns/op | 0.99 |
Buffer.compare 16384 - random bytes | 18.315 ns/op | 17.743 ns/op | 1.03 |
byteArrayEquals 123687377 - random bytes | 7.1000 ns/op | 6.9600 ns/op | 1.02 |
Buffer.compare 123687377 - random bytes | 20.080 ns/op | 20.670 ns/op | 0.97 |
regular array get 100000 times | 45.048 us/op | 42.023 us/op | 1.07 |
wrappedArray get 100000 times | 37.688 us/op | 45.797 us/op | 0.82 |
arrayWithProxy get 100000 times | 14.084 ms/op | 13.478 ms/op | 1.04 |
ssz.Root.equals | 47.392 ns/op | 48.495 ns/op | 0.98 |
byteArrayEquals | 46.082 ns/op | 47.138 ns/op | 0.98 |
Buffer.compare | 10.959 ns/op | 12.646 ns/op | 0.87 |
processSlot - 1 slots | 11.959 us/op | 12.165 us/op | 0.98 |
processSlot - 32 slots | 3.1457 ms/op | 2.8201 ms/op | 1.12 |
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei | 62.962 ms/op | 58.818 ms/op | 1.07 |
getCommitteeAssignments - req 1 vs - 250000 vc | 2.2549 ms/op | 2.1948 ms/op | 1.03 |
getCommitteeAssignments - req 100 vs - 250000 vc | 4.1128 ms/op | 4.3349 ms/op | 0.95 |
getCommitteeAssignments - req 1000 vs - 250000 vc | 4.4652 ms/op | 4.6049 ms/op | 0.97 |
findModifiedValidators - 10000 modified validators | 835.57 ms/op | 779.49 ms/op | 1.07 |
findModifiedValidators - 1000 modified validators | 795.34 ms/op | 752.95 ms/op | 1.06 |
findModifiedValidators - 100 modified validators | 185.45 ms/op | 301.44 ms/op | 0.62 |
findModifiedValidators - 10 modified validators | 156.02 ms/op | 171.44 ms/op | 0.91 |
findModifiedValidators - 1 modified validators | 152.74 ms/op | 211.88 ms/op | 0.72 |
findModifiedValidators - no difference | 200.17 ms/op | 232.99 ms/op | 0.86 |
compare ViewDUs | 6.7500 s/op | 7.2759 s/op | 0.93 |
compare each validator Uint8Array | 1.0777 s/op | 1.7613 s/op | 0.61 |
compare ViewDU to Uint8Array | 1.1941 s/op | 1.3775 s/op | 0.87 |
migrate state 1000000 validators, 24 modified, 0 new | 927.54 ms/op | 940.16 ms/op | 0.99 |
migrate state 1000000 validators, 1700 modified, 1000 new | 1.2851 s/op | 1.2646 s/op | 1.02 |
migrate state 1000000 validators, 3400 modified, 2000 new | 1.3410 s/op | 1.4460 s/op | 0.93 |
migrate state 1500000 validators, 24 modified, 0 new | 942.53 ms/op | 1.0060 s/op | 0.94 |
migrate state 1500000 validators, 1700 modified, 1000 new | 1.1945 s/op | 1.1726 s/op | 1.02 |
migrate state 1500000 validators, 3400 modified, 2000 new | 1.4168 s/op | 1.3958 s/op | 1.02 |
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei | 4.2200 ns/op | 4.2400 ns/op | 1.00 |
state getBlockRootAtSlot - 250000 vs - 7PWei | 892.47 ns/op | 647.64 ns/op | 1.38 |
computeProposers - vc 250000 | 7.2156 ms/op | 8.6803 ms/op | 0.83 |
computeEpochShuffling - vc 250000 | 41.355 ms/op | 41.584 ms/op | 0.99 |
getNextSyncCommittee - vc 250000 | 142.34 ms/op | 125.47 ms/op | 1.13 |
computeSigningRoot for AttestationData | 24.935 us/op | 25.866 us/op | 0.96 |
hash AttestationData serialized data then Buffer.toString(base64) | 1.5289 us/op | 1.5265 us/op | 1.00 |
toHexString serialized data | 987.88 ns/op | 1.0270 us/op | 0.96 |
Buffer.toString(base64) | 156.12 ns/op | 157.09 ns/op | 0.99 |
nodejs block root to RootHex using toHex | 147.63 ns/op | 151.95 ns/op | 0.97 |
nodejs block root to RootHex using toRootHex | 90.231 ns/op | 89.253 ns/op | 1.01 |
browser block root to RootHex using the deprecated toHexString | 206.04 ns/op | 216.94 ns/op | 0.95 |
browser block root to RootHex using toHex | 168.31 ns/op | 169.57 ns/op | 0.99 |
browser block root to RootHex using toRootHex | 156.04 ns/op | 157.79 ns/op | 0.99 |
by benchmarkbot/action
🎉 This PR is included in v1.27.0 🎉 |
This reverts commit a7755ad.