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: update ssz for optional type availability #5948

Merged
merged 1 commit into from
Sep 11, 2023
Merged

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Sep 10, 2023

update ssz for availability of optional type for the verge branch

@g11tech g11tech requested a review from a team as a code owner September 10, 2023 11:15
@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: e97e4d9 Previous: d51ee94 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 584.65 us/op 989.95 us/op 0.59
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 50.964 us/op 99.049 us/op 0.51
BLS verify - blst-native 1.1113 ms/op 1.3403 ms/op 0.83
BLS verifyMultipleSignatures 3 - blst-native 2.3023 ms/op 2.8101 ms/op 0.82
BLS verifyMultipleSignatures 8 - blst-native 5.1793 ms/op 6.3816 ms/op 0.81
BLS verifyMultipleSignatures 32 - blst-native 18.744 ms/op 22.790 ms/op 0.82
BLS verifyMultipleSignatures 64 - blst-native 37.750 ms/op 44.655 ms/op 0.85
BLS verifyMultipleSignatures 128 - blst-native 75.052 ms/op 90.877 ms/op 0.83
BLS deserializing 10000 signatures 781.65 ms/op 915.27 ms/op 0.85
BLS deserializing 100000 signatures 7.7439 s/op 9.0618 s/op 0.85
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.1146 ms/op 1.3601 ms/op 0.82
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.2575 ms/op 1.5152 ms/op 0.83
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.1374 ms/op 2.3320 ms/op 0.92
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.2283 ms/op 3.8011 ms/op 0.85
BLS verifyMultipleSignatures - same message - 128 - blst-native 4.9449 ms/op 6.4160 ms/op 0.77
BLS aggregatePubkeys 32 - blst-native 22.426 us/op 26.075 us/op 0.86
BLS aggregatePubkeys 128 - blst-native 87.964 us/op 99.855 us/op 0.88
getAttestationsForBlock 25.485 ms/op 34.173 ms/op 0.75
isKnown best case - 1 super set check 321.00 ns/op 267.00 ns/op 1.20
isKnown normal case - 2 super set checks 309.00 ns/op 267.00 ns/op 1.16
isKnown worse case - 16 super set checks 383.00 ns/op 268.00 ns/op 1.43
CheckpointStateCache - add get delete 3.4930 us/op 4.9110 us/op 0.71
validate api signedAggregateAndProof - struct 2.3267 ms/op 2.6347 ms/op 0.88
validate gossip signedAggregateAndProof - struct 2.3569 ms/op 2.6576 ms/op 0.89
validate gossip attestation - vc 640000 1.1325 ms/op 1.2981 ms/op 0.87
batch validate gossip attestation - vc 640000 - chunk 32 132.27 us/op 143.89 us/op 0.92
batch validate gossip attestation - vc 640000 - chunk 64 121.96 us/op 123.25 us/op 0.99
batch validate gossip attestation - vc 640000 - chunk 128 112.12 us/op 114.00 us/op 0.98
batch validate gossip attestation - vc 640000 - chunk 256 109.74 us/op 112.97 us/op 0.97
pickEth1Vote - no votes 813.61 us/op 1.1343 ms/op 0.72
pickEth1Vote - max votes 9.0758 ms/op 9.9728 ms/op 0.91
pickEth1Vote - Eth1Data hashTreeRoot value x2048 16.710 ms/op 8.7616 ms/op 1.91
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 24.967 ms/op 15.427 ms/op 1.62
pickEth1Vote - Eth1Data fastSerialize value x2048 413.31 us/op 581.54 us/op 0.71
pickEth1Vote - Eth1Data fastSerialize tree x2048 6.5717 ms/op 4.1979 ms/op 1.57
bytes32 toHexString 418.00 ns/op 465.00 ns/op 0.90
bytes32 Buffer.toString(hex) 299.00 ns/op 283.00 ns/op 1.06
bytes32 Buffer.toString(hex) from Uint8Array 398.00 ns/op 437.00 ns/op 0.91
bytes32 Buffer.toString(hex) + 0x 301.00 ns/op 288.00 ns/op 1.05
Object access 1 prop 0.18300 ns/op 0.15900 ns/op 1.15
Map access 1 prop 0.18400 ns/op 0.14000 ns/op 1.31
Object get x1000 5.5110 ns/op 7.5740 ns/op 0.73
Map get x1000 0.50100 ns/op 0.59000 ns/op 0.85
Object set x1000 24.124 ns/op 48.165 ns/op 0.50
Map set x1000 16.238 ns/op 38.493 ns/op 0.42
Return object 10000 times 0.22360 ns/op 0.24170 ns/op 0.93
Throw Error 10000 times 2.7069 us/op 3.8557 us/op 0.70
fastMsgIdFn sha256 / 200 bytes 1.9150 us/op 3.3080 us/op 0.58
fastMsgIdFn h32 xxhash / 200 bytes 288.00 ns/op 304.00 ns/op 0.95
fastMsgIdFn h64 xxhash / 200 bytes 344.00 ns/op 348.00 ns/op 0.99
fastMsgIdFn sha256 / 1000 bytes 6.1800 us/op 11.366 us/op 0.54
fastMsgIdFn h32 xxhash / 1000 bytes 416.00 ns/op 454.00 ns/op 0.92
fastMsgIdFn h64 xxhash / 1000 bytes 403.00 ns/op 426.00 ns/op 0.95
fastMsgIdFn sha256 / 10000 bytes 52.642 us/op 101.89 us/op 0.52
fastMsgIdFn h32 xxhash / 10000 bytes 1.7520 us/op 1.9550 us/op 0.90
fastMsgIdFn h64 xxhash / 10000 bytes 1.2070 us/op 1.3040 us/op 0.93
enrSubnets - fastDeserialize 64 bits 894.00 ns/op 1.1840 us/op 0.76
enrSubnets - ssz BitVector 64 bits 408.00 ns/op 412.00 ns/op 0.99
enrSubnets - fastDeserialize 4 bits 189.00 ns/op 157.00 ns/op 1.20
enrSubnets - ssz BitVector 4 bits 401.00 ns/op 410.00 ns/op 0.98
prioritizePeers score -10:0 att 32-0.1 sync 2-0 66.601 us/op 99.464 us/op 0.67
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 79.102 us/op 127.62 us/op 0.62
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 107.07 us/op 157.16 us/op 0.68
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 179.71 us/op 282.59 us/op 0.64
prioritizePeers score 0:0 att 64-1 sync 4-1 199.76 us/op 327.68 us/op 0.61
array of 16000 items push then shift 1.2800 us/op 1.6375 us/op 0.78
LinkedList of 16000 items push then shift 5.8620 ns/op 8.9530 ns/op 0.65
array of 16000 items push then pop 65.227 ns/op 89.209 ns/op 0.73
LinkedList of 16000 items push then pop 5.6500 ns/op 8.9150 ns/op 0.63
array of 24000 items push then shift 1.8833 us/op 2.4434 us/op 0.77
LinkedList of 24000 items push then shift 5.7830 ns/op 9.0880 ns/op 0.64
array of 24000 items push then pop 68.443 ns/op 108.72 ns/op 0.63
LinkedList of 24000 items push then pop 5.7190 ns/op 8.6450 ns/op 0.66
intersect bitArray bitLen 8 5.2930 ns/op 6.8270 ns/op 0.78
intersect array and set length 8 40.721 ns/op 55.384 ns/op 0.74
intersect bitArray bitLen 128 25.479 ns/op 31.934 ns/op 0.80
intersect array and set length 128 583.89 ns/op 760.04 ns/op 0.77
bitArray.getTrueBitIndexes() bitLen 128 1.1140 us/op 1.5290 us/op 0.73
bitArray.getTrueBitIndexes() bitLen 248 1.7860 us/op 2.4960 us/op 0.72
bitArray.getTrueBitIndexes() bitLen 512 3.3130 us/op 5.0720 us/op 0.65
Buffer.concat 32 items 829.00 ns/op 983.00 ns/op 0.84
Uint8Array.set 32 items 1.7970 us/op 1.8830 us/op 0.95
Set add up to 64 items then delete first 1.7099 us/op 4.6642 us/op 0.37
OrderedSet add up to 64 items then delete first 2.5949 us/op 5.5821 us/op 0.46
Set add up to 64 items then delete last 1.9402 us/op 5.0399 us/op 0.38
OrderedSet add up to 64 items then delete last 3.2446 us/op 5.9604 us/op 0.54
Set add up to 64 items then delete middle 1.9212 us/op 4.6665 us/op 0.41
OrderedSet add up to 64 items then delete middle 4.1262 us/op 7.3428 us/op 0.56
Set add up to 128 items then delete first 3.7612 us/op 9.8546 us/op 0.38
OrderedSet add up to 128 items then delete first 5.7037 us/op 12.584 us/op 0.45
Set add up to 128 items then delete last 3.5128 us/op 9.5131 us/op 0.37
OrderedSet add up to 128 items then delete last 5.2670 us/op 11.881 us/op 0.44
Set add up to 128 items then delete middle 3.4448 us/op 9.6559 us/op 0.36
OrderedSet add up to 128 items then delete middle 10.177 us/op 17.798 us/op 0.57
Set add up to 256 items then delete first 7.0150 us/op 19.654 us/op 0.36
OrderedSet add up to 256 items then delete first 11.574 us/op 25.480 us/op 0.45
Set add up to 256 items then delete last 6.9806 us/op 19.445 us/op 0.36
OrderedSet add up to 256 items then delete last 10.892 us/op 24.046 us/op 0.45
Set add up to 256 items then delete middle 6.9213 us/op 19.186 us/op 0.36
OrderedSet add up to 256 items then delete middle 29.219 us/op 45.806 us/op 0.64
transfer serialized Status (84 B) 1.3520 us/op 1.9010 us/op 0.71
copy serialized Status (84 B) 1.2610 us/op 1.6600 us/op 0.76
transfer serialized SignedVoluntaryExit (112 B) 1.4370 us/op 2.1250 us/op 0.68
copy serialized SignedVoluntaryExit (112 B) 1.3840 us/op 1.7570 us/op 0.79
transfer serialized ProposerSlashing (416 B) 2.1020 us/op 3.0670 us/op 0.69
copy serialized ProposerSlashing (416 B) 2.2510 us/op 2.6860 us/op 0.84
transfer serialized Attestation (485 B) 2.1120 us/op 2.5640 us/op 0.82
copy serialized Attestation (485 B) 2.2050 us/op 2.1370 us/op 1.03
transfer serialized AttesterSlashing (33232 B) 2.2870 us/op 2.2940 us/op 1.00
copy serialized AttesterSlashing (33232 B) 5.3040 us/op 6.1610 us/op 0.86
transfer serialized Small SignedBeaconBlock (128000 B) 2.2250 us/op 2.8870 us/op 0.77
copy serialized Small SignedBeaconBlock (128000 B) 11.970 us/op 13.625 us/op 0.88
transfer serialized Avg SignedBeaconBlock (200000 B) 2.2060 us/op 3.1480 us/op 0.70
copy serialized Avg SignedBeaconBlock (200000 B) 11.838 us/op 20.419 us/op 0.58
transfer serialized BlobsSidecar (524380 B) 2.4720 us/op 3.1730 us/op 0.78
copy serialized BlobsSidecar (524380 B) 125.08 us/op 79.050 us/op 1.58
transfer serialized Big SignedBeaconBlock (1000000 B) 2.4450 us/op 3.0230 us/op 0.81
copy serialized Big SignedBeaconBlock (1000000 B) 130.06 us/op 161.25 us/op 0.81
pass gossip attestations to forkchoice per slot 2.5918 ms/op 3.6629 ms/op 0.71
forkChoice updateHead vc 100000 bc 64 eq 0 483.02 us/op 667.39 us/op 0.72
forkChoice updateHead vc 600000 bc 64 eq 0 2.6649 ms/op 4.2037 ms/op 0.63
forkChoice updateHead vc 1000000 bc 64 eq 0 4.4765 ms/op 7.2906 ms/op 0.61
forkChoice updateHead vc 600000 bc 320 eq 0 2.7812 ms/op 4.1531 ms/op 0.67
forkChoice updateHead vc 600000 bc 1200 eq 0 2.8322 ms/op 4.2444 ms/op 0.67
forkChoice updateHead vc 600000 bc 7200 eq 0 3.8384 ms/op 5.2219 ms/op 0.74
forkChoice updateHead vc 600000 bc 64 eq 1000 9.8080 ms/op 11.416 ms/op 0.86
forkChoice updateHead vc 600000 bc 64 eq 10000 9.7310 ms/op 12.104 ms/op 0.80
forkChoice updateHead vc 600000 bc 64 eq 300000 12.790 ms/op 16.095 ms/op 0.79
computeDeltas 500000 validators 300 proto nodes 2.9264 ms/op 6.2620 ms/op 0.47
computeDeltas 500000 validators 1200 proto nodes 2.9321 ms/op 6.1801 ms/op 0.47
computeDeltas 500000 validators 7200 proto nodes 2.9243 ms/op 6.1750 ms/op 0.47
computeDeltas 750000 validators 300 proto nodes 4.5042 ms/op 9.2956 ms/op 0.48
computeDeltas 750000 validators 1200 proto nodes 4.4832 ms/op 9.3243 ms/op 0.48
computeDeltas 750000 validators 7200 proto nodes 4.5007 ms/op 9.3666 ms/op 0.48
computeDeltas 1400000 validators 300 proto nodes 8.5178 ms/op 17.714 ms/op 0.48
computeDeltas 1400000 validators 1200 proto nodes 8.6592 ms/op 17.848 ms/op 0.49
computeDeltas 1400000 validators 7200 proto nodes 8.7324 ms/op 18.440 ms/op 0.47
computeDeltas 2100000 validators 300 proto nodes 13.041 ms/op 26.702 ms/op 0.49
computeDeltas 2100000 validators 1200 proto nodes 12.648 ms/op 26.983 ms/op 0.47
computeDeltas 2100000 validators 7200 proto nodes 12.887 ms/op 27.433 ms/op 0.47
computeProposerBoostScoreFromBalances 500000 validators 2.7641 ms/op 3.4012 ms/op 0.81
computeProposerBoostScoreFromBalances 750000 validators 2.7837 ms/op 3.3007 ms/op 0.84
computeProposerBoostScoreFromBalances 1400000 validators 2.7496 ms/op 3.2428 ms/op 0.85
computeProposerBoostScoreFromBalances 2100000 validators 2.7497 ms/op 3.2122 ms/op 0.86
altair processAttestation - 250000 vs - 7PWei normalcase 1.5666 ms/op 2.3164 ms/op 0.68
altair processAttestation - 250000 vs - 7PWei worstcase 2.2325 ms/op 3.2420 ms/op 0.69
altair processAttestation - setStatus - 1/6 committees join 101.36 us/op 181.53 us/op 0.56
altair processAttestation - setStatus - 1/3 committees join 194.38 us/op 347.12 us/op 0.56
altair processAttestation - setStatus - 1/2 committees join 273.32 us/op 465.05 us/op 0.59
altair processAttestation - setStatus - 2/3 committees join 363.41 us/op 592.72 us/op 0.61
altair processAttestation - setStatus - 4/5 committees join 487.67 us/op 794.05 us/op 0.61
altair processAttestation - setStatus - 100% committees join 576.56 us/op 955.21 us/op 0.60
altair processBlock - 250000 vs - 7PWei normalcase 5.2526 ms/op 9.1252 ms/op 0.58
altair processBlock - 250000 vs - 7PWei normalcase hashState 23.504 ms/op 17.396 ms/op 1.35
altair processBlock - 250000 vs - 7PWei worstcase 30.381 ms/op 39.131 ms/op 0.78
altair processBlock - 250000 vs - 7PWei worstcase hashState 60.434 ms/op 59.609 ms/op 1.01
phase0 processBlock - 250000 vs - 7PWei normalcase 1.7584 ms/op 2.8829 ms/op 0.61
phase0 processBlock - 250000 vs - 7PWei worstcase 24.667 ms/op 29.315 ms/op 0.84
altair processEth1Data - 250000 vs - 7PWei normalcase 282.62 us/op 610.90 us/op 0.46
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 8.7230 us/op 10.173 us/op 0.86
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 74.332 us/op 71.276 us/op 1.04
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 21.896 us/op 19.316 us/op 1.13
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 15.620 us/op 14.557 us/op 1.07
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 120.43 us/op 154.14 us/op 0.78
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 992.61 us/op 1.3824 ms/op 0.72
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.6513 ms/op 1.6765 ms/op 0.98
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.4351 ms/op 1.7787 ms/op 0.81
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.5812 ms/op 3.3238 ms/op 0.78
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.4782 ms/op 2.3987 ms/op 0.62
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.7318 ms/op 4.4988 ms/op 0.83
Tree 40 250000 create 219.91 ms/op 316.14 ms/op 0.70
Tree 40 250000 get(125000) 110.19 ns/op 198.44 ns/op 0.56
Tree 40 250000 set(125000) 697.97 ns/op 922.57 ns/op 0.76
Tree 40 250000 toArray() 17.171 ms/op 18.733 ms/op 0.92
Tree 40 250000 iterate all - toArray() + loop 17.558 ms/op 18.764 ms/op 0.94
Tree 40 250000 iterate all - get(i) 45.745 ms/op 67.587 ms/op 0.68
MutableVector 250000 create 9.8663 ms/op 9.6366 ms/op 1.02
MutableVector 250000 get(125000) 5.5890 ns/op 6.4840 ns/op 0.86
MutableVector 250000 set(125000) 183.41 ns/op 260.76 ns/op 0.70
MutableVector 250000 toArray() 2.5047 ms/op 3.2982 ms/op 0.76
MutableVector 250000 iterate all - toArray() + loop 2.4419 ms/op 3.3726 ms/op 0.72
MutableVector 250000 iterate all - get(i) 1.3082 ms/op 1.5069 ms/op 0.87
Array 250000 create 2.3186 ms/op 3.0693 ms/op 0.76
Array 250000 clone - spread 922.24 us/op 1.3167 ms/op 0.70
Array 250000 get(125000) 0.54500 ns/op 0.61700 ns/op 0.88
Array 250000 set(125000) 0.61300 ns/op 0.70600 ns/op 0.87
Array 250000 iterate all - loop 74.817 us/op 83.088 us/op 0.90
effectiveBalanceIncrements clone Uint8Array 300000 19.220 us/op 31.857 us/op 0.60
effectiveBalanceIncrements clone MutableVector 300000 344.00 ns/op 393.00 ns/op 0.88
effectiveBalanceIncrements rw all Uint8Array 300000 164.44 us/op 182.41 us/op 0.90
effectiveBalanceIncrements rw all MutableVector 300000 63.203 ms/op 85.195 ms/op 0.74
phase0 afterProcessEpoch - 250000 vs - 7PWei 73.390 ms/op 119.98 ms/op 0.61
phase0 beforeProcessEpoch - 250000 vs - 7PWei 27.238 ms/op 33.629 ms/op 0.81
altair processEpoch - mainnet_e81889 363.00 ms/op 325.35 ms/op 1.12
mainnet_e81889 - altair beforeProcessEpoch 51.620 ms/op 63.630 ms/op 0.81
mainnet_e81889 - altair processJustificationAndFinalization 9.9980 us/op 16.659 us/op 0.60
mainnet_e81889 - altair processInactivityUpdates 7.1374 ms/op 7.2124 ms/op 0.99
mainnet_e81889 - altair processRewardsAndPenalties 55.266 ms/op 63.494 ms/op 0.87
mainnet_e81889 - altair processRegistryUpdates 1.8350 us/op 2.5010 us/op 0.73
mainnet_e81889 - altair processSlashings 547.00 ns/op 407.00 ns/op 1.34
mainnet_e81889 - altair processEth1DataReset 598.00 ns/op 770.00 ns/op 0.78
mainnet_e81889 - altair processEffectiveBalanceUpdates 877.63 us/op 1.2815 ms/op 0.68
mainnet_e81889 - altair processSlashingsReset 2.3040 us/op 5.1190 us/op 0.45
mainnet_e81889 - altair processRandaoMixesReset 2.8660 us/op 6.2880 us/op 0.46
mainnet_e81889 - altair processHistoricalRootsUpdate 757.00 ns/op 782.00 ns/op 0.97
mainnet_e81889 - altair processParticipationFlagUpdates 1.1460 us/op 2.6680 us/op 0.43
mainnet_e81889 - altair processSyncCommitteeUpdates 558.00 ns/op 542.00 ns/op 1.03
mainnet_e81889 - altair afterProcessEpoch 80.657 ms/op 134.27 ms/op 0.60
capella processEpoch - mainnet_e217614 1.1262 s/op 1.0225 s/op 1.10
mainnet_e217614 - capella beforeProcessEpoch 197.60 ms/op 245.97 ms/op 0.80
mainnet_e217614 - capella processJustificationAndFinalization 11.276 us/op 16.338 us/op 0.69
mainnet_e217614 - capella processInactivityUpdates 15.653 ms/op 15.230 ms/op 1.03
mainnet_e217614 - capella processRewardsAndPenalties 218.90 ms/op 288.79 ms/op 0.76
mainnet_e217614 - capella processRegistryUpdates 14.332 us/op 19.449 us/op 0.74
mainnet_e217614 - capella processSlashings 538.00 ns/op 592.00 ns/op 0.91
mainnet_e217614 - capella processEth1DataReset 597.00 ns/op 1.0020 us/op 0.60
mainnet_e217614 - capella processEffectiveBalanceUpdates 3.1243 ms/op 4.1389 ms/op 0.75
mainnet_e217614 - capella processSlashingsReset 2.4730 us/op 3.0660 us/op 0.81
mainnet_e217614 - capella processRandaoMixesReset 2.9980 us/op 6.3260 us/op 0.47
mainnet_e217614 - capella processHistoricalRootsUpdate 690.00 ns/op 920.00 ns/op 0.75
mainnet_e217614 - capella processParticipationFlagUpdates 1.4450 us/op 3.9550 us/op 0.37
mainnet_e217614 - capella afterProcessEpoch 198.32 ms/op 333.58 ms/op 0.59
phase0 processEpoch - mainnet_e58758 407.84 ms/op 339.73 ms/op 1.20
mainnet_e58758 - phase0 beforeProcessEpoch 108.36 ms/op 129.73 ms/op 0.84
mainnet_e58758 - phase0 processJustificationAndFinalization 10.567 us/op 19.192 us/op 0.55
mainnet_e58758 - phase0 processRewardsAndPenalties 52.574 ms/op 62.250 ms/op 0.84
mainnet_e58758 - phase0 processRegistryUpdates 7.8760 us/op 14.775 us/op 0.53
mainnet_e58758 - phase0 processSlashings 647.00 ns/op 1.0360 us/op 0.62
mainnet_e58758 - phase0 processEth1DataReset 599.00 ns/op 913.00 ns/op 0.66
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.2619 ms/op 1.6961 ms/op 0.74
mainnet_e58758 - phase0 processSlashingsReset 1.3100 us/op 7.4710 us/op 0.18
mainnet_e58758 - phase0 processRandaoMixesReset 4.7380 us/op 8.1550 us/op 0.58
mainnet_e58758 - phase0 processHistoricalRootsUpdate 631.00 ns/op 1.0630 us/op 0.59
mainnet_e58758 - phase0 processParticipationRecordUpdates 3.7670 us/op 5.3010 us/op 0.71
mainnet_e58758 - phase0 afterProcessEpoch 67.815 ms/op 127.05 ms/op 0.53
phase0 processEffectiveBalanceUpdates - 250000 normalcase 902.89 us/op 1.2688 ms/op 0.71
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.4945 ms/op 2.2951 ms/op 0.65
altair processInactivityUpdates - 250000 normalcase 18.126 ms/op 33.402 ms/op 0.54
altair processInactivityUpdates - 250000 worstcase 17.913 ms/op 26.332 ms/op 0.68
phase0 processRegistryUpdates - 250000 normalcase 7.0700 us/op 17.367 us/op 0.41
phase0 processRegistryUpdates - 250000 badcase_full_deposits 364.12 us/op 462.80 us/op 0.79
phase0 processRegistryUpdates - 250000 worstcase 0.5 98.489 ms/op 164.76 ms/op 0.60
altair processRewardsAndPenalties - 250000 normalcase 52.802 ms/op 72.083 ms/op 0.73
altair processRewardsAndPenalties - 250000 worstcase 52.411 ms/op 76.870 ms/op 0.68
phase0 getAttestationDeltas - 250000 normalcase 5.1249 ms/op 8.9741 ms/op 0.57
phase0 getAttestationDeltas - 250000 worstcase 4.9273 ms/op 10.109 ms/op 0.49
phase0 processSlashings - 250000 worstcase 1.6278 ms/op 2.4687 ms/op 0.66
altair processSyncCommitteeUpdates - 250000 97.407 ms/op 161.83 ms/op 0.60
BeaconState.hashTreeRoot - No change 310.00 ns/op 273.00 ns/op 1.14
BeaconState.hashTreeRoot - 1 full validator 87.832 us/op 52.283 us/op 1.68
BeaconState.hashTreeRoot - 32 full validator 958.86 us/op 562.47 us/op 1.70
BeaconState.hashTreeRoot - 512 full validator 13.373 ms/op 5.9252 ms/op 2.26
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 139.97 us/op 66.196 us/op 2.11
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.1956 ms/op 908.85 us/op 2.42
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 25.196 ms/op 13.964 ms/op 1.80
BeaconState.hashTreeRoot - 1 balances 124.63 us/op 51.310 us/op 2.43
BeaconState.hashTreeRoot - 32 balances 1.0232 ms/op 489.88 us/op 2.09
BeaconState.hashTreeRoot - 512 balances 9.0973 ms/op 4.7255 ms/op 1.93
BeaconState.hashTreeRoot - 250000 balances 149.58 ms/op 77.497 ms/op 1.93
aggregationBits - 2048 els - zipIndexesInBitList 9.8000 us/op 21.199 us/op 0.46
regular array get 100000 times 30.932 us/op 35.899 us/op 0.86
wrappedArray get 100000 times 31.017 us/op 35.828 us/op 0.87
arrayWithProxy get 100000 times 11.609 ms/op 16.892 ms/op 0.69
ssz.Root.equals 233.00 ns/op 250.00 ns/op 0.93
byteArrayEquals 232.00 ns/op 259.00 ns/op 0.90
shuffle list - 16384 els 4.5120 ms/op 7.6988 ms/op 0.59
shuffle list - 250000 els 66.952 ms/op 108.24 ms/op 0.62
processSlot - 1 slots 13.615 us/op 9.0960 us/op 1.50
processSlot - 32 slots 2.7738 ms/op 1.3801 ms/op 2.01
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 46.537 ms/op 60.158 ms/op 0.77
getCommitteeAssignments - req 1 vs - 250000 vc 2.2587 ms/op 2.9014 ms/op 0.78
getCommitteeAssignments - req 100 vs - 250000 vc 3.3937 ms/op 4.0022 ms/op 0.85
getCommitteeAssignments - req 1000 vs - 250000 vc 3.6692 ms/op 4.4276 ms/op 0.83
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.5900 ns/op 5.6800 ns/op 0.81
state getBlockRootAtSlot - 250000 vs - 7PWei 531.20 ns/op 947.41 ns/op 0.56
computeProposers - vc 250000 5.6962 ms/op 11.598 ms/op 0.49
computeEpochShuffling - vc 250000 69.168 ms/op 121.04 ms/op 0.57
getNextSyncCommittee - vc 250000 104.40 ms/op 171.60 ms/op 0.61
computeSigningRoot for AttestationData 20.804 us/op 15.997 us/op 1.30
hash AttestationData serialized data then Buffer.toString(base64) 1.2463 us/op 2.5587 us/op 0.49
toHexString serialized data 954.06 ns/op 1.4579 us/op 0.65
Buffer.toString(base64) 155.29 ns/op 254.29 ns/op 0.61

by benchmarkbot/action

@g11tech g11tech enabled auto-merge (squash) September 10, 2023 12:01
@g11tech g11tech merged commit 4dcbbb7 into unstable Sep 11, 2023
@g11tech g11tech deleted the choressz-0.12 branch September 11, 2023 01:42
@wemeetagain
Copy link
Member

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

3 participants