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

Remove unnecessary dependency from flare #4139

Merged
merged 1 commit into from
Jun 10, 2022
Merged

Conversation

dapplion
Copy link
Contributor

Motivation

When doing npx @chainsafe/flare more things than necessary are installed

Description

Remove unnecessary dependency from flare

@dapplion dapplion requested a review from a team as a code owner June 10, 2022 09:40
@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: e024ad7 Previous: 6dd408b Ratio
altair processAttestation - 250000 vs - 7PWei normalcase 3.4516 ms/op 4.1112 ms/op 0.84
altair processAttestation - 250000 vs - 7PWei worstcase 5.3441 ms/op 6.7575 ms/op 0.79
altair processAttestation - setStatus - 1/6 committees join 181.82 us/op 223.94 us/op 0.81
altair processAttestation - setStatus - 1/3 committees join 369.40 us/op 438.12 us/op 0.84
altair processAttestation - setStatus - 1/2 committees join 518.50 us/op 607.21 us/op 0.85
altair processAttestation - setStatus - 2/3 committees join 686.75 us/op 824.75 us/op 0.83
altair processAttestation - setStatus - 4/5 committees join 945.65 us/op 1.1014 ms/op 0.86
altair processAttestation - setStatus - 100% committees join 1.1420 ms/op 1.3106 ms/op 0.87
altair processBlock - 250000 vs - 7PWei normalcase 22.931 ms/op 32.717 ms/op 0.70
altair processBlock - 250000 vs - 7PWei normalcase hashState 32.042 ms/op 38.765 ms/op 0.83
altair processBlock - 250000 vs - 7PWei worstcase 80.458 ms/op 84.417 ms/op 0.95
altair processBlock - 250000 vs - 7PWei worstcase hashState 94.983 ms/op 114.35 ms/op 0.83
phase0 processBlock - 250000 vs - 7PWei normalcase 3.3174 ms/op 4.1447 ms/op 0.80
phase0 processBlock - 250000 vs - 7PWei worstcase 51.394 ms/op 52.410 ms/op 0.98
altair processEth1Data - 250000 vs - 7PWei normalcase 648.17 us/op 798.99 us/op 0.81
Tree 40 250000 create 759.02 ms/op 885.42 ms/op 0.86
Tree 40 250000 get(125000) 231.71 ns/op 337.04 ns/op 0.69
Tree 40 250000 set(125000) 2.1929 us/op 2.6135 us/op 0.84
Tree 40 250000 toArray() 28.247 ms/op 36.131 ms/op 0.78
Tree 40 250000 iterate all - toArray() + loop 28.300 ms/op 35.931 ms/op 0.79
Tree 40 250000 iterate all - get(i) 114.11 ms/op 125.90 ms/op 0.91
MutableVector 250000 create 15.609 ms/op 17.133 ms/op 0.91
MutableVector 250000 get(125000) 10.766 ns/op 17.440 ns/op 0.62
MutableVector 250000 set(125000) 584.01 ns/op 672.23 ns/op 0.87
MutableVector 250000 toArray() 6.4591 ms/op 7.8037 ms/op 0.83
MutableVector 250000 iterate all - toArray() + loop 6.7027 ms/op 8.3813 ms/op 0.80
MutableVector 250000 iterate all - get(i) 2.6404 ms/op 3.7282 ms/op 0.71
Array 250000 create 6.4334 ms/op 8.1015 ms/op 0.79
Array 250000 clone - spread 3.1771 ms/op 2.8624 ms/op 1.11
Array 250000 get(125000) 1.5080 ns/op 1.3340 ns/op 1.13
Array 250000 set(125000) 1.5210 ns/op 1.3650 ns/op 1.11
Array 250000 iterate all - loop 151.03 us/op 192.78 us/op 0.78
effectiveBalanceIncrements clone Uint8Array 300000 80.810 us/op 85.681 us/op 0.94
effectiveBalanceIncrements clone MutableVector 300000 630.00 ns/op 930.00 ns/op 0.68
effectiveBalanceIncrements rw all Uint8Array 300000 247.31 us/op 295.59 us/op 0.84
effectiveBalanceIncrements rw all MutableVector 300000 143.12 ms/op 200.48 ms/op 0.71
phase0 afterProcessEpoch - 250000 vs - 7PWei 187.35 ms/op 217.35 ms/op 0.86
phase0 beforeProcessEpoch - 250000 vs - 7PWei 58.245 ms/op 76.951 ms/op 0.76
altair processEpoch - mainnet_e81889 533.81 ms/op 564.57 ms/op 0.95
mainnet_e81889 - altair beforeProcessEpoch 114.16 ms/op 118.55 ms/op 0.96
mainnet_e81889 - altair processJustificationAndFinalization 16.015 us/op 25.610 us/op 0.63
mainnet_e81889 - altair processInactivityUpdates 9.6925 ms/op 13.074 ms/op 0.74
mainnet_e81889 - altair processRewardsAndPenalties 73.938 ms/op 97.185 ms/op 0.76
mainnet_e81889 - altair processRegistryUpdates 2.4920 us/op 6.7370 us/op 0.37
mainnet_e81889 - altair processSlashings 531.00 ns/op 1.6820 us/op 0.32
mainnet_e81889 - altair processEth1DataReset 607.00 ns/op 1.9340 us/op 0.31
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.9390 ms/op 2.6824 ms/op 0.72
mainnet_e81889 - altair processSlashingsReset 5.4500 us/op 9.9160 us/op 0.55
mainnet_e81889 - altair processRandaoMixesReset 4.3220 us/op 11.307 us/op 0.38
mainnet_e81889 - altair processHistoricalRootsUpdate 635.00 ns/op 2.1800 us/op 0.29
mainnet_e81889 - altair processParticipationFlagUpdates 3.5030 us/op 5.9050 us/op 0.59
mainnet_e81889 - altair processSyncCommitteeUpdates 545.00 ns/op 2.0040 us/op 0.27
mainnet_e81889 - altair afterProcessEpoch 219.14 ms/op 236.69 ms/op 0.93
phase0 processEpoch - mainnet_e58758 476.10 ms/op 653.50 ms/op 0.73
mainnet_e58758 - phase0 beforeProcessEpoch 154.19 ms/op 246.37 ms/op 0.63
mainnet_e58758 - phase0 processJustificationAndFinalization 16.636 us/op 23.748 us/op 0.70
mainnet_e58758 - phase0 processRewardsAndPenalties 62.841 ms/op 147.72 ms/op 0.43
mainnet_e58758 - phase0 processRegistryUpdates 7.1860 us/op 15.786 us/op 0.46
mainnet_e58758 - phase0 processSlashings 630.00 ns/op 1.7710 us/op 0.36
mainnet_e58758 - phase0 processEth1DataReset 598.00 ns/op 1.8400 us/op 0.33
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.7873 ms/op 2.5269 ms/op 0.71
mainnet_e58758 - phase0 processSlashingsReset 4.6750 us/op 9.0080 us/op 0.52
mainnet_e58758 - phase0 processRandaoMixesReset 4.0980 us/op 11.416 us/op 0.36
mainnet_e58758 - phase0 processHistoricalRootsUpdate 655.00 ns/op 1.9200 us/op 0.34
mainnet_e58758 - phase0 processParticipationRecordUpdates 3.4840 us/op 9.7740 us/op 0.36
mainnet_e58758 - phase0 afterProcessEpoch 165.33 ms/op 186.03 ms/op 0.89
phase0 processEffectiveBalanceUpdates - 250000 normalcase 2.1983 ms/op 3.2825 ms/op 0.67
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.1250 ms/op 3.7778 ms/op 0.56
altair processInactivityUpdates - 250000 normalcase 21.619 ms/op 28.383 ms/op 0.76
altair processInactivityUpdates - 250000 worstcase 28.622 ms/op 28.552 ms/op 1.00
phase0 processRegistryUpdates - 250000 normalcase 5.9300 us/op 13.038 us/op 0.45
phase0 processRegistryUpdates - 250000 badcase_full_deposits 373.67 us/op 552.75 us/op 0.68
phase0 processRegistryUpdates - 250000 worstcase 0.5 175.84 ms/op 239.65 ms/op 0.73
altair processRewardsAndPenalties - 250000 normalcase 114.15 ms/op 93.793 ms/op 1.22
altair processRewardsAndPenalties - 250000 worstcase 91.528 ms/op 139.85 ms/op 0.65
phase0 getAttestationDeltas - 250000 normalcase 11.998 ms/op 13.948 ms/op 0.86
phase0 getAttestationDeltas - 250000 worstcase 12.783 ms/op 14.372 ms/op 0.89
phase0 processSlashings - 250000 worstcase 5.0533 ms/op 6.2020 ms/op 0.81
altair processSyncCommitteeUpdates - 250000 295.27 ms/op 324.89 ms/op 0.91
BeaconState.hashTreeRoot - No change 636.00 ns/op 645.00 ns/op 0.99
BeaconState.hashTreeRoot - 1 full validator 72.586 us/op 72.437 us/op 1.00
BeaconState.hashTreeRoot - 32 full validator 720.48 us/op 761.21 us/op 0.95
BeaconState.hashTreeRoot - 512 full validator 7.2023 ms/op 7.6951 ms/op 0.94
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 92.994 us/op 89.337 us/op 1.04
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.2836 ms/op 1.2808 ms/op 1.00
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 17.375 ms/op 18.306 ms/op 0.95
BeaconState.hashTreeRoot - 1 balances 70.399 us/op 82.723 us/op 0.85
BeaconState.hashTreeRoot - 32 balances 699.02 us/op 629.51 us/op 1.11
BeaconState.hashTreeRoot - 512 balances 5.7072 ms/op 6.0621 ms/op 0.94
BeaconState.hashTreeRoot - 250000 balances 97.786 ms/op 101.04 ms/op 0.97
aggregationBits - 2048 els - zipIndexesInBitList 29.450 us/op 37.917 us/op 0.78
regular array get 100000 times 60.600 us/op 77.530 us/op 0.78
wrappedArray get 100000 times 60.639 us/op 78.201 us/op 0.78
arrayWithProxy get 100000 times 28.380 ms/op 34.305 ms/op 0.83
ssz.Root.equals 544.00 ns/op 616.00 ns/op 0.88
byteArrayEquals 527.00 ns/op 614.00 ns/op 0.86
shuffle list - 16384 els 11.398 ms/op 13.577 ms/op 0.84
shuffle list - 250000 els 169.53 ms/op 194.65 ms/op 0.87
processSlot - 1 slots 13.392 us/op 15.023 us/op 0.89
processSlot - 32 slots 2.0168 ms/op 2.1380 ms/op 0.94
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 769.40 us/op 432.73 us/op 1.78
getCommitteeAssignments - req 1 vs - 250000 vc 5.3921 ms/op 6.0938 ms/op 0.88
getCommitteeAssignments - req 100 vs - 250000 vc 7.8432 ms/op 8.4207 ms/op 0.93
getCommitteeAssignments - req 1000 vs - 250000 vc 8.4606 ms/op 9.2106 ms/op 0.92
computeProposers - vc 250000 17.286 ms/op 22.121 ms/op 0.78
computeEpochShuffling - vc 250000 171.05 ms/op 199.38 ms/op 0.86
getNextSyncCommittee - vc 250000 291.64 ms/op 323.14 ms/op 0.90
pass gossip attestations to forkchoice per slot 2.9899 ms/op 3.7113 ms/op 0.81
computeDeltas 3.2714 ms/op 3.5916 ms/op 0.91
computeProposerBoostScoreFromBalances 803.96 us/op 1.0671 ms/op 0.75
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.9893 ms/op 2.4194 ms/op 0.82
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 67.165 us/op 85.088 us/op 0.79
BLS verify - blst-native 2.1664 ms/op 2.1858 ms/op 0.99
BLS verifyMultipleSignatures 3 - blst-native 4.4712 ms/op 4.3402 ms/op 1.03
BLS verifyMultipleSignatures 8 - blst-native 9.6684 ms/op 9.2988 ms/op 1.04
BLS verifyMultipleSignatures 32 - blst-native 35.150 ms/op 34.148 ms/op 1.03
BLS aggregatePubkeys 32 - blst-native 46.608 us/op 44.942 us/op 1.04
BLS aggregatePubkeys 128 - blst-native 182.17 us/op 177.93 us/op 1.02
getAttestationsForBlock 54.134 ms/op 70.032 ms/op 0.77
isKnown best case - 1 super set check 498.00 ns/op 506.00 ns/op 0.98
isKnown normal case - 2 super set checks 497.00 ns/op 497.00 ns/op 1.00
isKnown worse case - 16 super set checks 487.00 ns/op 492.00 ns/op 0.99
CheckpointStateCache - add get delete 11.150 us/op 12.541 us/op 0.89
validate gossip signedAggregateAndProof - struct 5.0032 ms/op 4.8383 ms/op 1.03
validate gossip attestation - struct 2.3606 ms/op 2.3219 ms/op 1.02
altair verifyImport mainnet_s3766816:31 6.8278 s/op 7.1803 s/op 0.95
pickEth1Vote - no votes 2.1535 ms/op 2.4296 ms/op 0.89
pickEth1Vote - max votes 22.722 ms/op 27.954 ms/op 0.81
pickEth1Vote - Eth1Data hashTreeRoot value x2048 13.517 ms/op 14.387 ms/op 0.94
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 21.168 ms/op 24.305 ms/op 0.87
pickEth1Vote - Eth1Data fastSerialize value x2048 1.5352 ms/op 1.7984 ms/op 0.85
pickEth1Vote - Eth1Data fastSerialize tree x2048 16.502 ms/op 19.662 ms/op 0.84
bytes32 toHexString 1.0330 us/op 1.3290 us/op 0.78
bytes32 Buffer.toString(hex) 789.00 ns/op 842.00 ns/op 0.94
bytes32 Buffer.toString(hex) from Uint8Array 1.0450 us/op 1.1790 us/op 0.89
bytes32 Buffer.toString(hex) + 0x 810.00 ns/op 880.00 ns/op 0.92
Object access 1 prop 0.39100 ns/op 0.46000 ns/op 0.85
Map access 1 prop 0.32500 ns/op 0.35300 ns/op 0.92
Object get x1000 11.002 ns/op 21.129 ns/op 0.52
Map get x1000 0.94600 ns/op 1.1650 ns/op 0.81
Object set x1000 70.050 ns/op 137.18 ns/op 0.51
Map set x1000 47.512 ns/op 87.531 ns/op 0.54
Return object 10000 times 0.44110 ns/op 0.43350 ns/op 1.02
Throw Error 10000 times 6.0385 us/op 6.7924 us/op 0.89
enrSubnets - fastDeserialize 64 bits 2.8170 us/op 3.1020 us/op 0.91
enrSubnets - ssz BitVector 64 bits 849.00 ns/op 1.0090 us/op 0.84
enrSubnets - fastDeserialize 4 bits 399.00 ns/op 472.00 ns/op 0.85
enrSubnets - ssz BitVector 4 bits 843.00 ns/op 899.00 ns/op 0.94
prioritizePeers score -10:0 att 32-0.1 sync 2-0 86.365 us/op 112.52 us/op 0.77
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 114.79 us/op 139.68 us/op 0.82
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 207.61 us/op 254.91 us/op 0.81
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 405.12 us/op 532.65 us/op 0.76
prioritizePeers score 0:0 att 64-1 sync 4-1 405.18 us/op 526.70 us/op 0.77
RateTracker 1000000 limit, 1 obj count per request 186.76 ns/op 221.84 ns/op 0.84
RateTracker 1000000 limit, 2 obj count per request 139.12 ns/op 167.39 ns/op 0.83
RateTracker 1000000 limit, 4 obj count per request 117.13 ns/op 138.79 ns/op 0.84
RateTracker 1000000 limit, 8 obj count per request 102.50 ns/op 126.86 ns/op 0.81
RateTracker with prune 4.1990 us/op 5.1520 us/op 0.82
array of 16000 items push then shift 51.589 us/op 3.6342 us/op 14.20
LinkedList of 16000 items push then shift 17.414 ns/op 27.825 ns/op 0.63
array of 16000 items push then pop 213.29 ns/op 274.15 ns/op 0.78
LinkedList of 16000 items push then pop 14.513 ns/op 23.099 ns/op 0.63
array of 24000 items push then shift 77.371 us/op 5.1902 us/op 14.91
LinkedList of 24000 items push then shift 23.122 ns/op 28.950 ns/op 0.80
array of 24000 items push then pop 195.16 ns/op 232.70 ns/op 0.84
LinkedList of 24000 items push then pop 15.519 ns/op 23.265 ns/op 0.67
intersect bitArray bitLen 8 10.662 ns/op 13.570 ns/op 0.79
intersect array and set length 8 145.13 ns/op 190.94 ns/op 0.76
intersect bitArray bitLen 128 58.443 ns/op 71.350 ns/op 0.82
intersect array and set length 128 1.7919 us/op 2.6179 us/op 0.68

by benchmarkbot/action

@dapplion dapplion enabled auto-merge (squash) June 10, 2022 10:37
@dapplion dapplion merged commit 4c439ad into unstable Jun 10, 2022
@dapplion dapplion deleted the dapplion/drop-flare-dep branch June 10, 2022 10:37
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.

None yet

2 participants