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

fix: update blockcontents typing to be more precise #6907

Merged
merged 1 commit into from
Jun 25, 2024

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Jun 25, 2024

small update to typing

@g11tech g11tech requested a review from a team as a code owner June 25, 2024 11:16
@g11tech g11tech enabled auto-merge (squash) June 25, 2024 11:22
@g11tech g11tech merged commit 0f3109f into unstable Jun 25, 2024
19 of 20 checks passed
@g11tech g11tech deleted the blockcontentstyping branch June 25, 2024 11:33
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 85d006b Previous: b453b37 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 924.29 us/op 658.32 us/op 1.40
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 70.438 us/op 54.602 us/op 1.29
BLS verify - blst-native 1.2641 ms/op 1.1267 ms/op 1.12
BLS verifyMultipleSignatures 3 - blst-native 2.7391 ms/op 2.3797 ms/op 1.15
BLS verifyMultipleSignatures 8 - blst-native 6.1534 ms/op 5.2725 ms/op 1.17
BLS verifyMultipleSignatures 32 - blst-native 21.490 ms/op 19.188 ms/op 1.12
BLS verifyMultipleSignatures 64 - blst-native 43.271 ms/op 38.315 ms/op 1.13
BLS verifyMultipleSignatures 128 - blst-native 87.379 ms/op 75.555 ms/op 1.16
BLS deserializing 10000 signatures 906.28 ms/op 783.45 ms/op 1.16
BLS deserializing 100000 signatures 9.3313 s/op 8.1085 s/op 1.15
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.3177 ms/op 1.1523 ms/op 1.14
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.5032 ms/op 1.3145 ms/op 1.14
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.4237 ms/op 2.1771 ms/op 1.11
BLS verifyMultipleSignatures - same message - 64 - blst-native 4.0327 ms/op 3.0612 ms/op 1.32
BLS verifyMultipleSignatures - same message - 128 - blst-native 5.8516 ms/op 7.1562 ms/op 0.82
BLS aggregatePubkeys 32 - blst-native 26.484 us/op 23.648 us/op 1.12
BLS aggregatePubkeys 128 - blst-native 102.40 us/op 91.190 us/op 1.12
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 95.756 ms/op 71.384 ms/op 1.34
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 94.918 ms/op 52.130 ms/op 1.82
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 46.159 ms/op 35.542 ms/op 1.30
getSlashingsAndExits - default max 214.16 us/op 293.00 us/op 0.73
getSlashingsAndExits - 2k 434.28 us/op 443.08 us/op 0.98
proposeBlockBody type=full, size=empty 7.3620 ms/op 5.3196 ms/op 1.38
isKnown best case - 1 super set check 626.00 ns/op 692.00 ns/op 0.90
isKnown normal case - 2 super set checks 600.00 ns/op 901.00 ns/op 0.67
isKnown worse case - 16 super set checks 610.00 ns/op 652.00 ns/op 0.94
InMemoryCheckpointStateCache - add get delete 6.3070 us/op 6.1700 us/op 1.02
validate api signedAggregateAndProof - struct 2.8177 ms/op 2.5964 ms/op 1.09
validate gossip signedAggregateAndProof - struct 2.8196 ms/op 2.5534 ms/op 1.10
validate gossip attestation - vc 640000 1.4480 ms/op 1.2239 ms/op 1.18
batch validate gossip attestation - vc 640000 - chunk 32 181.37 us/op 145.83 us/op 1.24
batch validate gossip attestation - vc 640000 - chunk 64 161.21 us/op 133.33 us/op 1.21
batch validate gossip attestation - vc 640000 - chunk 128 148.60 us/op 119.46 us/op 1.24
batch validate gossip attestation - vc 640000 - chunk 256 149.89 us/op 117.44 us/op 1.28
pickEth1Vote - no votes 1.4522 ms/op 966.14 us/op 1.50
pickEth1Vote - max votes 15.621 ms/op 9.6171 ms/op 1.62
pickEth1Vote - Eth1Data hashTreeRoot value x2048 23.190 ms/op 17.465 ms/op 1.33
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 32.069 ms/op 19.083 ms/op 1.68
pickEth1Vote - Eth1Data fastSerialize value x2048 728.36 us/op 463.54 us/op 1.57
pickEth1Vote - Eth1Data fastSerialize tree x2048 5.4851 ms/op 6.0862 ms/op 0.90
bytes32 toHexString 883.00 ns/op 668.00 ns/op 1.32
bytes32 Buffer.toString(hex) 297.00 ns/op 477.00 ns/op 0.62
bytes32 Buffer.toString(hex) from Uint8Array 532.00 ns/op 600.00 ns/op 0.89
bytes32 Buffer.toString(hex) + 0x 318.00 ns/op 528.00 ns/op 0.60
Object access 1 prop 0.21000 ns/op 0.37200 ns/op 0.56
Map access 1 prop 0.15200 ns/op 0.37100 ns/op 0.41
Object get x1000 6.5360 ns/op 5.2590 ns/op 1.24
Map get x1000 6.6970 ns/op 5.9220 ns/op 1.13
Object set x1000 57.348 ns/op 26.256 ns/op 2.18
Map set x1000 38.976 ns/op 20.520 ns/op 1.90
Return object 10000 times 0.33550 ns/op 0.31290 ns/op 1.07
Throw Error 10000 times 3.6180 us/op 2.8357 us/op 1.28
fastMsgIdFn sha256 / 200 bytes 2.4680 us/op 2.1290 us/op 1.16
fastMsgIdFn h32 xxhash / 200 bytes 317.00 ns/op 492.00 ns/op 0.64
fastMsgIdFn h64 xxhash / 200 bytes 289.00 ns/op 520.00 ns/op 0.56
fastMsgIdFn sha256 / 1000 bytes 7.7780 us/op 6.2330 us/op 1.25
fastMsgIdFn h32 xxhash / 1000 bytes 457.00 ns/op 626.00 ns/op 0.73
fastMsgIdFn h64 xxhash / 1000 bytes 368.00 ns/op 591.00 ns/op 0.62
fastMsgIdFn sha256 / 10000 bytes 68.553 us/op 51.580 us/op 1.33
fastMsgIdFn h32 xxhash / 10000 bytes 2.0540 us/op 2.0540 us/op 1.00
fastMsgIdFn h64 xxhash / 10000 bytes 1.3010 us/op 1.4440 us/op 0.90
send data - 1000 256B messages 15.240 ms/op 12.970 ms/op 1.18
send data - 1000 512B messages 19.518 ms/op 17.875 ms/op 1.09
send data - 1000 1024B messages 31.251 ms/op 23.716 ms/op 1.32
send data - 1000 1200B messages 31.507 ms/op 27.804 ms/op 1.13
send data - 1000 2048B messages 38.918 ms/op 34.684 ms/op 1.12
send data - 1000 4096B messages 38.198 ms/op 29.824 ms/op 1.28
send data - 1000 16384B messages 76.974 ms/op 73.599 ms/op 1.05
send data - 1000 65536B messages 238.55 ms/op 275.86 ms/op 0.86
enrSubnets - fastDeserialize 64 bits 1.4290 us/op 1.2400 us/op 1.15
enrSubnets - ssz BitVector 64 bits 471.00 ns/op 610.00 ns/op 0.77
enrSubnets - fastDeserialize 4 bits 202.00 ns/op 392.00 ns/op 0.52
enrSubnets - ssz BitVector 4 bits 414.00 ns/op 594.00 ns/op 0.70
prioritizePeers score -10:0 att 32-0.1 sync 2-0 181.75 us/op 130.25 us/op 1.40
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 178.12 us/op 154.85 us/op 1.15
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 330.81 us/op 378.14 us/op 0.87
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 573.27 us/op 487.11 us/op 1.18
prioritizePeers score 0:0 att 64-1 sync 4-1 822.40 us/op 859.30 us/op 0.96
array of 16000 items push then shift 1.7827 us/op 1.2611 us/op 1.41
LinkedList of 16000 items push then shift 8.1930 ns/op 7.6700 ns/op 1.07
array of 16000 items push then pop 142.22 ns/op 119.13 ns/op 1.19
LinkedList of 16000 items push then pop 7.9340 ns/op 7.2940 ns/op 1.09
array of 24000 items push then shift 2.5787 us/op 1.9672 us/op 1.31
LinkedList of 24000 items push then shift 8.3600 ns/op 10.311 ns/op 0.81
array of 24000 items push then pop 191.56 ns/op 174.38 ns/op 1.10
LinkedList of 24000 items push then pop 8.0450 ns/op 8.6510 ns/op 0.93
intersect bitArray bitLen 8 6.7550 ns/op 5.6820 ns/op 1.19
intersect array and set length 8 50.759 ns/op 39.225 ns/op 1.29
intersect bitArray bitLen 128 31.826 ns/op 27.168 ns/op 1.17
intersect array and set length 128 865.79 ns/op 597.97 ns/op 1.45
bitArray.getTrueBitIndexes() bitLen 128 2.2500 us/op 2.1430 us/op 1.05
bitArray.getTrueBitIndexes() bitLen 248 3.8360 us/op 3.9540 us/op 0.97
bitArray.getTrueBitIndexes() bitLen 512 9.3770 us/op 7.5960 us/op 1.23
Buffer.concat 32 items 1.1610 us/op 1.0470 us/op 1.11
Uint8Array.set 32 items 2.0490 us/op 2.0220 us/op 1.01
Buffer.copy 2.0150 us/op 1.9230 us/op 1.05
Uint8Array.set - with subarray 3.6690 us/op 2.3970 us/op 1.53
Uint8Array.set - without subarray 1.9090 us/op 1.9670 us/op 0.97
Set add up to 64 items then delete first 3.0441 us/op 1.7929 us/op 1.70
OrderedSet add up to 64 items then delete first 4.3339 us/op 3.5153 us/op 1.23
Set add up to 64 items then delete last 3.4069 us/op 2.6028 us/op 1.31
OrderedSet add up to 64 items then delete last 5.5098 us/op 4.1265 us/op 1.34
Set add up to 64 items then delete middle 3.8065 us/op 2.1697 us/op 1.75
OrderedSet add up to 64 items then delete middle 7.1120 us/op 4.5579 us/op 1.56
Set add up to 128 items then delete first 6.9244 us/op 3.8012 us/op 1.82
OrderedSet add up to 128 items then delete first 11.566 us/op 5.8772 us/op 1.97
Set add up to 128 items then delete last 7.1224 us/op 3.8227 us/op 1.86
OrderedSet add up to 128 items then delete last 11.613 us/op 7.2650 us/op 1.60
Set add up to 128 items then delete middle 7.1031 us/op 4.1985 us/op 1.69
OrderedSet add up to 128 items then delete middle 18.034 us/op 13.870 us/op 1.30
Set add up to 256 items then delete first 15.046 us/op 9.0318 us/op 1.67
OrderedSet add up to 256 items then delete first 27.434 us/op 12.140 us/op 2.26
Set add up to 256 items then delete last 15.274 us/op 7.9935 us/op 1.91
OrderedSet add up to 256 items then delete last 27.374 us/op 12.656 us/op 2.16
Set add up to 256 items then delete middle 14.196 us/op 7.9407 us/op 1.79
OrderedSet add up to 256 items then delete middle 52.608 us/op 38.267 us/op 1.37
transfer serialized Status (84 B) 1.4640 us/op 1.5650 us/op 0.94
copy serialized Status (84 B) 1.4400 us/op 1.3310 us/op 1.08
transfer serialized SignedVoluntaryExit (112 B) 1.5010 us/op 1.5950 us/op 0.94
copy serialized SignedVoluntaryExit (112 B) 1.3670 us/op 1.3700 us/op 1.00
transfer serialized ProposerSlashing (416 B) 1.8030 us/op 2.0040 us/op 0.90
copy serialized ProposerSlashing (416 B) 2.0590 us/op 2.0570 us/op 1.00
transfer serialized Attestation (485 B) 1.9130 us/op 2.0750 us/op 0.92
copy serialized Attestation (485 B) 2.1210 us/op 1.9190 us/op 1.11
transfer serialized AttesterSlashing (33232 B) 2.4490 us/op 1.7270 us/op 1.42
copy serialized AttesterSlashing (33232 B) 7.0240 us/op 6.7130 us/op 1.05
transfer serialized Small SignedBeaconBlock (128000 B) 3.0510 us/op 2.3310 us/op 1.31
copy serialized Small SignedBeaconBlock (128000 B) 24.798 us/op 20.562 us/op 1.21
transfer serialized Avg SignedBeaconBlock (200000 B) 2.5890 us/op 2.6700 us/op 0.97
copy serialized Avg SignedBeaconBlock (200000 B) 42.448 us/op 27.766 us/op 1.53
transfer serialized BlobsSidecar (524380 B) 4.2890 us/op 3.5620 us/op 1.20
copy serialized BlobsSidecar (524380 B) 94.353 us/op 80.890 us/op 1.17
transfer serialized Big SignedBeaconBlock (1000000 B) 4.2520 us/op 3.8920 us/op 1.09
copy serialized Big SignedBeaconBlock (1000000 B) 360.08 us/op 152.66 us/op 2.36
pass gossip attestations to forkchoice per slot 3.4757 ms/op 2.7295 ms/op 1.27
forkChoice updateHead vc 100000 bc 64 eq 0 582.02 us/op 414.36 us/op 1.40
forkChoice updateHead vc 600000 bc 64 eq 0 3.6022 ms/op 2.5271 ms/op 1.43
forkChoice updateHead vc 1000000 bc 64 eq 0 5.6334 ms/op 4.3049 ms/op 1.31
forkChoice updateHead vc 600000 bc 320 eq 0 3.2802 ms/op 2.8577 ms/op 1.15
forkChoice updateHead vc 600000 bc 1200 eq 0 3.4634 ms/op 2.8533 ms/op 1.21
forkChoice updateHead vc 600000 bc 7200 eq 0 4.2958 ms/op 3.3540 ms/op 1.28
forkChoice updateHead vc 600000 bc 64 eq 1000 11.510 ms/op 10.272 ms/op 1.12
forkChoice updateHead vc 600000 bc 64 eq 10000 11.614 ms/op 9.7890 ms/op 1.19
forkChoice updateHead vc 600000 bc 64 eq 300000 21.988 ms/op 16.815 ms/op 1.31
computeDeltas 500000 validators 300 proto nodes 4.1620 ms/op 3.1160 ms/op 1.34
computeDeltas 500000 validators 1200 proto nodes 4.1360 ms/op 3.1583 ms/op 1.31
computeDeltas 500000 validators 7200 proto nodes 4.1966 ms/op 3.2830 ms/op 1.28
computeDeltas 750000 validators 300 proto nodes 5.9529 ms/op 4.8585 ms/op 1.23
computeDeltas 750000 validators 1200 proto nodes 5.5748 ms/op 4.5282 ms/op 1.23
computeDeltas 750000 validators 7200 proto nodes 5.9827 ms/op 4.6650 ms/op 1.28
computeDeltas 1400000 validators 300 proto nodes 10.776 ms/op 8.6684 ms/op 1.24
computeDeltas 1400000 validators 1200 proto nodes 10.808 ms/op 8.9272 ms/op 1.21
computeDeltas 1400000 validators 7200 proto nodes 10.798 ms/op 9.0095 ms/op 1.20
computeDeltas 2100000 validators 300 proto nodes 17.890 ms/op 12.992 ms/op 1.38
computeDeltas 2100000 validators 1200 proto nodes 18.592 ms/op 13.033 ms/op 1.43
computeDeltas 2100000 validators 7200 proto nodes 22.177 ms/op 13.231 ms/op 1.68
altair processAttestation - 250000 vs - 7PWei normalcase 2.6285 ms/op 1.4902 ms/op 1.76
altair processAttestation - 250000 vs - 7PWei worstcase 4.4082 ms/op 3.0329 ms/op 1.45
altair processAttestation - setStatus - 1/6 committees join 185.98 us/op 101.94 us/op 1.82
altair processAttestation - setStatus - 1/3 committees join 307.70 us/op 187.10 us/op 1.64
altair processAttestation - setStatus - 1/2 committees join 373.82 us/op 274.85 us/op 1.36
altair processAttestation - setStatus - 2/3 committees join 448.98 us/op 352.09 us/op 1.28
altair processAttestation - setStatus - 4/5 committees join 567.49 us/op 483.46 us/op 1.17
altair processAttestation - setStatus - 100% committees join 787.86 us/op 602.71 us/op 1.31
altair processBlock - 250000 vs - 7PWei normalcase 5.8375 ms/op 4.4703 ms/op 1.31
altair processBlock - 250000 vs - 7PWei normalcase hashState 29.258 ms/op 26.201 ms/op 1.12
altair processBlock - 250000 vs - 7PWei worstcase 43.040 ms/op 40.399 ms/op 1.07
altair processBlock - 250000 vs - 7PWei worstcase hashState 80.882 ms/op 90.496 ms/op 0.89
phase0 processBlock - 250000 vs - 7PWei normalcase 2.1659 ms/op 2.3496 ms/op 0.92
phase0 processBlock - 250000 vs - 7PWei worstcase 28.950 ms/op 27.678 ms/op 1.05
altair processEth1Data - 250000 vs - 7PWei normalcase 416.17 us/op 393.20 us/op 1.06
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 8.4030 us/op 5.8040 us/op 1.45
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 30.341 us/op 21.898 us/op 1.39
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 11.944 us/op 7.7660 us/op 1.54
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 8.1650 us/op 5.8330 us/op 1.40
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 109.25 us/op 86.936 us/op 1.26
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 708.65 us/op 784.90 us/op 0.90
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 961.52 us/op 625.57 us/op 1.54
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 921.71 us/op 1.0621 ms/op 0.87
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.7053 ms/op 1.9918 ms/op 1.86
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.8343 ms/op 1.1960 ms/op 1.53
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 4.9861 ms/op 3.0949 ms/op 1.61
Tree 40 250000 create 330.83 ms/op 199.96 ms/op 1.65
Tree 40 250000 get(125000) 177.67 ns/op 113.15 ns/op 1.57
Tree 40 250000 set(125000) 1.1770 us/op 597.53 ns/op 1.97
Tree 40 250000 toArray() 25.606 ms/op 15.011 ms/op 1.71
Tree 40 250000 iterate all - toArray() + loop 25.305 ms/op 10.583 ms/op 2.39
Tree 40 250000 iterate all - get(i) 61.500 ms/op 44.477 ms/op 1.38
MutableVector 250000 create 10.583 ms/op 10.881 ms/op 0.97
MutableVector 250000 get(125000) 6.4980 ns/op 5.7450 ns/op 1.13
MutableVector 250000 set(125000) 282.67 ns/op 187.91 ns/op 1.50
MutableVector 250000 toArray() 4.9477 ms/op 3.7887 ms/op 1.31
MutableVector 250000 iterate all - toArray() + loop 4.7301 ms/op 3.5573 ms/op 1.33
MutableVector 250000 iterate all - get(i) 1.9165 ms/op 1.3876 ms/op 1.38
Array 250000 create 5.0962 ms/op 3.1705 ms/op 1.61
Array 250000 clone - spread 2.5093 ms/op 1.3699 ms/op 1.83
Array 250000 get(125000) 0.48000 ns/op 0.56300 ns/op 0.85
Array 250000 set(125000) 0.48700 ns/op 0.58000 ns/op 0.84
Array 250000 iterate all - loop 112.63 us/op 76.162 us/op 1.48
effectiveBalanceIncrements clone Uint8Array 300000 63.271 us/op 27.819 us/op 2.27
effectiveBalanceIncrements clone MutableVector 300000 140.00 ns/op 298.00 ns/op 0.47
effectiveBalanceIncrements rw all Uint8Array 300000 208.01 us/op 160.61 us/op 1.30
effectiveBalanceIncrements rw all MutableVector 300000 103.88 ms/op 58.136 ms/op 1.79
phase0 afterProcessEpoch - 250000 vs - 7PWei 100.71 ms/op 72.907 ms/op 1.38
phase0 beforeProcessEpoch - 250000 vs - 7PWei 48.825 ms/op 47.600 ms/op 1.03
altair processEpoch - mainnet_e81889 400.86 ms/op 326.91 ms/op 1.23
mainnet_e81889 - altair beforeProcessEpoch 74.352 ms/op 60.616 ms/op 1.23
mainnet_e81889 - altair processJustificationAndFinalization 21.482 us/op 15.392 us/op 1.40
mainnet_e81889 - altair processInactivityUpdates 9.3073 ms/op 4.7544 ms/op 1.96
mainnet_e81889 - altair processRewardsAndPenalties 49.550 ms/op 47.817 ms/op 1.04
mainnet_e81889 - altair processRegistryUpdates 4.0300 us/op 2.7700 us/op 1.45
mainnet_e81889 - altair processSlashings 581.00 ns/op 775.00 ns/op 0.75
mainnet_e81889 - altair processEth1DataReset 400.00 ns/op 751.00 ns/op 0.53
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.3928 ms/op 2.0632 ms/op 0.68
mainnet_e81889 - altair processSlashingsReset 3.9000 us/op 2.6900 us/op 1.45
mainnet_e81889 - altair processRandaoMixesReset 6.5460 us/op 3.5690 us/op 1.83
mainnet_e81889 - altair processHistoricalRootsUpdate 479.00 ns/op 900.00 ns/op 0.53
mainnet_e81889 - altair processParticipationFlagUpdates 2.1930 us/op 3.0500 us/op 0.72
mainnet_e81889 - altair processSyncCommitteeUpdates 441.00 ns/op 951.00 ns/op 0.46
mainnet_e81889 - altair afterProcessEpoch 93.956 ms/op 82.632 ms/op 1.14
capella processEpoch - mainnet_e217614 1.2813 s/op 1.2488 s/op 1.03
mainnet_e217614 - capella beforeProcessEpoch 256.08 ms/op 248.27 ms/op 1.03
mainnet_e217614 - capella processJustificationAndFinalization 13.389 us/op 16.316 us/op 0.82
mainnet_e217614 - capella processInactivityUpdates 18.019 ms/op 18.443 ms/op 0.98
mainnet_e217614 - capella processRewardsAndPenalties 235.85 ms/op 247.65 ms/op 0.95
mainnet_e217614 - capella processRegistryUpdates 14.971 us/op 14.351 us/op 1.04
mainnet_e217614 - capella processSlashings 543.00 ns/op 798.00 ns/op 0.68
mainnet_e217614 - capella processEth1DataReset 487.00 ns/op 894.00 ns/op 0.54
mainnet_e217614 - capella processEffectiveBalanceUpdates 11.448 ms/op 4.3211 ms/op 2.65
mainnet_e217614 - capella processSlashingsReset 3.8620 us/op 8.1940 us/op 0.47
mainnet_e217614 - capella processRandaoMixesReset 14.532 us/op 7.9030 us/op 1.84
mainnet_e217614 - capella processHistoricalRootsUpdate 1.4060 us/op 1.2450 us/op 1.13
mainnet_e217614 - capella processParticipationFlagUpdates 3.6770 us/op 2.6870 us/op 1.37
mainnet_e217614 - capella afterProcessEpoch 334.53 ms/op 216.65 ms/op 1.54
phase0 processEpoch - mainnet_e58758 493.82 ms/op 347.84 ms/op 1.42
mainnet_e58758 - phase0 beforeProcessEpoch 125.65 ms/op 99.582 ms/op 1.26
mainnet_e58758 - phase0 processJustificationAndFinalization 29.054 us/op 13.753 us/op 2.11
mainnet_e58758 - phase0 processRewardsAndPenalties 50.335 ms/op 31.336 ms/op 1.61
mainnet_e58758 - phase0 processRegistryUpdates 15.337 us/op 7.7700 us/op 1.97
mainnet_e58758 - phase0 processSlashings 687.00 ns/op 880.00 ns/op 0.78
mainnet_e58758 - phase0 processEth1DataReset 776.00 ns/op 881.00 ns/op 0.88
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.3600 ms/op 1.1191 ms/op 1.22
mainnet_e58758 - phase0 processSlashingsReset 6.3340 us/op 2.4370 us/op 2.60
mainnet_e58758 - phase0 processRandaoMixesReset 7.4750 us/op 3.7040 us/op 2.02
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.3250 us/op 1.2150 us/op 1.09
mainnet_e58758 - phase0 processParticipationRecordUpdates 6.4600 us/op 5.3740 us/op 1.20
mainnet_e58758 - phase0 afterProcessEpoch 101.17 ms/op 69.226 ms/op 1.46
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.8048 ms/op 797.54 us/op 2.26
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.0921 ms/op 1.3520 ms/op 1.55
altair processInactivityUpdates - 250000 normalcase 25.491 ms/op 20.038 ms/op 1.27
altair processInactivityUpdates - 250000 worstcase 25.626 ms/op 19.397 ms/op 1.32
phase0 processRegistryUpdates - 250000 normalcase 11.384 us/op 7.9990 us/op 1.42
phase0 processRegistryUpdates - 250000 badcase_full_deposits 372.90 us/op 296.91 us/op 1.26
phase0 processRegistryUpdates - 250000 worstcase 0.5 175.13 ms/op 118.92 ms/op 1.47
altair processRewardsAndPenalties - 250000 normalcase 49.029 ms/op 44.373 ms/op 1.10
altair processRewardsAndPenalties - 250000 worstcase 63.583 ms/op 36.372 ms/op 1.75
phase0 getAttestationDeltas - 250000 normalcase 11.341 ms/op 5.5580 ms/op 2.04
phase0 getAttestationDeltas - 250000 worstcase 12.222 ms/op 5.8152 ms/op 2.10
phase0 processSlashings - 250000 worstcase 119.89 us/op 95.629 us/op 1.25
altair processSyncCommitteeUpdates - 250000 149.58 ms/op 101.18 ms/op 1.48
BeaconState.hashTreeRoot - No change 431.00 ns/op 463.00 ns/op 0.93
BeaconState.hashTreeRoot - 1 full validator 175.91 us/op 72.518 us/op 2.43
BeaconState.hashTreeRoot - 32 full validator 1.4360 ms/op 788.61 us/op 1.82
BeaconState.hashTreeRoot - 512 full validator 14.940 ms/op 11.108 ms/op 1.34
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 149.65 us/op 117.39 us/op 1.27
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.2748 ms/op 1.7823 ms/op 1.28
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 26.861 ms/op 27.865 ms/op 0.96
BeaconState.hashTreeRoot - 1 balances 112.72 us/op 68.055 us/op 1.66
BeaconState.hashTreeRoot - 32 balances 1.1866 ms/op 757.75 us/op 1.57
BeaconState.hashTreeRoot - 512 balances 10.956 ms/op 8.1983 ms/op 1.34
BeaconState.hashTreeRoot - 250000 balances 216.24 ms/op 186.90 ms/op 1.16
aggregationBits - 2048 els - zipIndexesInBitList 39.894 us/op 22.051 us/op 1.81
byteArrayEquals 32 57.883 ns/op 48.457 ns/op 1.19
Buffer.compare 32 18.778 ns/op 15.590 ns/op 1.20
byteArrayEquals 1024 1.7322 us/op 1.2760 us/op 1.36
Buffer.compare 1024 28.211 ns/op 23.057 ns/op 1.22
byteArrayEquals 16384 26.836 us/op 20.114 us/op 1.33
Buffer.compare 16384 223.60 ns/op 179.31 ns/op 1.25
byteArrayEquals 123687377 206.59 ms/op 152.62 ms/op 1.35
Buffer.compare 123687377 10.837 ms/op 4.7024 ms/op 2.30
byteArrayEquals 32 - diff last byte 55.687 ns/op 47.465 ns/op 1.17
Buffer.compare 32 - diff last byte 21.308 ns/op 16.269 ns/op 1.31
byteArrayEquals 1024 - diff last byte 1.7397 us/op 1.2599 us/op 1.38
Buffer.compare 1024 - diff last byte 29.604 ns/op 24.427 ns/op 1.21
byteArrayEquals 16384 - diff last byte 28.419 us/op 20.109 us/op 1.41
Buffer.compare 16384 - diff last byte 216.14 ns/op 175.00 ns/op 1.24
byteArrayEquals 123687377 - diff last byte 214.63 ms/op 155.50 ms/op 1.38
Buffer.compare 123687377 - diff last byte 9.2366 ms/op 4.7768 ms/op 1.93
byteArrayEquals 32 - random bytes 5.6190 ns/op 4.9630 ns/op 1.13
Buffer.compare 32 - random bytes 18.786 ns/op 15.830 ns/op 1.19
byteArrayEquals 1024 - random bytes 5.4750 ns/op 4.9660 ns/op 1.10
Buffer.compare 1024 - random bytes 18.413 ns/op 15.910 ns/op 1.16
byteArrayEquals 16384 - random bytes 5.5140 ns/op 4.9990 ns/op 1.10
Buffer.compare 16384 - random bytes 18.083 ns/op 15.862 ns/op 1.14
byteArrayEquals 123687377 - random bytes 6.6600 ns/op 8.0000 ns/op 0.83
Buffer.compare 123687377 - random bytes 19.850 ns/op 19.060 ns/op 1.04
regular array get 100000 times 41.094 us/op 31.197 us/op 1.32
wrappedArray get 100000 times 38.676 us/op 31.146 us/op 1.24
arrayWithProxy get 100000 times 13.190 ms/op 9.7112 ms/op 1.36
ssz.Root.equals 48.859 ns/op 44.153 ns/op 1.11
byteArrayEquals 49.412 ns/op 43.177 ns/op 1.14
Buffer.compare 10.937 ns/op 9.1970 ns/op 1.19
shuffle list - 16384 els 6.6160 ms/op 5.7497 ms/op 1.15
shuffle list - 250000 els 96.738 ms/op 83.480 ms/op 1.16
processSlot - 1 slots 14.220 us/op 9.6890 us/op 1.47
processSlot - 32 slots 3.4223 ms/op 1.8621 ms/op 1.84
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 37.932 ms/op 39.255 ms/op 0.97
getCommitteeAssignments - req 1 vs - 250000 vc 2.2514 ms/op 1.7610 ms/op 1.28
getCommitteeAssignments - req 100 vs - 250000 vc 4.3298 ms/op 3.4273 ms/op 1.26
getCommitteeAssignments - req 1000 vs - 250000 vc 4.6189 ms/op 3.8374 ms/op 1.20
findModifiedValidators - 10000 modified validators 257.75 ms/op 242.44 ms/op 1.06
findModifiedValidators - 1000 modified validators 233.41 ms/op 184.57 ms/op 1.26
findModifiedValidators - 100 modified validators 206.33 ms/op 146.19 ms/op 1.41
findModifiedValidators - 10 modified validators 222.23 ms/op 142.93 ms/op 1.55
findModifiedValidators - 1 modified validators 185.00 ms/op 180.07 ms/op 1.03
findModifiedValidators - no difference 191.21 ms/op 135.66 ms/op 1.41
compare ViewDUs 3.6065 s/op 3.2527 s/op 1.11
compare each validator Uint8Array 1.5617 s/op 1.4118 s/op 1.11
compare ViewDU to Uint8Array 1.3843 s/op 785.34 ms/op 1.76
migrate state 1000000 validators, 24 modified, 0 new 793.35 ms/op 565.17 ms/op 1.40
migrate state 1000000 validators, 1700 modified, 1000 new 1.0874 s/op 761.83 ms/op 1.43
migrate state 1000000 validators, 3400 modified, 2000 new 1.2609 s/op 1.1310 s/op 1.11
migrate state 1500000 validators, 24 modified, 0 new 722.90 ms/op 582.13 ms/op 1.24
migrate state 1500000 validators, 1700 modified, 1000 new 926.11 ms/op 774.72 ms/op 1.20
migrate state 1500000 validators, 3400 modified, 2000 new 1.1829 s/op 893.68 ms/op 1.32
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.8100 ns/op 6.1100 ns/op 0.79
state getBlockRootAtSlot - 250000 vs - 7PWei 681.49 ns/op 872.53 ns/op 0.78
computeProposers - vc 250000 8.9255 ms/op 5.5389 ms/op 1.61
computeEpochShuffling - vc 250000 95.345 ms/op 81.252 ms/op 1.17
getNextSyncCommittee - vc 250000 134.33 ms/op 93.144 ms/op 1.44
computeSigningRoot for AttestationData 21.571 us/op 19.558 us/op 1.10
hash AttestationData serialized data then Buffer.toString(base64) 1.6332 us/op 1.2264 us/op 1.33
toHexString serialized data 958.15 ns/op 777.08 ns/op 1.23
Buffer.toString(base64) 214.85 ns/op 143.32 ns/op 1.50

by benchmarkbot/action

@wemeetagain
Copy link
Member

🎉 This PR is included in v1.20.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