Skip to content

Make the prover package private to avoid publishing - #5318

Merged
wemeetagain merged 1 commit into
unstablefrom
nh/prover-private
Mar 29, 2023
Merged

Make the prover package private to avoid publishing#5318
wemeetagain merged 1 commit into
unstablefrom
nh/prover-private

Conversation

@nazarhussain

@nazarhussain nazarhussain commented Mar 29, 2023

Copy link
Copy Markdown
Contributor

Motivation

Make the @lodestar/prover package private to avoid publishing.

Description

We will publish the prover package when its' get mature.

Reference
lerna/lerna#953 (comment)

@nazarhussain
nazarhussain requested a review from a team as a code owner March 29, 2023 19:17
@wemeetagain
wemeetagain merged commit 1bbcd95 into unstable Mar 29, 2023
@wemeetagain
wemeetagain deleted the nh/prover-private branch March 29, 2023 19:31
@github-actions

Copy link
Copy Markdown
Contributor

Performance Report

鉁旓笍 no performance regression detected

Full benchmark results
Benchmark suite Current: dabc2c5 Previous: d360e62 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.0295 ms/op 738.10 us/op 1.39
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 67.104 us/op 46.600 us/op 1.44
BLS verify - blst-native 1.3257 ms/op 1.2315 ms/op 1.08
BLS verifyMultipleSignatures 3 - blst-native 2.6974 ms/op 2.4797 ms/op 1.09
BLS verifyMultipleSignatures 8 - blst-native 5.7723 ms/op 5.3857 ms/op 1.07
BLS verifyMultipleSignatures 32 - blst-native 21.135 ms/op 19.377 ms/op 1.09
BLS aggregatePubkeys 32 - blst-native 28.960 us/op 25.878 us/op 1.12
BLS aggregatePubkeys 128 - blst-native 117.35 us/op 99.441 us/op 1.18
getAttestationsForBlock 88.075 ms/op 61.201 ms/op 1.44
isKnown best case - 1 super set check 336.00 ns/op 268.00 ns/op 1.25
isKnown normal case - 2 super set checks 313.00 ns/op 260.00 ns/op 1.20
isKnown worse case - 16 super set checks 311.00 ns/op 261.00 ns/op 1.19
CheckpointStateCache - add get delete 6.8570 us/op 5.4940 us/op 1.25
validate gossip signedAggregateAndProof - struct 3.0777 ms/op 2.8197 ms/op 1.09
validate gossip attestation - struct 1.5396 ms/op 1.3544 ms/op 1.14
pickEth1Vote - no votes 1.6482 ms/op 1.3416 ms/op 1.23
pickEth1Vote - max votes 18.284 ms/op 11.160 ms/op 1.64
pickEth1Vote - Eth1Data hashTreeRoot value x2048 11.089 ms/op 9.1639 ms/op 1.21
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 24.172 ms/op 16.340 ms/op 1.48
pickEth1Vote - Eth1Data fastSerialize value x2048 878.90 us/op 725.87 us/op 1.21
pickEth1Vote - Eth1Data fastSerialize tree x2048 7.7429 ms/op 8.6617 ms/op 0.89
bytes32 toHexString 863.00 ns/op 542.00 ns/op 1.59
bytes32 Buffer.toString(hex) 561.00 ns/op 411.00 ns/op 1.36
bytes32 Buffer.toString(hex) from Uint8Array 808.00 ns/op 631.00 ns/op 1.28
bytes32 Buffer.toString(hex) + 0x 654.00 ns/op 387.00 ns/op 1.69
Object access 1 prop 0.26500 ns/op 0.18600 ns/op 1.42
Map access 1 prop 0.20400 ns/op 0.16600 ns/op 1.23
Object get x1000 8.8860 ns/op 6.8140 ns/op 1.30
Map get x1000 0.75100 ns/op 0.58000 ns/op 1.29
Object set x1000 93.337 ns/op 62.843 ns/op 1.49
Map set x1000 64.838 ns/op 49.999 ns/op 1.30
Return object 10000 times 0.28600 ns/op 0.24570 ns/op 1.16
Throw Error 10000 times 4.7278 us/op 4.3341 us/op 1.09
fastMsgIdFn sha256 / 200 bytes 4.0770 us/op 3.5570 us/op 1.15
fastMsgIdFn h32 xxhash / 200 bytes 377.00 ns/op 290.00 ns/op 1.30
fastMsgIdFn h64 xxhash / 200 bytes 578.00 ns/op 429.00 ns/op 1.35
fastMsgIdFn sha256 / 1000 bytes 13.060 us/op 11.851 us/op 1.10
fastMsgIdFn h32 xxhash / 1000 bytes 516.00 ns/op 447.00 ns/op 1.15
fastMsgIdFn h64 xxhash / 1000 bytes 579.00 ns/op 538.00 ns/op 1.08
fastMsgIdFn sha256 / 10000 bytes 110.14 us/op 106.65 us/op 1.03
fastMsgIdFn h32 xxhash / 10000 bytes 2.1520 us/op 2.0180 us/op 1.07
fastMsgIdFn h64 xxhash / 10000 bytes 1.6210 us/op 1.4270 us/op 1.14
enrSubnets - fastDeserialize 64 bits 2.1270 us/op 1.4540 us/op 1.46
enrSubnets - ssz BitVector 64 bits 704.00 ns/op 592.00 ns/op 1.19
enrSubnets - fastDeserialize 4 bits 236.00 ns/op 201.00 ns/op 1.17
enrSubnets - ssz BitVector 4 bits 704.00 ns/op 616.00 ns/op 1.14
prioritizePeers score -10:0 att 32-0.1 sync 2-0 147.76 us/op 120.57 us/op 1.23
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 174.73 us/op 154.51 us/op 1.13
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 203.44 us/op 179.31 us/op 1.13
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 375.24 us/op 370.93 us/op 1.01
prioritizePeers score 0:0 att 64-1 sync 4-1 441.56 us/op 437.71 us/op 1.01
array of 16000 items push then shift 1.7593 us/op 1.7001 us/op 1.03
LinkedList of 16000 items push then shift 10.043 ns/op 9.1600 ns/op 1.10
array of 16000 items push then pop 121.89 ns/op 108.86 ns/op 1.12
LinkedList of 16000 items push then pop 9.7500 ns/op 8.8860 ns/op 1.10
array of 24000 items push then shift 2.5677 us/op 2.4797 us/op 1.04
LinkedList of 24000 items push then shift 10.639 ns/op 9.4310 ns/op 1.13
array of 24000 items push then pop 89.534 ns/op 88.545 ns/op 1.01
LinkedList of 24000 items push then pop 9.1570 ns/op 8.9130 ns/op 1.03
intersect bitArray bitLen 8 14.155 ns/op 13.148 ns/op 1.08
intersect array and set length 8 88.695 ns/op 87.105 ns/op 1.02
intersect bitArray bitLen 128 46.762 ns/op 45.158 ns/op 1.04
intersect array and set length 128 1.2532 us/op 1.2077 us/op 1.04
Buffer.concat 32 items 2.8520 us/op 2.8150 us/op 1.01
Uint8Array.set 32 items 2.5410 us/op 3.2180 us/op 0.79
pass gossip attestations to forkchoice per slot 3.2804 ms/op 3.5555 ms/op 0.92
computeDeltas 3.2077 ms/op 2.9624 ms/op 1.08
computeProposerBoostScoreFromBalances 1.8922 ms/op 1.7863 ms/op 1.06
altair processAttestation - 250000 vs - 7PWei normalcase 3.5652 ms/op 2.2784 ms/op 1.56
altair processAttestation - 250000 vs - 7PWei worstcase 4.2994 ms/op 4.1845 ms/op 1.03
altair processAttestation - setStatus - 1/6 committees join 149.75 us/op 151.21 us/op 0.99
altair processAttestation - setStatus - 1/3 committees join 286.14 us/op 282.49 us/op 1.01
altair processAttestation - setStatus - 1/2 committees join 388.44 us/op 394.01 us/op 0.99
altair processAttestation - setStatus - 2/3 committees join 479.31 us/op 491.43 us/op 0.98
altair processAttestation - setStatus - 4/5 committees join 689.01 us/op 674.71 us/op 1.02
altair processAttestation - setStatus - 100% committees join 788.51 us/op 813.83 us/op 0.97
altair processBlock - 250000 vs - 7PWei normalcase 19.290 ms/op 17.199 ms/op 1.12
altair processBlock - 250000 vs - 7PWei normalcase hashState 29.152 ms/op 27.321 ms/op 1.07
altair processBlock - 250000 vs - 7PWei worstcase 52.606 ms/op 51.960 ms/op 1.01
altair processBlock - 250000 vs - 7PWei worstcase hashState 73.070 ms/op 69.151 ms/op 1.06
phase0 processBlock - 250000 vs - 7PWei normalcase 2.6527 ms/op 2.2452 ms/op 1.18
phase0 processBlock - 250000 vs - 7PWei worstcase 32.262 ms/op 29.700 ms/op 1.09
altair processEth1Data - 250000 vs - 7PWei normalcase 710.33 us/op 533.03 us/op 1.33
vc - 250000 eb 1 eth1 1 we 0 wn 0 - smpl 15 10.342 us/op 8.5910 us/op 1.20
vc - 250000 eb 0.95 eth1 0.1 we 0.05 wn 0 - smpl 219 31.184 us/op 26.910 us/op 1.16
vc - 250000 eb 0.95 eth1 0.3 we 0.05 wn 0 - smpl 42 10.440 us/op 11.152 us/op 0.94
vc - 250000 eb 0.95 eth1 0.7 we 0.05 wn 0 - smpl 18 10.229 us/op 9.3810 us/op 1.09
vc - 250000 eb 0.1 eth1 0.1 we 0 wn 0 - smpl 1020 105.94 us/op 119.74 us/op 0.88
vc - 250000 eb 0.03 eth1 0.03 we 0 wn 0 - smpl 11777 886.99 us/op 663.53 us/op 1.34
vc - 250000 eb 0.01 eth1 0.01 we 0 wn 0 - smpl 16384 1.0514 ms/op 931.12 us/op 1.13
vc - 250000 eb 0 eth1 0 we 0 wn 0 - smpl 16384 1.0455 ms/op 911.22 us/op 1.15
vc - 250000 eb 0 eth1 0 we 0 wn 0 nocache - smpl 16384 3.1862 ms/op 2.3859 ms/op 1.34
vc - 250000 eb 0 eth1 1 we 0 wn 0 - smpl 16384 1.5638 ms/op 1.5483 ms/op 1.01
vc - 250000 eb 0 eth1 1 we 0 wn 0 nocache - smpl 16384 4.7384 ms/op 4.4897 ms/op 1.06
Tree 40 250000 create 494.21 ms/op 331.94 ms/op 1.49
Tree 40 250000 get(125000) 203.46 ns/op 187.96 ns/op 1.08
Tree 40 250000 set(125000) 1.3982 us/op 931.71 ns/op 1.50
Tree 40 250000 toArray() 27.970 ms/op 21.245 ms/op 1.32
Tree 40 250000 iterate all - toArray() + loop 25.499 ms/op 20.890 ms/op 1.22
Tree 40 250000 iterate all - get(i) 88.602 ms/op 74.005 ms/op 1.20
MutableVector 250000 create 14.750 ms/op 11.306 ms/op 1.30
MutableVector 250000 get(125000) 6.7610 ns/op 6.6490 ns/op 1.02
MutableVector 250000 set(125000) 288.26 ns/op 299.57 ns/op 0.96
MutableVector 250000 toArray() 4.1844 ms/op 3.5755 ms/op 1.17
MutableVector 250000 iterate all - toArray() + loop 4.6892 ms/op 3.1372 ms/op 1.49
MutableVector 250000 iterate all - get(i) 1.5946 ms/op 1.5399 ms/op 1.04
Array 250000 create 4.0493 ms/op 2.8132 ms/op 1.44
Array 250000 clone - spread 1.3813 ms/op 1.0970 ms/op 1.26
Array 250000 get(125000) 0.70000 ns/op 0.56900 ns/op 1.23
Array 250000 set(125000) 0.80600 ns/op 0.63600 ns/op 1.27
Array 250000 iterate all - loop 88.506 us/op 84.985 us/op 1.04
effectiveBalanceIncrements clone Uint8Array 300000 57.034 us/op 35.089 us/op 1.63
effectiveBalanceIncrements clone MutableVector 300000 392.00 ns/op 336.00 ns/op 1.17
effectiveBalanceIncrements rw all Uint8Array 300000 178.29 us/op 172.46 us/op 1.03
effectiveBalanceIncrements rw all MutableVector 300000 143.96 ms/op 81.684 ms/op 1.76
phase0 afterProcessEpoch - 250000 vs - 7PWei 122.44 ms/op 116.25 ms/op 1.05
phase0 beforeProcessEpoch - 250000 vs - 7PWei 45.695 ms/op 46.294 ms/op 0.99
altair processEpoch - mainnet_e81889 382.93 ms/op 327.61 ms/op 1.17
mainnet_e81889 - altair beforeProcessEpoch 78.846 ms/op 63.716 ms/op 1.24
mainnet_e81889 - altair processJustificationAndFinalization 20.029 us/op 18.160 us/op 1.10
mainnet_e81889 - altair processInactivityUpdates 8.9296 ms/op 5.4877 ms/op 1.63
mainnet_e81889 - altair processRewardsAndPenalties 77.279 ms/op 70.582 ms/op 1.09
mainnet_e81889 - altair processRegistryUpdates 5.4860 us/op 2.6880 us/op 2.04
mainnet_e81889 - altair processSlashings 1.2880 us/op 445.00 ns/op 2.89
mainnet_e81889 - altair processEth1DataReset 1.2910 us/op 501.00 ns/op 2.58
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.5371 ms/op 1.2074 ms/op 1.27
mainnet_e81889 - altair processSlashingsReset 8.6250 us/op 4.9340 us/op 1.75
mainnet_e81889 - altair processRandaoMixesReset 11.626 us/op 4.8920 us/op 2.38
mainnet_e81889 - altair processHistoricalRootsUpdate 2.8200 us/op 645.00 ns/op 4.37
mainnet_e81889 - altair processParticipationFlagUpdates 6.9240 us/op 2.3250 us/op 2.98
mainnet_e81889 - altair processSyncCommitteeUpdates 1.7120 us/op 500.00 ns/op 3.42
mainnet_e81889 - altair afterProcessEpoch 146.53 ms/op 120.10 ms/op 1.22
phase0 processEpoch - mainnet_e58758 619.74 ms/op 327.81 ms/op 1.89
mainnet_e58758 - phase0 beforeProcessEpoch 301.80 ms/op 124.34 ms/op 2.43
mainnet_e58758 - phase0 processJustificationAndFinalization 39.620 us/op 17.149 us/op 2.31
mainnet_e58758 - phase0 processRewardsAndPenalties 115.39 ms/op 56.661 ms/op 2.04
mainnet_e58758 - phase0 processRegistryUpdates 23.041 us/op 7.7400 us/op 2.98
mainnet_e58758 - phase0 processSlashings 1.7700 us/op 510.00 ns/op 3.47
mainnet_e58758 - phase0 processEth1DataReset 1.6390 us/op 545.00 ns/op 3.01
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 5.8666 ms/op 999.30 us/op 5.87
mainnet_e58758 - phase0 processSlashingsReset 8.0110 us/op 3.0900 us/op 2.59
mainnet_e58758 - phase0 processRandaoMixesReset 15.465 us/op 4.4520 us/op 3.47
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.9940 us/op 633.00 ns/op 3.15
mainnet_e58758 - phase0 processParticipationRecordUpdates 10.846 us/op 3.7850 us/op 2.87
mainnet_e58758 - phase0 afterProcessEpoch 110.67 ms/op 98.695 ms/op 1.12
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.3890 ms/op 1.2072 ms/op 1.15
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.2967 ms/op 1.4375 ms/op 1.60
altair processInactivityUpdates - 250000 normalcase 42.614 ms/op 20.168 ms/op 2.11
altair processInactivityUpdates - 250000 worstcase 39.444 ms/op 22.348 ms/op 1.76
phase0 processRegistryUpdates - 250000 normalcase 14.055 us/op 6.2800 us/op 2.24
phase0 processRegistryUpdates - 250000 badcase_full_deposits 444.70 us/op 246.90 us/op 1.80
phase0 processRegistryUpdates - 250000 worstcase 0.5 196.94 ms/op 124.92 ms/op 1.58
altair processRewardsAndPenalties - 250000 normalcase 87.572 ms/op 48.318 ms/op 1.81
altair processRewardsAndPenalties - 250000 worstcase 96.654 ms/op 48.101 ms/op 2.01
phase0 getAttestationDeltas - 250000 normalcase 12.395 ms/op 7.0193 ms/op 1.77
phase0 getAttestationDeltas - 250000 worstcase 12.145 ms/op 6.8907 ms/op 1.76
phase0 processSlashings - 250000 worstcase 4.9877 ms/op 3.7017 ms/op 1.35
altair processSyncCommitteeUpdates - 250000 221.10 ms/op 186.40 ms/op 1.19
BeaconState.hashTreeRoot - No change 347.00 ns/op 277.00 ns/op 1.25
BeaconState.hashTreeRoot - 1 full validator 58.694 us/op 52.883 us/op 1.11
BeaconState.hashTreeRoot - 32 full validator 638.62 us/op 555.75 us/op 1.15
BeaconState.hashTreeRoot - 512 full validator 6.9901 ms/op 5.0710 ms/op 1.38
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 73.955 us/op 64.173 us/op 1.15
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.0211 ms/op 897.13 us/op 1.14
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 15.547 ms/op 11.719 ms/op 1.33
BeaconState.hashTreeRoot - 1 balances 56.684 us/op 51.833 us/op 1.09
BeaconState.hashTreeRoot - 32 balances 482.70 us/op 473.53 us/op 1.02
BeaconState.hashTreeRoot - 512 balances 5.2684 ms/op 4.5500 ms/op 1.16
BeaconState.hashTreeRoot - 250000 balances 78.425 ms/op 77.012 ms/op 1.02
aggregationBits - 2048 els - zipIndexesInBitList 18.849 us/op 19.011 us/op 0.99
regular array get 100000 times 34.737 us/op 33.858 us/op 1.03
wrappedArray get 100000 times 35.378 us/op 34.066 us/op 1.04
arrayWithProxy get 100000 times 17.217 ms/op 16.655 ms/op 1.03
ssz.Root.equals 596.00 ns/op 599.00 ns/op 0.99
byteArrayEquals 589.00 ns/op 611.00 ns/op 0.96
shuffle list - 16384 els 7.7419 ms/op 7.2416 ms/op 1.07
shuffle list - 250000 els 108.51 ms/op 103.56 ms/op 1.05
processSlot - 1 slots 9.4650 us/op 8.6920 us/op 1.09
processSlot - 32 slots 1.5366 ms/op 1.3373 ms/op 1.15
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 39.577 ms/op 34.287 ms/op 1.15
getCommitteeAssignments - req 1 vs - 250000 vc 3.0316 ms/op 3.0114 ms/op 1.01
getCommitteeAssignments - req 100 vs - 250000 vc 4.4646 ms/op 4.2730 ms/op 1.04
getCommitteeAssignments - req 1000 vs - 250000 vc 4.7252 ms/op 4.8005 ms/op 0.98
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.5200 ns/op 5.1000 ns/op 1.08
state getBlockRootAtSlot - 250000 vs - 7PWei 666.86 ns/op 764.31 ns/op 0.87
computeProposers - vc 250000 11.838 ms/op 11.552 ms/op 1.02
computeEpochShuffling - vc 250000 111.84 ms/op 106.33 ms/op 1.05
getNextSyncCommittee - vc 250000 190.02 ms/op 192.37 ms/op 0.99

by benchmarkbot/action

@wemeetagain

Copy link
Copy Markdown
Member

馃帀 This PR is included in v1.8.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.

2 participants