Skip to content
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

chore: merge v1.20.1 stable back to unstable #6960

Merged
merged 6 commits into from
Jul 16, 2024
Merged

chore: merge v1.20.1 stable back to unstable #6960

merged 6 commits into from
Jul 16, 2024

Conversation

philknows
Copy link
Member

As part of our release.md this PR is to re-merge hotfix on stable back to unstable.

@philknows philknows requested a review from a team as a code owner July 16, 2024 02:07
@philknows philknows merged commit bd20876 into unstable Jul 16, 2024
21 checks passed
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: d059d80 Previous: d6175da Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 506.72 us/op 779.65 us/op 0.65
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 43.820 us/op 44.458 us/op 0.99
BLS verify - blst-native 1.1456 ms/op 1.2010 ms/op 0.95
BLS verifyMultipleSignatures 3 - blst-native 2.4399 ms/op 2.5483 ms/op 0.96
BLS verifyMultipleSignatures 8 - blst-native 5.3897 ms/op 5.6282 ms/op 0.96
BLS verifyMultipleSignatures 32 - blst-native 19.813 ms/op 20.660 ms/op 0.96
BLS verifyMultipleSignatures 64 - blst-native 39.065 ms/op 40.695 ms/op 0.96
BLS verifyMultipleSignatures 128 - blst-native 77.417 ms/op 80.726 ms/op 0.96
BLS deserializing 10000 signatures 805.52 ms/op 833.85 ms/op 0.97
BLS deserializing 100000 signatures 8.3666 s/op 8.3988 s/op 1.00
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.2171 ms/op 1.2035 ms/op 1.01
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.3716 ms/op 1.3596 ms/op 1.01
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.1439 ms/op 2.1252 ms/op 1.01
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.1769 ms/op 3.5146 ms/op 0.90
BLS verifyMultipleSignatures - same message - 128 - blst-native 5.2492 ms/op 5.2399 ms/op 1.00
BLS aggregatePubkeys 32 - blst-native 24.247 us/op 24.202 us/op 1.00
BLS aggregatePubkeys 128 - blst-native 94.540 us/op 95.760 us/op 0.99
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 62.963 ms/op 63.825 ms/op 0.99
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 59.105 ms/op 50.544 ms/op 1.17
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 32.154 ms/op 30.942 ms/op 1.04
getSlashingsAndExits - default max 103.51 us/op 90.784 us/op 1.14
getSlashingsAndExits - 2k 292.26 us/op 275.70 us/op 1.06
proposeBlockBody type=full, size=empty 5.7759 ms/op 5.7059 ms/op 1.01
isKnown best case - 1 super set check 429.00 ns/op 279.00 ns/op 1.54
isKnown normal case - 2 super set checks 403.00 ns/op 278.00 ns/op 1.45
isKnown worse case - 16 super set checks 534.00 ns/op 273.00 ns/op 1.96
InMemoryCheckpointStateCache - add get delete 7.0180 us/op 4.9800 us/op 1.41
validate api signedAggregateAndProof - struct 2.6163 ms/op 2.6217 ms/op 1.00
validate gossip signedAggregateAndProof - struct 2.6677 ms/op 2.6314 ms/op 1.01
validate gossip attestation - vc 640000 1.2486 ms/op 1.2691 ms/op 0.98
batch validate gossip attestation - vc 640000 - chunk 32 152.07 us/op 157.76 us/op 0.96
batch validate gossip attestation - vc 640000 - chunk 64 136.25 us/op 140.03 us/op 0.97
batch validate gossip attestation - vc 640000 - chunk 128 124.63 us/op 141.99 us/op 0.88
batch validate gossip attestation - vc 640000 - chunk 256 116.85 us/op 132.26 us/op 0.88
pickEth1Vote - no votes 993.27 us/op 1.2477 ms/op 0.80
pickEth1Vote - max votes 6.5227 ms/op 9.2907 ms/op 0.70
pickEth1Vote - Eth1Data hashTreeRoot value x2048 13.332 ms/op 14.127 ms/op 0.94
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 15.949 ms/op 19.156 ms/op 0.83
pickEth1Vote - Eth1Data fastSerialize value x2048 490.57 us/op 585.58 us/op 0.84
pickEth1Vote - Eth1Data fastSerialize tree x2048 3.6380 ms/op 5.0778 ms/op 0.72
bytes32 toHexString 432.00 ns/op 589.00 ns/op 0.73
bytes32 Buffer.toString(hex) 250.00 ns/op 289.00 ns/op 0.87
bytes32 Buffer.toString(hex) from Uint8Array 361.00 ns/op 497.00 ns/op 0.73
bytes32 Buffer.toString(hex) + 0x 246.00 ns/op 287.00 ns/op 0.86
Object access 1 prop 0.13000 ns/op 0.20200 ns/op 0.64
Map access 1 prop 0.12600 ns/op 0.13900 ns/op 0.91
Object get x1000 5.8470 ns/op 6.9400 ns/op 0.84
Map get x1000 6.2310 ns/op 7.3480 ns/op 0.85
Object set x1000 38.804 ns/op 38.670 ns/op 1.00
Map set x1000 26.184 ns/op 26.246 ns/op 1.00
Return object 10000 times 0.30140 ns/op 0.31550 ns/op 0.96
Throw Error 10000 times 3.3398 us/op 3.6340 us/op 0.92
fastMsgIdFn sha256 / 200 bytes 2.1980 us/op 2.3970 us/op 0.92
fastMsgIdFn h32 xxhash / 200 bytes 331.00 ns/op 279.00 ns/op 1.19
fastMsgIdFn h64 xxhash / 200 bytes 269.00 ns/op 281.00 ns/op 0.96
fastMsgIdFn sha256 / 1000 bytes 7.3600 us/op 8.0940 us/op 0.91
fastMsgIdFn h32 xxhash / 1000 bytes 423.00 ns/op 453.00 ns/op 0.93
fastMsgIdFn h64 xxhash / 1000 bytes 339.00 ns/op 378.00 ns/op 0.90
fastMsgIdFn sha256 / 10000 bytes 63.926 us/op 69.761 us/op 0.92
fastMsgIdFn h32 xxhash / 10000 bytes 1.9700 us/op 2.0070 us/op 0.98
fastMsgIdFn h64 xxhash / 10000 bytes 1.2300 us/op 1.2910 us/op 0.95
send data - 1000 256B messages 11.028 ms/op 14.459 ms/op 0.76
send data - 1000 512B messages 15.275 ms/op 18.247 ms/op 0.84
send data - 1000 1024B messages 24.417 ms/op 30.562 ms/op 0.80
send data - 1000 1200B messages 25.938 ms/op 27.251 ms/op 0.95
send data - 1000 2048B messages 32.346 ms/op 33.043 ms/op 0.98
send data - 1000 4096B messages 30.149 ms/op 30.542 ms/op 0.99
send data - 1000 16384B messages 74.823 ms/op 70.616 ms/op 1.06
send data - 1000 65536B messages 230.58 ms/op 226.59 ms/op 1.02
enrSubnets - fastDeserialize 64 bits 1.0620 us/op 1.1560 us/op 0.92
enrSubnets - ssz BitVector 64 bits 351.00 ns/op 354.00 ns/op 0.99
enrSubnets - fastDeserialize 4 bits 150.00 ns/op 147.00 ns/op 1.02
enrSubnets - ssz BitVector 4 bits 353.00 ns/op 391.00 ns/op 0.90
prioritizePeers score -10:0 att 32-0.1 sync 2-0 146.91 us/op 150.28 us/op 0.98
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 181.15 us/op 153.12 us/op 1.18
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 268.90 us/op 246.76 us/op 1.09
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 392.34 us/op 402.47 us/op 0.97
prioritizePeers score 0:0 att 64-1 sync 4-1 593.41 us/op 634.72 us/op 0.93
array of 16000 items push then shift 1.6502 us/op 1.6450 us/op 1.00
LinkedList of 16000 items push then shift 7.4050 ns/op 7.4540 ns/op 0.99
array of 16000 items push then pop 107.33 ns/op 123.42 ns/op 0.87
LinkedList of 16000 items push then pop 7.3210 ns/op 7.3110 ns/op 1.00
array of 24000 items push then shift 2.4314 us/op 2.4394 us/op 1.00
LinkedList of 24000 items push then shift 9.0540 ns/op 7.4630 ns/op 1.21
array of 24000 items push then pop 144.86 ns/op 153.44 ns/op 0.94
LinkedList of 24000 items push then pop 7.2540 ns/op 7.0850 ns/op 1.02
intersect bitArray bitLen 8 6.3640 ns/op 6.3990 ns/op 0.99
intersect array and set length 8 46.409 ns/op 48.631 ns/op 0.95
intersect bitArray bitLen 128 29.321 ns/op 28.924 ns/op 1.01
intersect array and set length 128 668.82 ns/op 681.16 ns/op 0.98
bitArray.getTrueBitIndexes() bitLen 128 2.1980 us/op 2.0030 us/op 1.10
bitArray.getTrueBitIndexes() bitLen 248 3.0580 us/op 3.5140 us/op 0.87
bitArray.getTrueBitIndexes() bitLen 512 5.9950 us/op 6.1800 us/op 0.97
Buffer.concat 32 items 885.00 ns/op 892.00 ns/op 0.99
Uint8Array.set 32 items 1.3140 us/op 1.4250 us/op 0.92
Buffer.copy 1.4790 us/op 1.6970 us/op 0.87
Uint8Array.set - with subarray 2.4140 us/op 2.6600 us/op 0.91
Uint8Array.set - without subarray 1.4370 us/op 1.3440 us/op 1.07
getUint32 - dataview 311.00 ns/op 248.00 ns/op 1.25
getUint32 - manual 183.00 ns/op 178.00 ns/op 1.03
Set add up to 64 items then delete first 2.2098 us/op 2.2832 us/op 0.97
OrderedSet add up to 64 items then delete first 3.4149 us/op 3.4768 us/op 0.98
Set add up to 64 items then delete last 2.5689 us/op 2.5975 us/op 0.99
OrderedSet add up to 64 items then delete last 4.1222 us/op 3.8156 us/op 1.08
Set add up to 64 items then delete middle 3.3960 us/op 2.5651 us/op 1.32
OrderedSet add up to 64 items then delete middle 6.5651 us/op 5.2849 us/op 1.24
Set add up to 128 items then delete first 5.1169 us/op 5.1482 us/op 0.99
OrderedSet add up to 128 items then delete first 7.5632 us/op 7.6613 us/op 0.99
Set add up to 128 items then delete last 5.1454 us/op 5.0812 us/op 1.01
OrderedSet add up to 128 items then delete last 7.8614 us/op 7.3085 us/op 1.08
Set add up to 128 items then delete middle 4.9815 us/op 4.9512 us/op 1.01
OrderedSet add up to 128 items then delete middle 13.744 us/op 14.035 us/op 0.98
Set add up to 256 items then delete first 10.308 us/op 10.576 us/op 0.97
OrderedSet add up to 256 items then delete first 19.412 us/op 15.497 us/op 1.25
Set add up to 256 items then delete last 10.435 us/op 9.8486 us/op 1.06
OrderedSet add up to 256 items then delete last 15.774 us/op 14.799 us/op 1.07
Set add up to 256 items then delete middle 10.331 us/op 10.222 us/op 1.01
OrderedSet add up to 256 items then delete middle 40.718 us/op 41.312 us/op 0.99
transfer serialized Status (84 B) 1.3840 us/op 1.3540 us/op 1.02
copy serialized Status (84 B) 1.1180 us/op 1.0980 us/op 1.02
transfer serialized SignedVoluntaryExit (112 B) 1.4870 us/op 1.4650 us/op 1.02
copy serialized SignedVoluntaryExit (112 B) 1.2410 us/op 1.2250 us/op 1.01
transfer serialized ProposerSlashing (416 B) 2.3630 us/op 2.4150 us/op 0.98
copy serialized ProposerSlashing (416 B) 2.0970 us/op 1.8050 us/op 1.16
transfer serialized Attestation (485 B) 1.6420 us/op 1.9540 us/op 0.84
copy serialized Attestation (485 B) 1.4050 us/op 1.9260 us/op 0.73
transfer serialized AttesterSlashing (33232 B) 1.8270 us/op 2.6530 us/op 0.69
copy serialized AttesterSlashing (33232 B) 4.8520 us/op 6.7890 us/op 0.71
transfer serialized Small SignedBeaconBlock (128000 B) 2.5430 us/op 3.4790 us/op 0.73
copy serialized Small SignedBeaconBlock (128000 B) 15.872 us/op 20.184 us/op 0.79
transfer serialized Avg SignedBeaconBlock (200000 B) 3.1530 us/op 3.6070 us/op 0.87
copy serialized Avg SignedBeaconBlock (200000 B) 21.965 us/op 28.445 us/op 0.77
transfer serialized BlobsSidecar (524380 B) 2.8400 us/op 4.1940 us/op 0.68
copy serialized BlobsSidecar (524380 B) 78.043 us/op 92.912 us/op 0.84
transfer serialized Big SignedBeaconBlock (1000000 B) 4.1740 us/op 3.7390 us/op 1.12
copy serialized Big SignedBeaconBlock (1000000 B) 171.94 us/op 164.89 us/op 1.04
pass gossip attestations to forkchoice per slot 3.3731 ms/op 3.3186 ms/op 1.02
forkChoice updateHead vc 100000 bc 64 eq 0 491.78 us/op 491.86 us/op 1.00
forkChoice updateHead vc 600000 bc 64 eq 0 2.9931 ms/op 3.4184 ms/op 0.88
forkChoice updateHead vc 1000000 bc 64 eq 0 5.2142 ms/op 5.5085 ms/op 0.95
forkChoice updateHead vc 600000 bc 320 eq 0 3.6696 ms/op 3.2188 ms/op 1.14
forkChoice updateHead vc 600000 bc 1200 eq 0 3.1856 ms/op 3.2687 ms/op 0.97
forkChoice updateHead vc 600000 bc 7200 eq 0 4.1620 ms/op 4.0844 ms/op 1.02
forkChoice updateHead vc 600000 bc 64 eq 1000 10.739 ms/op 12.239 ms/op 0.88
forkChoice updateHead vc 600000 bc 64 eq 10000 10.704 ms/op 10.937 ms/op 0.98
forkChoice updateHead vc 600000 bc 64 eq 300000 14.772 ms/op 15.831 ms/op 0.93
computeDeltas 500000 validators 300 proto nodes 3.8297 ms/op 3.7523 ms/op 1.02
computeDeltas 500000 validators 1200 proto nodes 3.7569 ms/op 3.7090 ms/op 1.01
computeDeltas 500000 validators 7200 proto nodes 3.6591 ms/op 3.7970 ms/op 0.96
computeDeltas 750000 validators 300 proto nodes 5.5069 ms/op 5.8224 ms/op 0.95
computeDeltas 750000 validators 1200 proto nodes 5.5173 ms/op 5.6654 ms/op 0.97
computeDeltas 750000 validators 7200 proto nodes 5.2642 ms/op 5.6284 ms/op 0.94
computeDeltas 1400000 validators 300 proto nodes 10.264 ms/op 10.099 ms/op 1.02
computeDeltas 1400000 validators 1200 proto nodes 10.456 ms/op 9.9445 ms/op 1.05
computeDeltas 1400000 validators 7200 proto nodes 9.8094 ms/op 9.9136 ms/op 0.99
computeDeltas 2100000 validators 300 proto nodes 14.514 ms/op 14.887 ms/op 0.97
computeDeltas 2100000 validators 1200 proto nodes 14.728 ms/op 14.500 ms/op 1.02
computeDeltas 2100000 validators 7200 proto nodes 14.793 ms/op 14.812 ms/op 1.00
altair processAttestation - 250000 vs - 7PWei normalcase 1.7654 ms/op 1.7600 ms/op 1.00
altair processAttestation - 250000 vs - 7PWei worstcase 2.4905 ms/op 2.6962 ms/op 0.92
altair processAttestation - setStatus - 1/6 committees join 91.297 us/op 97.214 us/op 0.94
altair processAttestation - setStatus - 1/3 committees join 175.26 us/op 224.62 us/op 0.78
altair processAttestation - setStatus - 1/2 committees join 255.77 us/op 310.93 us/op 0.82
altair processAttestation - setStatus - 2/3 committees join 333.07 us/op 343.53 us/op 0.97
altair processAttestation - setStatus - 4/5 committees join 500.28 us/op 513.80 us/op 0.97
altair processAttestation - setStatus - 100% committees join 604.14 us/op 567.38 us/op 1.06
altair processBlock - 250000 vs - 7PWei normalcase 4.3131 ms/op 4.1250 ms/op 1.05
altair processBlock - 250000 vs - 7PWei normalcase hashState 27.420 ms/op 25.774 ms/op 1.06
altair processBlock - 250000 vs - 7PWei worstcase 40.234 ms/op 39.611 ms/op 1.02
altair processBlock - 250000 vs - 7PWei worstcase hashState 77.491 ms/op 74.124 ms/op 1.05
phase0 processBlock - 250000 vs - 7PWei normalcase 1.5590 ms/op 1.7406 ms/op 0.90
phase0 processBlock - 250000 vs - 7PWei worstcase 27.522 ms/op 26.460 ms/op 1.04
altair processEth1Data - 250000 vs - 7PWei normalcase 494.29 us/op 326.11 us/op 1.52
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 6.3180 us/op 4.8260 us/op 1.31
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 34.801 us/op 17.743 us/op 1.96
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 11.688 us/op 6.8210 us/op 1.71
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 8.4900 us/op 5.0760 us/op 1.67
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 146.05 us/op 75.944 us/op 1.92
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 693.97 us/op 681.04 us/op 1.02
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 859.86 us/op 918.87 us/op 0.94
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 892.26 us/op 917.99 us/op 0.97
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.5538 ms/op 2.5298 ms/op 1.01
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.5708 ms/op 1.5273 ms/op 1.03
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.8510 ms/op 3.8080 ms/op 1.01
Tree 40 250000 create 232.00 ms/op 219.66 ms/op 1.06
Tree 40 250000 get(125000) 155.03 ns/op 144.58 ns/op 1.07
Tree 40 250000 set(125000) 726.45 ns/op 647.88 ns/op 1.12
Tree 40 250000 toArray() 19.072 ms/op 15.709 ms/op 1.21
Tree 40 250000 iterate all - toArray() + loop 19.623 ms/op 15.079 ms/op 1.30
Tree 40 250000 iterate all - get(i) 58.594 ms/op 50.693 ms/op 1.16
MutableVector 250000 create 9.8871 ms/op 7.5050 ms/op 1.32
MutableVector 250000 get(125000) 9.2870 ns/op 10.185 ns/op 0.91
MutableVector 250000 set(125000) 207.97 ns/op 197.05 ns/op 1.06
MutableVector 250000 toArray() 3.9936 ms/op 3.4267 ms/op 1.17
MutableVector 250000 iterate all - toArray() + loop 3.7494 ms/op 3.5611 ms/op 1.05
MutableVector 250000 iterate all - get(i) 2.5085 ms/op 1.5035 ms/op 1.67
Array 250000 create 3.2954 ms/op 3.0225 ms/op 1.09
Array 250000 clone - spread 1.5416 ms/op 1.5074 ms/op 1.02
Array 250000 get(125000) 0.42200 ns/op 0.39500 ns/op 1.07
Array 250000 set(125000) 0.44100 ns/op 0.41300 ns/op 1.07
Array 250000 iterate all - loop 90.876 us/op 79.398 us/op 1.14
effectiveBalanceIncrements clone Uint8Array 300000 33.705 us/op 30.493 us/op 1.11
effectiveBalanceIncrements clone MutableVector 300000 123.00 ns/op 116.00 ns/op 1.06
effectiveBalanceIncrements rw all Uint8Array 300000 198.74 us/op 191.69 us/op 1.04
effectiveBalanceIncrements rw all MutableVector 300000 65.613 ms/op 68.303 ms/op 0.96
phase0 afterProcessEpoch - 250000 vs - 7PWei 86.501 ms/op 87.765 ms/op 0.99
Array.fill - length 1000000 3.5880 ms/op
Array push - length 1000000 18.517 ms/op
Array.get 0.29003 ns/op
Uint8Array.get 0.42217 ns/op
phase0 beforeProcessEpoch - 250000 vs - 7PWei 22.351 ms/op 34.374 ms/op 0.65
altair processEpoch - mainnet_e81889 336.66 ms/op 337.73 ms/op 1.00
mainnet_e81889 - altair beforeProcessEpoch 32.233 ms/op 47.853 ms/op 0.67
mainnet_e81889 - altair processJustificationAndFinalization 11.621 us/op 11.042 us/op 1.05
mainnet_e81889 - altair processInactivityUpdates 6.4166 ms/op 6.0642 ms/op 1.06
mainnet_e81889 - altair processRewardsAndPenalties 47.569 ms/op 39.926 ms/op 1.19
mainnet_e81889 - altair processRegistryUpdates 1.8180 us/op 1.8270 us/op 1.00
mainnet_e81889 - altair processSlashings 465.00 ns/op 367.00 ns/op 1.27
mainnet_e81889 - altair processEth1DataReset 415.00 ns/op 303.00 ns/op 1.37
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.2886 ms/op 1.1811 ms/op 1.09
mainnet_e81889 - altair processSlashingsReset 3.3730 us/op 2.6930 us/op 1.25
mainnet_e81889 - altair processRandaoMixesReset 4.1080 us/op 4.3110 us/op 0.95
mainnet_e81889 - altair processHistoricalRootsUpdate 467.00 ns/op 471.00 ns/op 0.99
mainnet_e81889 - altair processParticipationFlagUpdates 3.4380 us/op 1.6030 us/op 2.14
mainnet_e81889 - altair processSyncCommitteeUpdates 349.00 ns/op 418.00 ns/op 0.83
mainnet_e81889 - altair afterProcessEpoch 91.681 ms/op 91.483 ms/op 1.00
capella processEpoch - mainnet_e217614 1.1087 s/op 1.2840 s/op 0.86
mainnet_e217614 - capella beforeProcessEpoch 113.52 ms/op 285.32 ms/op 0.40
mainnet_e217614 - capella processJustificationAndFinalization 13.860 us/op 13.194 us/op 1.05
mainnet_e217614 - capella processInactivityUpdates 16.625 ms/op 19.110 ms/op 0.87
mainnet_e217614 - capella processRewardsAndPenalties 218.23 ms/op 246.53 ms/op 0.89
mainnet_e217614 - capella processRegistryUpdates 13.122 us/op 12.626 us/op 1.04
mainnet_e217614 - capella processSlashings 284.00 ns/op 425.00 ns/op 0.67
mainnet_e217614 - capella processEth1DataReset 288.00 ns/op 284.00 ns/op 1.01
mainnet_e217614 - capella processEffectiveBalanceUpdates 8.6703 ms/op 14.447 ms/op 0.60
mainnet_e217614 - capella processSlashingsReset 2.9470 us/op 3.4450 us/op 0.86
mainnet_e217614 - capella processRandaoMixesReset 3.7030 us/op 3.4050 us/op 1.09
mainnet_e217614 - capella processHistoricalRootsUpdate 885.00 ns/op 637.00 ns/op 1.39
mainnet_e217614 - capella processParticipationFlagUpdates 2.1860 us/op 2.2860 us/op 0.96
mainnet_e217614 - capella afterProcessEpoch 253.52 ms/op 271.80 ms/op 0.93
phase0 processEpoch - mainnet_e58758 328.45 ms/op 357.38 ms/op 0.92
mainnet_e58758 - phase0 beforeProcessEpoch 66.133 ms/op 112.25 ms/op 0.59
mainnet_e58758 - phase0 processJustificationAndFinalization 12.149 us/op 14.311 us/op 0.85
mainnet_e58758 - phase0 processRewardsAndPenalties 27.978 ms/op 35.132 ms/op 0.80
mainnet_e58758 - phase0 processRegistryUpdates 7.4050 us/op 9.0510 us/op 0.82
mainnet_e58758 - phase0 processSlashings 293.00 ns/op 298.00 ns/op 0.98
mainnet_e58758 - phase0 processEth1DataReset 278.00 ns/op 315.00 ns/op 0.88
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 931.47 us/op 957.57 us/op 0.97
mainnet_e58758 - phase0 processSlashingsReset 3.0300 us/op 3.3290 us/op 0.91
mainnet_e58758 - phase0 processRandaoMixesReset 3.2220 us/op 3.7300 us/op 0.86
mainnet_e58758 - phase0 processHistoricalRootsUpdate 271.00 ns/op 321.00 ns/op 0.84
mainnet_e58758 - phase0 processParticipationRecordUpdates 2.2820 us/op 2.3810 us/op 0.96
mainnet_e58758 - phase0 afterProcessEpoch 72.970 ms/op 77.521 ms/op 0.94
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.6988 ms/op 1.5860 ms/op 1.07
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.9387 ms/op 1.9392 ms/op 1.00
altair processInactivityUpdates - 250000 normalcase 13.718 ms/op 15.523 ms/op 0.88
altair processInactivityUpdates - 250000 worstcase 13.704 ms/op 19.099 ms/op 0.72
phase0 processRegistryUpdates - 250000 normalcase 5.7810 us/op 7.3100 us/op 0.79
phase0 processRegistryUpdates - 250000 badcase_full_deposits 231.53 us/op 275.51 us/op 0.84
phase0 processRegistryUpdates - 250000 worstcase 0.5 106.40 ms/op 119.87 ms/op 0.89
altair processRewardsAndPenalties - 250000 normalcase 28.146 ms/op 38.045 ms/op 0.74
altair processRewardsAndPenalties - 250000 worstcase 34.940 ms/op 38.797 ms/op 0.90
phase0 getAttestationDeltas - 250000 normalcase 6.9576 ms/op 7.3225 ms/op 0.95
phase0 getAttestationDeltas - 250000 worstcase 7.2771 ms/op 7.4352 ms/op 0.98
phase0 processSlashings - 250000 worstcase 73.555 us/op 92.753 us/op 0.79
altair processSyncCommitteeUpdates - 250000 117.24 ms/op 131.90 ms/op 0.89
BeaconState.hashTreeRoot - No change 271.00 ns/op 284.00 ns/op 0.95
BeaconState.hashTreeRoot - 1 full validator 104.78 us/op 112.29 us/op 0.93
BeaconState.hashTreeRoot - 32 full validator 1.1521 ms/op 1.5464 ms/op 0.75
BeaconState.hashTreeRoot - 512 full validator 12.102 ms/op 11.877 ms/op 1.02
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 137.38 us/op 121.33 us/op 1.13
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.6544 ms/op 1.5830 ms/op 1.05
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 23.010 ms/op 21.996 ms/op 1.05
BeaconState.hashTreeRoot - 1 balances 106.05 us/op 94.766 us/op 1.12
BeaconState.hashTreeRoot - 32 balances 1.1997 ms/op 1.0320 ms/op 1.16
BeaconState.hashTreeRoot - 512 balances 10.077 ms/op 8.7564 ms/op 1.15
BeaconState.hashTreeRoot - 250000 balances 183.56 ms/op 145.03 ms/op 1.27
aggregationBits - 2048 els - zipIndexesInBitList 22.864 us/op 23.610 us/op 0.97
byteArrayEquals 32 52.086 ns/op 54.757 ns/op 0.95
Buffer.compare 32 16.667 ns/op 17.461 ns/op 0.95
byteArrayEquals 1024 1.5406 us/op 1.5735 us/op 0.98
Buffer.compare 1024 25.097 ns/op 24.678 ns/op 1.02
byteArrayEquals 16384 24.515 us/op 25.190 us/op 0.97
Buffer.compare 16384 192.60 ns/op 185.02 ns/op 1.04
byteArrayEquals 123687377 186.04 ms/op 190.64 ms/op 0.98
Buffer.compare 123687377 6.7643 ms/op 7.2324 ms/op 0.94
byteArrayEquals 32 - diff last byte 51.407 ns/op 52.658 ns/op 0.98
Buffer.compare 32 - diff last byte 16.893 ns/op 17.604 ns/op 0.96
byteArrayEquals 1024 - diff last byte 1.5696 us/op 1.5744 us/op 1.00
Buffer.compare 1024 - diff last byte 25.883 ns/op 25.680 ns/op 1.01
byteArrayEquals 16384 - diff last byte 24.992 us/op 25.777 us/op 0.97
Buffer.compare 16384 - diff last byte 204.08 ns/op 203.59 ns/op 1.00
byteArrayEquals 123687377 - diff last byte 189.00 ms/op 192.98 ms/op 0.98
Buffer.compare 123687377 - diff last byte 6.9032 ms/op 6.0704 ms/op 1.14
byteArrayEquals 32 - random bytes 5.1220 ns/op 5.2890 ns/op 0.97
Buffer.compare 32 - random bytes 16.981 ns/op 17.183 ns/op 0.99
byteArrayEquals 1024 - random bytes 5.2620 ns/op 5.2470 ns/op 1.00
Buffer.compare 1024 - random bytes 16.905 ns/op 17.144 ns/op 0.99
byteArrayEquals 16384 - random bytes 5.0710 ns/op 5.2470 ns/op 0.97
Buffer.compare 16384 - random bytes 16.911 ns/op 17.126 ns/op 0.99
byteArrayEquals 123687377 - random bytes 6.3500 ns/op 6.6200 ns/op 0.96
Buffer.compare 123687377 - random bytes 18.210 ns/op 18.360 ns/op 0.99
regular array get 100000 times 32.613 us/op 32.417 us/op 1.01
wrappedArray get 100000 times 32.558 us/op 32.421 us/op 1.00
arrayWithProxy get 100000 times 12.964 ms/op 12.883 ms/op 1.01
ssz.Root.equals 45.323 ns/op 45.438 ns/op 1.00
byteArrayEquals 44.563 ns/op 44.788 ns/op 0.99
Buffer.compare 10.211 ns/op 10.291 ns/op 0.99
shuffle list - 16384 els 6.5886 ms/op 6.2232 ms/op 1.06
shuffle list - 250000 els 94.086 ms/op 90.793 ms/op 1.04
processSlot - 1 slots 14.515 us/op 12.098 us/op 1.20
processSlot - 32 slots 2.9967 ms/op 2.6732 ms/op 1.12
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 36.423 ms/op 37.658 ms/op 0.97
getCommitteeAssignments - req 1 vs - 250000 vc 2.1362 ms/op 2.1218 ms/op 1.01
getCommitteeAssignments - req 100 vs - 250000 vc 4.1124 ms/op 4.0727 ms/op 1.01
getCommitteeAssignments - req 1000 vs - 250000 vc 4.4371 ms/op 4.3816 ms/op 1.01
findModifiedValidators - 10000 modified validators 279.72 ms/op 249.98 ms/op 1.12
findModifiedValidators - 1000 modified validators 217.70 ms/op 168.03 ms/op 1.30
findModifiedValidators - 100 modified validators 187.57 ms/op 167.13 ms/op 1.12
findModifiedValidators - 10 modified validators 182.78 ms/op 175.02 ms/op 1.04
findModifiedValidators - 1 modified validators 191.59 ms/op 167.14 ms/op 1.15
findModifiedValidators - no difference 180.73 ms/op 161.98 ms/op 1.12
compare ViewDUs 3.1093 s/op 2.9294 s/op 1.06
compare each validator Uint8Array 1.5542 s/op 1.3216 s/op 1.18
compare ViewDU to Uint8Array 1.0236 s/op 949.57 ms/op 1.08
migrate state 1000000 validators, 24 modified, 0 new 557.98 ms/op 577.00 ms/op 0.97
migrate state 1000000 validators, 1700 modified, 1000 new 773.99 ms/op 805.26 ms/op 0.96
migrate state 1000000 validators, 3400 modified, 2000 new 880.83 ms/op 1.0239 s/op 0.86
migrate state 1500000 validators, 24 modified, 0 new 490.09 ms/op 562.14 ms/op 0.87
migrate state 1500000 validators, 1700 modified, 1000 new 716.04 ms/op 725.14 ms/op 0.99
migrate state 1500000 validators, 3400 modified, 2000 new 990.81 ms/op 916.63 ms/op 1.08
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.0300 ns/op 4.6000 ns/op 0.88
state getBlockRootAtSlot - 250000 vs - 7PWei 638.68 ns/op 576.54 ns/op 1.11
computeProposers - vc 250000 7.0252 ms/op 6.7968 ms/op 1.03
computeEpochShuffling - vc 250000 90.762 ms/op 93.956 ms/op 0.97
getNextSyncCommittee - vc 250000 119.32 ms/op 119.13 ms/op 1.00
computeSigningRoot for AttestationData 20.207 us/op 24.055 us/op 0.84
hash AttestationData serialized data then Buffer.toString(base64) 1.4512 us/op 1.5413 us/op 0.94
toHexString serialized data 835.92 ns/op 905.22 ns/op 0.92
Buffer.toString(base64) 179.37 ns/op 183.16 ns/op 0.98

by benchmarkbot/action

@wemeetagain
Copy link
Member

🎉 This PR is included in v1.21.0 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants