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: fix prover README typos #6426

Merged
merged 4 commits into from
Feb 16, 2024
Merged

chore: fix prover README typos #6426

merged 4 commits into from
Feb 16, 2024

Conversation

jeluard
Copy link
Contributor

@jeluard jeluard commented Feb 14, 2024

Fix prover README typos

@jeluard jeluard requested a review from a team as a code owner February 14, 2024 07:43
Copy link

codecov bot commented Feb 14, 2024

Codecov Report

Merging #6426 (51feea7) into unstable (ae61683) will decrease coverage by 0.03%.
Report is 14 commits behind head on unstable.
The diff coverage is n/a.

Additional details and impacted files
@@             Coverage Diff              @@
##           unstable    #6426      +/-   ##
============================================
- Coverage     61.72%   61.70%   -0.03%     
============================================
  Files           553      553              
  Lines         57862    57858       -4     
  Branches       1829     1828       -1     
============================================
- Hits          35717    35701      -16     
- Misses        22108    22120      +12     
  Partials         37       37              

Copy link
Contributor

github-actions bot commented Feb 14, 2024

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 163ef72 Previous: d01c542 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 469.14 us/op 799.89 us/op 0.59
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 99.808 us/op 85.243 us/op 1.17
BLS verify - blst-native 1.3123 ms/op 1.0978 ms/op 1.20
BLS verifyMultipleSignatures 3 - blst-native 2.7344 ms/op 2.3642 ms/op 1.16
BLS verifyMultipleSignatures 8 - blst-native 6.1305 ms/op 5.2498 ms/op 1.17
BLS verifyMultipleSignatures 32 - blst-native 22.171 ms/op 19.612 ms/op 1.13
BLS verifyMultipleSignatures 64 - blst-native 44.281 ms/op 38.551 ms/op 1.15
BLS verifyMultipleSignatures 128 - blst-native 87.941 ms/op 75.850 ms/op 1.16
BLS deserializing 10000 signatures 954.33 ms/op 822.83 ms/op 1.16
BLS deserializing 100000 signatures 9.6755 s/op 8.1199 s/op 1.19
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.3300 ms/op 1.1232 ms/op 1.18
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.4939 ms/op 1.2746 ms/op 1.17
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.3190 ms/op 2.0017 ms/op 1.16
BLS verifyMultipleSignatures - same message - 64 - blst-native 4.3991 ms/op 3.7575 ms/op 1.17
BLS verifyMultipleSignatures - same message - 128 - blst-native 7.5738 ms/op 4.9564 ms/op 1.53
BLS aggregatePubkeys 32 - blst-native 28.002 us/op 22.434 us/op 1.25
BLS aggregatePubkeys 128 - blst-native 100.04 us/op 88.469 us/op 1.13
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 50.084 ms/op 38.800 ms/op 1.29
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 47.620 ms/op 37.174 ms/op 1.28
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 30.473 ms/op 26.144 ms/op 1.17
getSlashingsAndExits - default max 229.51 us/op 128.98 us/op 1.78
getSlashingsAndExits - 2k 476.94 us/op 339.94 us/op 1.40
proposeBlockBody type=full, size=empty 5.0387 ms/op 4.1103 ms/op 1.23
isKnown best case - 1 super set check 324.00 ns/op 318.00 ns/op 1.02
isKnown normal case - 2 super set checks 315.00 ns/op 351.00 ns/op 0.90
isKnown worse case - 16 super set checks 314.00 ns/op 324.00 ns/op 0.97
CheckpointStateCache - add get delete 5.7610 us/op 3.8460 us/op 1.50
validate api signedAggregateAndProof - struct 2.8305 ms/op 2.4046 ms/op 1.18
validate gossip signedAggregateAndProof - struct 2.7983 ms/op 2.4092 ms/op 1.16
validate gossip attestation - vc 640000 1.3671 ms/op 1.1567 ms/op 1.18
batch validate gossip attestation - vc 640000 - chunk 32 165.96 us/op 138.92 us/op 1.19
batch validate gossip attestation - vc 640000 - chunk 64 146.35 us/op 122.72 us/op 1.19
batch validate gossip attestation - vc 640000 - chunk 128 134.26 us/op 123.86 us/op 1.08
batch validate gossip attestation - vc 640000 - chunk 256 136.23 us/op 115.85 us/op 1.18
pickEth1Vote - no votes 1.2459 ms/op 996.87 us/op 1.25
pickEth1Vote - max votes 11.239 ms/op 12.514 ms/op 0.90
pickEth1Vote - Eth1Data hashTreeRoot value x2048 22.092 ms/op 13.972 ms/op 1.58
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 28.281 ms/op 23.866 ms/op 1.19
pickEth1Vote - Eth1Data fastSerialize value x2048 622.15 us/op 477.37 us/op 1.30
pickEth1Vote - Eth1Data fastSerialize tree x2048 7.3735 ms/op 4.1224 ms/op 1.79
bytes32 toHexString 512.00 ns/op 503.00 ns/op 1.02
bytes32 Buffer.toString(hex) 301.00 ns/op 360.00 ns/op 0.84
bytes32 Buffer.toString(hex) from Uint8Array 427.00 ns/op 495.00 ns/op 0.86
bytes32 Buffer.toString(hex) + 0x 290.00 ns/op 314.00 ns/op 0.92
Object access 1 prop 0.16300 ns/op 0.24500 ns/op 0.67
Map access 1 prop 0.16300 ns/op 0.19200 ns/op 0.85
Object get x1000 7.8340 ns/op 5.2030 ns/op 1.51
Map get x1000 0.79200 ns/op 0.87300 ns/op 0.91
Object set x1000 51.232 ns/op 30.684 ns/op 1.67
Map set x1000 41.319 ns/op 21.767 ns/op 1.90
Return object 10000 times 0.24170 ns/op 0.23190 ns/op 1.04
Throw Error 10000 times 3.9212 us/op 2.7514 us/op 1.43
fastMsgIdFn sha256 / 200 bytes 3.3650 us/op 2.0460 us/op 1.64
fastMsgIdFn h32 xxhash / 200 bytes 314.00 ns/op 370.00 ns/op 0.85
fastMsgIdFn h64 xxhash / 200 bytes 356.00 ns/op 392.00 ns/op 0.91
fastMsgIdFn sha256 / 1000 bytes 11.515 us/op 6.4060 us/op 1.80
fastMsgIdFn h32 xxhash / 1000 bytes 454.00 ns/op 489.00 ns/op 0.93
fastMsgIdFn h64 xxhash / 1000 bytes 431.00 ns/op 470.00 ns/op 0.92
fastMsgIdFn sha256 / 10000 bytes 103.45 us/op 53.049 us/op 1.95
fastMsgIdFn h32 xxhash / 10000 bytes 1.9580 us/op 1.8650 us/op 1.05
fastMsgIdFn h64 xxhash / 10000 bytes 1.3460 us/op 1.2740 us/op 1.06
send data - 1000 256B messages 19.900 ms/op 14.930 ms/op 1.33
send data - 1000 512B messages 26.986 ms/op 19.313 ms/op 1.40
send data - 1000 1024B messages 40.328 ms/op 31.123 ms/op 1.30
send data - 1000 1200B messages 38.881 ms/op 34.876 ms/op 1.11
send data - 1000 2048B messages 50.161 ms/op 41.005 ms/op 1.22
send data - 1000 4096B messages 45.209 ms/op 36.540 ms/op 1.24
send data - 1000 16384B messages 112.66 ms/op 97.577 ms/op 1.15
send data - 1000 65536B messages 474.51 ms/op 404.27 ms/op 1.17
enrSubnets - fastDeserialize 64 bits 1.2960 us/op 951.00 ns/op 1.36
enrSubnets - ssz BitVector 64 bits 526.00 ns/op 482.00 ns/op 1.09
enrSubnets - fastDeserialize 4 bits 205.00 ns/op 210.00 ns/op 0.98
enrSubnets - ssz BitVector 4 bits 456.00 ns/op 426.00 ns/op 1.07
prioritizePeers score -10:0 att 32-0.1 sync 2-0 104.22 us/op 68.971 us/op 1.51
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 140.60 us/op 103.63 us/op 1.36
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 178.47 us/op 128.97 us/op 1.38
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 315.81 us/op 187.97 us/op 1.68
prioritizePeers score 0:0 att 64-1 sync 4-1 364.74 us/op 231.94 us/op 1.57
array of 16000 items push then shift 1.6824 us/op 1.3627 us/op 1.23
LinkedList of 16000 items push then shift 9.4330 ns/op 7.4040 ns/op 1.27
array of 16000 items push then pop 113.21 ns/op 113.26 ns/op 1.00
LinkedList of 16000 items push then pop 9.0430 ns/op 6.2700 ns/op 1.44
array of 24000 items push then shift 2.6040 us/op 2.0984 us/op 1.24
LinkedList of 24000 items push then shift 8.9680 ns/op 8.7020 ns/op 1.03
array of 24000 items push then pop 138.68 ns/op 154.61 ns/op 0.90
LinkedList of 24000 items push then pop 8.7150 ns/op 6.1100 ns/op 1.43
intersect bitArray bitLen 8 5.9540 ns/op 4.7670 ns/op 1.25
intersect array and set length 8 73.181 ns/op 55.726 ns/op 1.31
intersect bitArray bitLen 128 38.378 ns/op 30.065 ns/op 1.28
intersect array and set length 128 1.1042 us/op 690.53 ns/op 1.60
bitArray.getTrueBitIndexes() bitLen 128 1.7390 us/op 1.3430 us/op 1.29
bitArray.getTrueBitIndexes() bitLen 248 3.1500 us/op 2.2920 us/op 1.37
bitArray.getTrueBitIndexes() bitLen 512 6.3240 us/op 4.1330 us/op 1.53
Buffer.concat 32 items 1.0990 us/op 885.00 ns/op 1.24
Uint8Array.set 32 items 2.0440 us/op 2.3770 us/op 0.86
Set add up to 64 items then delete first 4.8057 us/op 2.1707 us/op 2.21
OrderedSet add up to 64 items then delete first 6.7290 us/op 2.8308 us/op 2.38
Set add up to 64 items then delete last 5.3568 us/op 2.0675 us/op 2.59
OrderedSet add up to 64 items then delete last 6.3076 us/op 3.0434 us/op 2.07
Set add up to 64 items then delete middle 4.7698 us/op 2.1863 us/op 2.18
OrderedSet add up to 64 items then delete middle 8.1539 us/op 4.8769 us/op 1.67
Set add up to 128 items then delete first 10.048 us/op 4.5899 us/op 2.19
OrderedSet add up to 128 items then delete first 13.772 us/op 7.2514 us/op 1.90
Set add up to 128 items then delete last 10.068 us/op 4.5009 us/op 2.24
OrderedSet add up to 128 items then delete last 12.385 us/op 6.6068 us/op 1.87
Set add up to 128 items then delete middle 10.016 us/op 4.6367 us/op 2.16
OrderedSet add up to 128 items then delete middle 19.183 us/op 12.878 us/op 1.49
Set add up to 256 items then delete first 21.012 us/op 8.0043 us/op 2.63
OrderedSet add up to 256 items then delete first 25.969 us/op 12.589 us/op 2.06
Set add up to 256 items then delete last 18.605 us/op 7.4808 us/op 2.49
OrderedSet add up to 256 items then delete last 23.688 us/op 12.484 us/op 1.90
Set add up to 256 items then delete middle 18.574 us/op 8.0627 us/op 2.30
OrderedSet add up to 256 items then delete middle 49.837 us/op 33.176 us/op 1.50
transfer serialized Status (84 B) 1.8330 us/op 1.5640 us/op 1.17
copy serialized Status (84 B) 1.3890 us/op 1.3220 us/op 1.05
transfer serialized SignedVoluntaryExit (112 B) 1.8980 us/op 1.8010 us/op 1.05
copy serialized SignedVoluntaryExit (112 B) 1.3990 us/op 1.1670 us/op 1.20
transfer serialized ProposerSlashing (416 B) 2.4880 us/op 1.5590 us/op 1.60
copy serialized ProposerSlashing (416 B) 1.8570 us/op 1.3650 us/op 1.36
transfer serialized Attestation (485 B) 2.1430 us/op 1.4950 us/op 1.43
copy serialized Attestation (485 B) 1.9710 us/op 1.3560 us/op 1.45
transfer serialized AttesterSlashing (33232 B) 2.2760 us/op 1.6460 us/op 1.38
copy serialized AttesterSlashing (33232 B) 6.5610 us/op 3.5190 us/op 1.86
transfer serialized Small SignedBeaconBlock (128000 B) 2.6030 us/op 1.8430 us/op 1.41
copy serialized Small SignedBeaconBlock (128000 B) 17.003 us/op 25.679 us/op 0.66
transfer serialized Avg SignedBeaconBlock (200000 B) 2.9860 us/op 2.9070 us/op 1.03
copy serialized Avg SignedBeaconBlock (200000 B) 29.460 us/op 31.153 us/op 0.95
transfer serialized BlobsSidecar (524380 B) 3.1630 us/op 3.1040 us/op 1.02
copy serialized BlobsSidecar (524380 B) 88.686 us/op 106.37 us/op 0.83
transfer serialized Big SignedBeaconBlock (1000000 B) 3.4690 us/op 3.1410 us/op 1.10
copy serialized Big SignedBeaconBlock (1000000 B) 181.47 us/op 193.55 us/op 0.94
pass gossip attestations to forkchoice per slot 4.1783 ms/op 2.8699 ms/op 1.46
forkChoice updateHead vc 100000 bc 64 eq 0 692.18 us/op 442.61 us/op 1.56
forkChoice updateHead vc 600000 bc 64 eq 0 5.6709 ms/op 4.5992 ms/op 1.23
forkChoice updateHead vc 1000000 bc 64 eq 0 7.3590 ms/op 4.4768 ms/op 1.64
forkChoice updateHead vc 600000 bc 320 eq 0 4.2698 ms/op 2.6175 ms/op 1.63
forkChoice updateHead vc 600000 bc 1200 eq 0 4.3896 ms/op 2.6933 ms/op 1.63
forkChoice updateHead vc 600000 bc 7200 eq 0 5.8777 ms/op 3.5684 ms/op 1.65
forkChoice updateHead vc 600000 bc 64 eq 1000 11.469 ms/op 10.210 ms/op 1.12
forkChoice updateHead vc 600000 bc 64 eq 10000 12.577 ms/op 9.6571 ms/op 1.30
forkChoice updateHead vc 600000 bc 64 eq 300000 16.468 ms/op 12.902 ms/op 1.28
computeDeltas 500000 validators 300 proto nodes 6.7892 ms/op 3.1954 ms/op 2.12
computeDeltas 500000 validators 1200 proto nodes 6.7708 ms/op 3.0137 ms/op 2.25
computeDeltas 500000 validators 7200 proto nodes 6.7053 ms/op 3.0959 ms/op 2.17
computeDeltas 750000 validators 300 proto nodes 10.361 ms/op 5.0625 ms/op 2.05
computeDeltas 750000 validators 1200 proto nodes 10.652 ms/op 4.8459 ms/op 2.20
computeDeltas 750000 validators 7200 proto nodes 10.568 ms/op 4.7813 ms/op 2.21
computeDeltas 1400000 validators 300 proto nodes 21.067 ms/op 9.9323 ms/op 2.12
computeDeltas 1400000 validators 1200 proto nodes 20.724 ms/op 9.8877 ms/op 2.10
computeDeltas 1400000 validators 7200 proto nodes 20.511 ms/op 9.5468 ms/op 2.15
computeDeltas 2100000 validators 300 proto nodes 30.047 ms/op 13.771 ms/op 2.18
computeDeltas 2100000 validators 1200 proto nodes 30.857 ms/op 15.710 ms/op 1.96
computeDeltas 2100000 validators 7200 proto nodes 31.797 ms/op 13.935 ms/op 2.28
altair processAttestation - 250000 vs - 7PWei normalcase 3.8860 ms/op 2.9739 ms/op 1.31
altair processAttestation - 250000 vs - 7PWei worstcase 5.1516 ms/op 4.4513 ms/op 1.16
altair processAttestation - setStatus - 1/6 committees join 203.50 us/op 153.09 us/op 1.33
altair processAttestation - setStatus - 1/3 committees join 401.06 us/op 273.33 us/op 1.47
altair processAttestation - setStatus - 1/2 committees join 537.14 us/op 387.68 us/op 1.39
altair processAttestation - setStatus - 2/3 committees join 636.36 us/op 492.95 us/op 1.29
altair processAttestation - setStatus - 4/5 committees join 882.44 us/op 694.17 us/op 1.27
altair processAttestation - setStatus - 100% committees join 1.1702 ms/op 711.49 us/op 1.64
altair processBlock - 250000 vs - 7PWei normalcase 13.523 ms/op 10.315 ms/op 1.31
altair processBlock - 250000 vs - 7PWei normalcase hashState 42.563 ms/op 33.528 ms/op 1.27
altair processBlock - 250000 vs - 7PWei worstcase 50.827 ms/op 45.038 ms/op 1.13
altair processBlock - 250000 vs - 7PWei worstcase hashState 125.78 ms/op 100.15 ms/op 1.26
phase0 processBlock - 250000 vs - 7PWei normalcase 3.4836 ms/op 3.1300 ms/op 1.11
phase0 processBlock - 250000 vs - 7PWei worstcase 44.377 ms/op 34.600 ms/op 1.28
altair processEth1Data - 250000 vs - 7PWei normalcase 757.05 us/op 600.53 us/op 1.26
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 21.977 us/op 15.111 us/op 1.45
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 70.013 us/op 84.787 us/op 0.83
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 40.283 us/op 19.130 us/op 2.11
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 25.228 us/op 14.440 us/op 1.75
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 301.44 us/op 174.41 us/op 1.73
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.4599 ms/op 1.4333 ms/op 1.02
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.9989 ms/op 1.4993 ms/op 1.33
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.9604 ms/op 1.6085 ms/op 1.22
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.8500 ms/op 2.8309 ms/op 1.36
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.9581 ms/op 2.3505 ms/op 1.26
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 6.0697 ms/op 5.7022 ms/op 1.06
Tree 40 250000 create 476.26 ms/op 239.63 ms/op 1.99
Tree 40 250000 get(125000) 214.09 ns/op 114.37 ns/op 1.87
Tree 40 250000 set(125000) 1.1089 us/op 749.16 ns/op 1.48
Tree 40 250000 toArray() 23.538 ms/op 12.332 ms/op 1.91
Tree 40 250000 iterate all - toArray() + loop 23.436 ms/op 11.615 ms/op 2.02
Tree 40 250000 iterate all - get(i) 79.450 ms/op 51.530 ms/op 1.54
MutableVector 250000 create 13.025 ms/op 9.3481 ms/op 1.39
MutableVector 250000 get(125000) 7.5170 ns/op 5.7960 ns/op 1.30
MutableVector 250000 set(125000) 273.75 ns/op 206.47 ns/op 1.33
MutableVector 250000 toArray() 3.3315 ms/op 2.1863 ms/op 1.52
MutableVector 250000 iterate all - toArray() + loop 3.7845 ms/op 2.7992 ms/op 1.35
MutableVector 250000 iterate all - get(i) 1.5661 ms/op 1.3490 ms/op 1.16
Array 250000 create 3.2894 ms/op 2.2961 ms/op 1.43
Array 250000 clone - spread 1.2260 ms/op 1.1998 ms/op 1.02
Array 250000 get(125000) 1.0500 ns/op 1.0520 ns/op 1.00
Array 250000 set(125000) 4.1930 ns/op 1.2950 ns/op 3.24
Array 250000 iterate all - loop 169.14 us/op 159.20 us/op 1.06
effectiveBalanceIncrements clone Uint8Array 300000 30.630 us/op 34.330 us/op 0.89
effectiveBalanceIncrements clone MutableVector 300000 362.00 ns/op 344.00 ns/op 1.05
effectiveBalanceIncrements rw all Uint8Array 300000 205.64 us/op 192.17 us/op 1.07
effectiveBalanceIncrements rw all MutableVector 300000 87.299 ms/op 76.871 ms/op 1.14
phase0 afterProcessEpoch - 250000 vs - 7PWei 116.50 ms/op 87.490 ms/op 1.33
phase0 beforeProcessEpoch - 250000 vs - 7PWei 53.987 ms/op 54.534 ms/op 0.99
altair processEpoch - mainnet_e81889 512.63 ms/op 482.09 ms/op 1.06
mainnet_e81889 - altair beforeProcessEpoch 86.590 ms/op 107.00 ms/op 0.81
mainnet_e81889 - altair processJustificationAndFinalization 16.219 us/op 12.034 us/op 1.35
mainnet_e81889 - altair processInactivityUpdates 5.9690 ms/op 4.5270 ms/op 1.32
mainnet_e81889 - altair processRewardsAndPenalties 64.442 ms/op 61.073 ms/op 1.06
mainnet_e81889 - altair processRegistryUpdates 2.5080 us/op 1.6960 us/op 1.48
mainnet_e81889 - altair processSlashings 417.00 ns/op 409.00 ns/op 1.02
mainnet_e81889 - altair processEth1DataReset 664.00 ns/op 578.00 ns/op 1.15
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.9581 ms/op 1.7586 ms/op 1.11
mainnet_e81889 - altair processSlashingsReset 5.3240 us/op 2.6250 us/op 2.03
mainnet_e81889 - altair processRandaoMixesReset 7.3130 us/op 4.4420 us/op 1.65
mainnet_e81889 - altair processHistoricalRootsUpdate 832.00 ns/op 672.00 ns/op 1.24
mainnet_e81889 - altair processParticipationFlagUpdates 2.4190 us/op 1.4470 us/op 1.67
mainnet_e81889 - altair processSyncCommitteeUpdates 980.00 ns/op 679.00 ns/op 1.44
mainnet_e81889 - altair afterProcessEpoch 123.52 ms/op 78.244 ms/op 1.58
capella processEpoch - mainnet_e217614 3.2011 s/op 1.9950 s/op 1.60
mainnet_e217614 - capella beforeProcessEpoch 618.03 ms/op 433.01 ms/op 1.43
mainnet_e217614 - capella processJustificationAndFinalization 16.287 us/op 15.797 us/op 1.03
mainnet_e217614 - capella processInactivityUpdates 25.861 ms/op 13.236 ms/op 1.95
mainnet_e217614 - capella processRewardsAndPenalties 472.74 ms/op 348.03 ms/op 1.36
mainnet_e217614 - capella processRegistryUpdates 28.212 us/op 16.118 us/op 1.75
mainnet_e217614 - capella processSlashings 637.00 ns/op 558.00 ns/op 1.14
mainnet_e217614 - capella processEth1DataReset 570.00 ns/op 567.00 ns/op 1.01
mainnet_e217614 - capella processEffectiveBalanceUpdates 4.9598 ms/op 3.9390 ms/op 1.26
mainnet_e217614 - capella processSlashingsReset 3.0720 us/op 2.1200 us/op 1.45
mainnet_e217614 - capella processRandaoMixesReset 6.1740 us/op 3.0100 us/op 2.05
mainnet_e217614 - capella processHistoricalRootsUpdate 480.00 ns/op 595.00 ns/op 0.81
mainnet_e217614 - capella processParticipationFlagUpdates 1.8340 us/op 1.0700 us/op 1.71
mainnet_e217614 - capella afterProcessEpoch 312.99 ms/op 206.48 ms/op 1.52
phase0 processEpoch - mainnet_e58758 463.25 ms/op 399.89 ms/op 1.16
mainnet_e58758 - phase0 beforeProcessEpoch 138.98 ms/op 122.77 ms/op 1.13
mainnet_e58758 - phase0 processJustificationAndFinalization 17.219 us/op 13.041 us/op 1.32
mainnet_e58758 - phase0 processRewardsAndPenalties 53.682 ms/op 54.429 ms/op 0.99
mainnet_e58758 - phase0 processRegistryUpdates 13.597 us/op 6.8130 us/op 2.00
mainnet_e58758 - phase0 processSlashings 569.00 ns/op 561.00 ns/op 1.01
mainnet_e58758 - phase0 processEth1DataReset 467.00 ns/op 503.00 ns/op 0.93
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.1738 ms/op 1.4222 ms/op 0.83
mainnet_e58758 - phase0 processSlashingsReset 5.0450 us/op 2.2090 us/op 2.28
mainnet_e58758 - phase0 processRandaoMixesReset 5.4710 us/op 2.5200 us/op 2.17
mainnet_e58758 - phase0 processHistoricalRootsUpdate 741.00 ns/op 477.00 ns/op 1.55
mainnet_e58758 - phase0 processParticipationRecordUpdates 6.1570 us/op 2.6490 us/op 2.32
mainnet_e58758 - phase0 afterProcessEpoch 102.09 ms/op 64.066 ms/op 1.59
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.5928 ms/op 1.5673 ms/op 1.02
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.6622 ms/op 1.1532 ms/op 1.44
altair processInactivityUpdates - 250000 normalcase 40.603 ms/op 35.040 ms/op 1.16
altair processInactivityUpdates - 250000 worstcase 36.467 ms/op 28.431 ms/op 1.28
phase0 processRegistryUpdates - 250000 normalcase 15.612 us/op 6.0080 us/op 2.60
phase0 processRegistryUpdates - 250000 badcase_full_deposits 451.77 us/op 415.29 us/op 1.09
phase0 processRegistryUpdates - 250000 worstcase 0.5 169.66 ms/op 113.13 ms/op 1.50
altair processRewardsAndPenalties - 250000 normalcase 66.729 ms/op 48.369 ms/op 1.38
altair processRewardsAndPenalties - 250000 worstcase 63.986 ms/op 52.640 ms/op 1.22
phase0 getAttestationDeltas - 250000 normalcase 12.996 ms/op 5.7126 ms/op 2.27
phase0 getAttestationDeltas - 250000 worstcase 15.035 ms/op 5.7972 ms/op 2.59
phase0 processSlashings - 250000 worstcase 110.88 us/op 83.918 us/op 1.32
altair processSyncCommitteeUpdates - 250000 177.22 ms/op 105.03 ms/op 1.69
BeaconState.hashTreeRoot - No change 582.00 ns/op 374.00 ns/op 1.56
BeaconState.hashTreeRoot - 1 full validator 146.49 us/op 120.41 us/op 1.22
BeaconState.hashTreeRoot - 32 full validator 1.4545 ms/op 1.4568 ms/op 1.00
BeaconState.hashTreeRoot - 512 full validator 15.934 ms/op 14.841 ms/op 1.07
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 160.26 us/op 171.26 us/op 0.94
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.4983 ms/op 2.5523 ms/op 0.98
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 29.015 ms/op 27.117 ms/op 1.07
BeaconState.hashTreeRoot - 1 balances 122.33 us/op 130.13 us/op 0.94
BeaconState.hashTreeRoot - 32 balances 1.0912 ms/op 1.1432 ms/op 0.95
BeaconState.hashTreeRoot - 512 balances 11.465 ms/op 10.696 ms/op 1.07
BeaconState.hashTreeRoot - 250000 balances 230.99 ms/op 189.42 ms/op 1.22
aggregationBits - 2048 els - zipIndexesInBitList 26.961 us/op 10.196 us/op 2.64
byteArrayEquals 32 95.159 ns/op 64.589 ns/op 1.47
Buffer.compare 32 63.989 ns/op 37.653 ns/op 1.70
byteArrayEquals 1024 2.8083 us/op 1.6150 us/op 1.74
Buffer.compare 1024 86.813 ns/op 39.792 ns/op 2.18
byteArrayEquals 16384 45.867 us/op 25.726 us/op 1.78
Buffer.compare 16384 311.49 ns/op 182.98 ns/op 1.70
byteArrayEquals 123687377 256.84 ms/op 201.97 ms/op 1.27
Buffer.compare 123687377 7.0448 ms/op 5.4569 ms/op 1.29
byteArrayEquals 32 - diff last byte 74.654 ns/op 57.524 ns/op 1.30
Buffer.compare 32 - diff last byte 57.598 ns/op 34.401 ns/op 1.67
byteArrayEquals 1024 - diff last byte 2.1128 us/op 1.5956 us/op 1.32
Buffer.compare 1024 - diff last byte 73.937 ns/op 41.666 ns/op 1.77
byteArrayEquals 16384 - diff last byte 33.111 us/op 25.264 us/op 1.31
Buffer.compare 16384 - diff last byte 285.93 ns/op 199.40 ns/op 1.43
byteArrayEquals 123687377 - diff last byte 251.90 ms/op 202.06 ms/op 1.25
Buffer.compare 123687377 - diff last byte 8.5048 ms/op 4.3933 ms/op 1.94
byteArrayEquals 32 - random bytes 5.6860 ns/op 4.7590 ns/op 1.19
Buffer.compare 32 - random bytes 63.056 ns/op 38.096 ns/op 1.66
byteArrayEquals 1024 - random bytes 5.5970 ns/op 4.9880 ns/op 1.12
Buffer.compare 1024 - random bytes 62.327 ns/op 36.902 ns/op 1.69
byteArrayEquals 16384 - random bytes 5.4040 ns/op 4.5340 ns/op 1.19
Buffer.compare 16384 - random bytes 61.311 ns/op 36.029 ns/op 1.70
byteArrayEquals 123687377 - random bytes 9.0800 ns/op 7.6200 ns/op 1.19
Buffer.compare 123687377 - random bytes 68.660 ns/op 37.550 ns/op 1.83
regular array get 100000 times 46.137 us/op 39.070 us/op 1.18
wrappedArray get 100000 times 46.174 us/op 39.056 us/op 1.18
arrayWithProxy get 100000 times 14.393 ms/op 9.2563 ms/op 1.55
ssz.Root.equals 54.853 ns/op 54.260 ns/op 1.01
byteArrayEquals 54.551 ns/op 54.392 ns/op 1.00
Buffer.compare 12.137 ns/op 9.3740 ns/op 1.29
shuffle list - 16384 els 7.0916 ms/op 4.4138 ms/op 1.61
shuffle list - 250000 els 104.51 ms/op 67.049 ms/op 1.56
processSlot - 1 slots 18.939 us/op 15.062 us/op 1.26
processSlot - 32 slots 3.8441 ms/op 3.4781 ms/op 1.11
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 60.175 ms/op 51.797 ms/op 1.16
getCommitteeAssignments - req 1 vs - 250000 vc 2.4865 ms/op 2.2388 ms/op 1.11
getCommitteeAssignments - req 100 vs - 250000 vc 3.6887 ms/op 3.5644 ms/op 1.03
getCommitteeAssignments - req 1000 vs - 250000 vc 4.1523 ms/op 3.7360 ms/op 1.11
findModifiedValidators - 10000 modified validators 568.35 ms/op 434.75 ms/op 1.31
findModifiedValidators - 1000 modified validators 560.96 ms/op 360.01 ms/op 1.56
findModifiedValidators - 100 modified validators 549.86 ms/op 332.34 ms/op 1.65
findModifiedValidators - 10 modified validators 534.99 ms/op 369.31 ms/op 1.45
findModifiedValidators - 1 modified validators 544.94 ms/op 334.64 ms/op 1.63
findModifiedValidators - no difference 466.46 ms/op 320.15 ms/op 1.46
compare ViewDUs 5.0544 s/op 3.9644 s/op 1.27
compare each validator Uint8Array 1.8753 s/op 1.3125 s/op 1.43
compare ViewDU to Uint8Array 1.2154 s/op 840.49 ms/op 1.45
migrate state 1000000 validators, 24 modified, 0 new 798.74 ms/op 705.71 ms/op 1.13
migrate state 1000000 validators, 1700 modified, 1000 new 1.0894 s/op 1.0161 s/op 1.07
migrate state 1000000 validators, 3400 modified, 2000 new 1.2865 s/op 1.2924 s/op 1.00
migrate state 1500000 validators, 24 modified, 0 new 786.27 ms/op 816.42 ms/op 0.96
migrate state 1500000 validators, 1700 modified, 1000 new 1.0564 s/op 962.08 ms/op 1.10
migrate state 1500000 validators, 3400 modified, 2000 new 1.3341 s/op 1.2016 s/op 1.11
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.2700 ns/op 4.3600 ns/op 0.98
state getBlockRootAtSlot - 250000 vs - 7PWei 878.44 ns/op 727.55 ns/op 1.21
computeProposers - vc 250000 9.7925 ms/op 5.9788 ms/op 1.64
computeEpochShuffling - vc 250000 104.56 ms/op 67.905 ms/op 1.54
getNextSyncCommittee - vc 250000 173.09 ms/op 113.06 ms/op 1.53
computeSigningRoot for AttestationData 28.970 us/op 24.112 us/op 1.20
hash AttestationData serialized data then Buffer.toString(base64) 2.3534 us/op 1.2361 us/op 1.90
toHexString serialized data 1.1553 us/op 805.99 ns/op 1.43
Buffer.toString(base64) 238.91 ns/op 152.26 ns/op 1.57

by benchmarkbot/action

Copy link
Member

@nflaig nflaig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Prover docs definitely need some love, but this needs to be done more thoroughly.

packages/prover/README.md Outdated Show resolved Hide resolved
packages/prover/README.md Show resolved Hide resolved
packages/prover/README.md Outdated Show resolved Hide resolved
@@ -53,15 +53,15 @@ export const startOptions: CliCommandOptions<StartArgs> = {
},

beaconUrls: {
description: "The beacon node PRC urls for 'rest' mode.",
description: "The beacon node RPC urls for 'rest' mode.",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The beacon node exposes a REST API and does not implement RPC, this is different from execution clients.
The description also reference the mode 'rest' which doesn't even exist?

Copy link
Contributor Author

@jeluard jeluard Feb 14, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RPC is a pretty generic term (unlike JSON-RPC), so I took it in this way. Can probably be just removed.
Mention of mode looks like a left-over from previous refactoring.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It even says that for the bootnodes for p2p which we don't even implement? Looks like it was just copy-pasted around without much thought

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RPC is not generic term, it refers to a certain standard which obviously is not what beacon node APIs complies with. So better to remove that term here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would suggest to remove the beaconBootnodes option for now in a following PR, as it's not supported (even so it shows a proper error message when used). Would help to clarify for users the available options.

packages/prover/README.md Show resolved Hide resolved
@@ -37,13 +37,12 @@ console.log({balance, address});
You can also invoke the package as binary.

```bash
npm -i g @lodestar/prover
npm i -g @lodestar/prover
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice catch

@matthewkeil matthewkeil requested review from matthewkeil and removed request for matthewkeil February 15, 2024 04:34
matthewkeil
matthewkeil previously approved these changes Feb 15, 2024
Copy link
Member

@matthewkeil matthewkeil left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

grrr github. was trying to remove the request changes but didnt work. approving as just agreed with @nflaig so fixing his will also fix mine

Comment on lines 63 to 64
beaconBootnodes: {
description: "The beacon node PRC urls for 'p2p' mode.",
description: "Urls of beacon bootnodes to connect to.",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am a bit confused what is meant by beaconBootnodes, on the one hand in the tests is passes a URL

"--beaconBootnodes",
"http://localhost:0000",

But if those are bootnodes, you would not pass a URL here but an ENR and not connect to them but use them for peer discovery.

This option also give users a false assumption that you can run the light client in p2p mode but this is not even implemented.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right, I agree it's confusing.
My preference would be:

  • do not touch the beaconBootnodes as part of this PR
  • remove the beaconBootnodes CLI option in a follow up PR

It's pretty easy to restore this option once it's actually supporte. It also reduces potential user confusion that might see this option exist but not clearly understand that it's not supported because not yet implemented.

I let @nazarhussain shim in if he feels like it should be kept.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd agree, let's remove any changes to beaconBootnodes from this PR and remove it separately to have more visibility on it

Copy link
Member

@nflaig nflaig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jeluard jeluard merged commit 0e01efd into unstable Feb 16, 2024
13 of 15 checks passed
@jeluard jeluard deleted the jeluard/prover-typo branch February 16, 2024 13:37
@wemeetagain
Copy link
Member

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

5 participants