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

docs: update api package readme example #6915

Merged
merged 1 commit into from
Jun 27, 2024
Merged

Conversation

nflaig
Copy link
Member

@nflaig nflaig commented Jun 27, 2024

Motivation

Adapt example after refactoring done in #6749.

Description

Update api package readme example

@nflaig nflaig requested a review from a team as a code owner June 27, 2024 11:33
Copy link

codecov bot commented Jun 27, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 62.55%. Comparing base (8cb08ff) to head (6d2d25b).

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #6915   +/-   ##
=========================================
  Coverage     62.55%   62.55%           
=========================================
  Files           575      575           
  Lines         61045    61045           
  Branches       2117     2120    +3     
=========================================
  Hits          38186    38186           
  Misses        22820    22820           
  Partials         39       39           

Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 24bde23 Previous: 8cb08ff Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 970.15 us/op 512.16 us/op 1.89
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 49.233 us/op 52.922 us/op 0.93
BLS verify - blst-native 1.2235 ms/op 1.2685 ms/op 0.96
BLS verifyMultipleSignatures 3 - blst-native 2.5933 ms/op 2.7120 ms/op 0.96
BLS verifyMultipleSignatures 8 - blst-native 5.7164 ms/op 6.2377 ms/op 0.92
BLS verifyMultipleSignatures 32 - blst-native 20.990 ms/op 21.928 ms/op 0.96
BLS verifyMultipleSignatures 64 - blst-native 41.931 ms/op 43.220 ms/op 0.97
BLS verifyMultipleSignatures 128 - blst-native 83.293 ms/op 85.380 ms/op 0.98
BLS deserializing 10000 signatures 861.12 ms/op 880.27 ms/op 0.98
BLS deserializing 100000 signatures 8.6657 s/op 9.1411 s/op 0.95
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.1954 ms/op 1.4734 ms/op 0.81
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.4201 ms/op 1.4626 ms/op 0.97
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.2157 ms/op 2.2858 ms/op 0.97
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.2727 ms/op 3.3979 ms/op 0.96
BLS verifyMultipleSignatures - same message - 128 - blst-native 5.3939 ms/op 5.6372 ms/op 0.96
BLS aggregatePubkeys 32 - blst-native 25.130 us/op 27.246 us/op 0.92
BLS aggregatePubkeys 128 - blst-native 97.574 us/op 104.98 us/op 0.93
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 75.874 ms/op 117.82 ms/op 0.64
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 68.027 ms/op 88.175 ms/op 0.77
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 34.521 ms/op 48.857 ms/op 0.71
getSlashingsAndExits - default max 96.059 us/op 229.04 us/op 0.42
getSlashingsAndExits - 2k 305.55 us/op 329.09 us/op 0.93
proposeBlockBody type=full, size=empty 5.8432 ms/op 5.9373 ms/op 0.98
isKnown best case - 1 super set check 287.00 ns/op 358.00 ns/op 0.80
isKnown normal case - 2 super set checks 286.00 ns/op 364.00 ns/op 0.79
isKnown worse case - 16 super set checks 276.00 ns/op 431.00 ns/op 0.64
InMemoryCheckpointStateCache - add get delete 4.6820 us/op 6.2000 us/op 0.76
validate api signedAggregateAndProof - struct 2.7146 ms/op 2.7497 ms/op 0.99
validate gossip signedAggregateAndProof - struct 2.6922 ms/op 2.7804 ms/op 0.97
validate gossip attestation - vc 640000 1.3001 ms/op 1.3453 ms/op 0.97
batch validate gossip attestation - vc 640000 - chunk 32 158.63 us/op 168.19 us/op 0.94
batch validate gossip attestation - vc 640000 - chunk 64 149.63 us/op 142.56 us/op 1.05
batch validate gossip attestation - vc 640000 - chunk 128 136.32 us/op 129.18 us/op 1.06
batch validate gossip attestation - vc 640000 - chunk 256 130.45 us/op 130.02 us/op 1.00
pickEth1Vote - no votes 1.2048 ms/op 1.1812 ms/op 1.02
pickEth1Vote - max votes 9.7898 ms/op 9.4035 ms/op 1.04
pickEth1Vote - Eth1Data hashTreeRoot value x2048 18.017 ms/op 14.288 ms/op 1.26
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 20.435 ms/op 19.294 ms/op 1.06
pickEth1Vote - Eth1Data fastSerialize value x2048 555.44 us/op 506.48 us/op 1.10
pickEth1Vote - Eth1Data fastSerialize tree x2048 4.0399 ms/op 3.9629 ms/op 1.02
bytes32 toHexString 526.00 ns/op 482.00 ns/op 1.09
bytes32 Buffer.toString(hex) 273.00 ns/op 256.00 ns/op 1.07
bytes32 Buffer.toString(hex) from Uint8Array 410.00 ns/op 429.00 ns/op 0.96
bytes32 Buffer.toString(hex) + 0x 248.00 ns/op 259.00 ns/op 0.96
Object access 1 prop 0.16000 ns/op 0.15000 ns/op 1.07
Map access 1 prop 0.14000 ns/op 0.14800 ns/op 0.95
Object get x1000 6.5090 ns/op 6.2920 ns/op 1.03
Map get x1000 6.7250 ns/op 6.6470 ns/op 1.01
Object set x1000 40.435 ns/op 40.221 ns/op 1.01
Map set x1000 28.216 ns/op 24.523 ns/op 1.15
Return object 10000 times 0.30710 ns/op 0.31090 ns/op 0.99
Throw Error 10000 times 3.5503 us/op 3.5789 us/op 0.99
fastMsgIdFn sha256 / 200 bytes 2.4460 us/op 2.4260 us/op 1.01
fastMsgIdFn h32 xxhash / 200 bytes 283.00 ns/op 300.00 ns/op 0.94
fastMsgIdFn h64 xxhash / 200 bytes 294.00 ns/op 280.00 ns/op 1.05
fastMsgIdFn sha256 / 1000 bytes 8.4760 us/op 7.7530 us/op 1.09
fastMsgIdFn h32 xxhash / 1000 bytes 457.00 ns/op 430.00 ns/op 1.06
fastMsgIdFn h64 xxhash / 1000 bytes 379.00 ns/op 355.00 ns/op 1.07
fastMsgIdFn sha256 / 10000 bytes 68.312 us/op 67.572 us/op 1.01
fastMsgIdFn h32 xxhash / 10000 bytes 2.0120 us/op 1.9540 us/op 1.03
fastMsgIdFn h64 xxhash / 10000 bytes 1.3500 us/op 1.2440 us/op 1.09
send data - 1000 256B messages 15.344 ms/op 14.346 ms/op 1.07
send data - 1000 512B messages 19.933 ms/op 19.241 ms/op 1.04
send data - 1000 1024B messages 29.535 ms/op 27.767 ms/op 1.06
send data - 1000 1200B messages 30.587 ms/op 29.112 ms/op 1.05
send data - 1000 2048B messages 35.781 ms/op 35.354 ms/op 1.01
send data - 1000 4096B messages 36.645 ms/op 34.994 ms/op 1.05
send data - 1000 16384B messages 87.701 ms/op 77.988 ms/op 1.12
send data - 1000 65536B messages 255.11 ms/op 214.44 ms/op 1.19
enrSubnets - fastDeserialize 64 bits 1.3380 us/op 1.2640 us/op 1.06
enrSubnets - ssz BitVector 64 bits 461.00 ns/op 419.00 ns/op 1.10
enrSubnets - fastDeserialize 4 bits 220.00 ns/op 194.00 ns/op 1.13
enrSubnets - ssz BitVector 4 bits 476.00 ns/op 417.00 ns/op 1.14
prioritizePeers score -10:0 att 32-0.1 sync 2-0 229.00 us/op 159.58 us/op 1.43
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 195.30 us/op 189.04 us/op 1.03
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 385.90 us/op 279.24 us/op 1.38
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 519.37 us/op 452.19 us/op 1.15
prioritizePeers score 0:0 att 64-1 sync 4-1 962.18 us/op 653.60 us/op 1.47
array of 16000 items push then shift 1.8394 us/op 1.6961 us/op 1.08
LinkedList of 16000 items push then shift 8.8280 ns/op 7.4700 ns/op 1.18
array of 16000 items push then pop 139.48 ns/op 125.73 ns/op 1.11
LinkedList of 16000 items push then pop 7.9800 ns/op 7.4480 ns/op 1.07
array of 24000 items push then shift 2.6620 us/op 2.5110 us/op 1.06
LinkedList of 24000 items push then shift 8.3380 ns/op 7.5860 ns/op 1.10
array of 24000 items push then pop 180.04 ns/op 168.94 ns/op 1.07
LinkedList of 24000 items push then pop 8.0480 ns/op 8.5620 ns/op 0.94
intersect bitArray bitLen 8 7.2870 ns/op 7.1940 ns/op 1.01
intersect array and set length 8 67.128 ns/op 50.250 ns/op 1.34
intersect bitArray bitLen 128 32.354 ns/op 32.219 ns/op 1.00
intersect array and set length 128 981.57 ns/op 804.14 ns/op 1.22
bitArray.getTrueBitIndexes() bitLen 128 2.6260 us/op 1.6680 us/op 1.57
bitArray.getTrueBitIndexes() bitLen 248 4.5330 us/op 2.8610 us/op 1.58
bitArray.getTrueBitIndexes() bitLen 512 10.129 us/op 5.6520 us/op 1.79
Buffer.concat 32 items 1.1770 us/op 1.0530 us/op 1.12
Uint8Array.set 32 items 2.0660 us/op 1.6480 us/op 1.25
Buffer.copy 2.3700 us/op 2.0870 us/op 1.14
Uint8Array.set - with subarray 3.7660 us/op 3.1450 us/op 1.20
Uint8Array.set - without subarray 1.9570 us/op 2.1470 us/op 0.91
Set add up to 64 items then delete first 3.2034 us/op 2.4040 us/op 1.33
OrderedSet add up to 64 items then delete first 4.9997 us/op 3.8233 us/op 1.31
Set add up to 64 items then delete last 3.6867 us/op 2.8666 us/op 1.29
OrderedSet add up to 64 items then delete last 5.5819 us/op 4.0678 us/op 1.37
Set add up to 64 items then delete middle 3.7262 us/op 2.9891 us/op 1.25
OrderedSet add up to 64 items then delete middle 7.3450 us/op 5.5580 us/op 1.32
Set add up to 128 items then delete first 7.6350 us/op 6.1967 us/op 1.23
OrderedSet add up to 128 items then delete first 12.129 us/op 9.2171 us/op 1.32
Set add up to 128 items then delete last 7.4502 us/op 5.9352 us/op 1.26
OrderedSet add up to 128 items then delete last 10.953 us/op 9.9482 us/op 1.10
Set add up to 128 items then delete middle 6.8955 us/op 6.5788 us/op 1.05
OrderedSet add up to 128 items then delete middle 18.057 us/op 16.918 us/op 1.07
Set add up to 256 items then delete first 15.370 us/op 13.968 us/op 1.10
OrderedSet add up to 256 items then delete first 23.506 us/op 18.672 us/op 1.26
Set add up to 256 items then delete last 14.332 us/op 12.917 us/op 1.11
OrderedSet add up to 256 items then delete last 22.052 us/op 18.707 us/op 1.18
Set add up to 256 items then delete middle 15.081 us/op 12.528 us/op 1.20
OrderedSet add up to 256 items then delete middle 52.175 us/op 46.636 us/op 1.12
transfer serialized Status (84 B) 1.6110 us/op 1.6150 us/op 1.00
copy serialized Status (84 B) 1.3900 us/op 1.3580 us/op 1.02
transfer serialized SignedVoluntaryExit (112 B) 1.6880 us/op 1.7250 us/op 0.98
copy serialized SignedVoluntaryExit (112 B) 1.4370 us/op 1.3390 us/op 1.07
transfer serialized ProposerSlashing (416 B) 2.2390 us/op 2.5470 us/op 0.88
copy serialized ProposerSlashing (416 B) 2.2910 us/op 2.7390 us/op 0.84
transfer serialized Attestation (485 B) 2.3230 us/op 2.4160 us/op 0.96
copy serialized Attestation (485 B) 2.3070 us/op 2.5210 us/op 0.92
transfer serialized AttesterSlashing (33232 B) 2.6120 us/op 2.3410 us/op 1.12
copy serialized AttesterSlashing (33232 B) 11.255 us/op 7.8020 us/op 1.44
transfer serialized Small SignedBeaconBlock (128000 B) 2.8600 us/op 3.0030 us/op 0.95
copy serialized Small SignedBeaconBlock (128000 B) 33.924 us/op 22.073 us/op 1.54
transfer serialized Avg SignedBeaconBlock (200000 B) 3.1790 us/op 3.9160 us/op 0.81
copy serialized Avg SignedBeaconBlock (200000 B) 91.258 us/op 29.607 us/op 3.08
transfer serialized BlobsSidecar (524380 B) 4.9880 us/op 3.7580 us/op 1.33
copy serialized BlobsSidecar (524380 B) 175.34 us/op 140.72 us/op 1.25
transfer serialized Big SignedBeaconBlock (1000000 B) 4.9420 us/op 4.4420 us/op 1.11
copy serialized Big SignedBeaconBlock (1000000 B) 265.52 us/op 210.33 us/op 1.26
pass gossip attestations to forkchoice per slot 4.2584 ms/op 3.2589 ms/op 1.31
forkChoice updateHead vc 100000 bc 64 eq 0 599.30 us/op 521.16 us/op 1.15
forkChoice updateHead vc 600000 bc 64 eq 0 4.2893 ms/op 4.1609 ms/op 1.03
forkChoice updateHead vc 1000000 bc 64 eq 0 7.6559 ms/op 6.1514 ms/op 1.24
forkChoice updateHead vc 600000 bc 320 eq 0 4.1316 ms/op 3.3919 ms/op 1.22
forkChoice updateHead vc 600000 bc 1200 eq 0 3.9631 ms/op 3.5644 ms/op 1.11
forkChoice updateHead vc 600000 bc 7200 eq 0 5.0058 ms/op 4.0178 ms/op 1.25
forkChoice updateHead vc 600000 bc 64 eq 1000 11.956 ms/op 11.662 ms/op 1.03
forkChoice updateHead vc 600000 bc 64 eq 10000 11.926 ms/op 11.331 ms/op 1.05
forkChoice updateHead vc 600000 bc 64 eq 300000 16.530 ms/op 23.090 ms/op 0.72
computeDeltas 500000 validators 300 proto nodes 4.3881 ms/op 4.3691 ms/op 1.00
computeDeltas 500000 validators 1200 proto nodes 4.0642 ms/op 4.7592 ms/op 0.85
computeDeltas 500000 validators 7200 proto nodes 4.1308 ms/op 4.4505 ms/op 0.93
computeDeltas 750000 validators 300 proto nodes 5.7064 ms/op 5.5877 ms/op 1.02
computeDeltas 750000 validators 1200 proto nodes 5.6080 ms/op 5.7548 ms/op 0.97
computeDeltas 750000 validators 7200 proto nodes 5.8175 ms/op 5.8303 ms/op 1.00
computeDeltas 1400000 validators 300 proto nodes 11.638 ms/op 10.517 ms/op 1.11
computeDeltas 1400000 validators 1200 proto nodes 11.543 ms/op 10.867 ms/op 1.06
computeDeltas 1400000 validators 7200 proto nodes 10.442 ms/op 11.474 ms/op 0.91
computeDeltas 2100000 validators 300 proto nodes 15.666 ms/op 18.107 ms/op 0.87
computeDeltas 2100000 validators 1200 proto nodes 15.281 ms/op 20.169 ms/op 0.76
computeDeltas 2100000 validators 7200 proto nodes 15.667 ms/op 18.247 ms/op 0.86
altair processAttestation - 250000 vs - 7PWei normalcase 1.7530 ms/op 2.8655 ms/op 0.61
altair processAttestation - 250000 vs - 7PWei worstcase 2.5944 ms/op 3.4938 ms/op 0.74
altair processAttestation - setStatus - 1/6 committees join 109.11 us/op 142.64 us/op 0.76
altair processAttestation - setStatus - 1/3 committees join 199.94 us/op 259.36 us/op 0.77
altair processAttestation - setStatus - 1/2 committees join 252.91 us/op 378.15 us/op 0.67
altair processAttestation - setStatus - 2/3 committees join 375.32 us/op 460.29 us/op 0.82
altair processAttestation - setStatus - 4/5 committees join 506.37 us/op 657.73 us/op 0.77
altair processAttestation - setStatus - 100% committees join 608.68 us/op 792.31 us/op 0.77
altair processBlock - 250000 vs - 7PWei normalcase 5.6507 ms/op 4.7554 ms/op 1.19
altair processBlock - 250000 vs - 7PWei normalcase hashState 28.427 ms/op 30.897 ms/op 0.92
altair processBlock - 250000 vs - 7PWei worstcase 47.388 ms/op 48.156 ms/op 0.98
altair processBlock - 250000 vs - 7PWei worstcase hashState 87.858 ms/op 88.419 ms/op 0.99
phase0 processBlock - 250000 vs - 7PWei normalcase 2.4307 ms/op 2.8621 ms/op 0.85
phase0 processBlock - 250000 vs - 7PWei worstcase 30.766 ms/op 30.536 ms/op 1.01
altair processEth1Data - 250000 vs - 7PWei normalcase 395.53 us/op 391.14 us/op 1.01
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 7.6860 us/op 7.7250 us/op 0.99
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 32.540 us/op 27.056 us/op 1.20
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 10.641 us/op 12.743 us/op 0.84
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 6.9170 us/op 9.2640 us/op 0.75
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 144.19 us/op 149.26 us/op 0.97
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 731.24 us/op 798.23 us/op 0.92
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.2759 ms/op 1.1867 ms/op 1.08
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.0078 ms/op 1.1645 ms/op 0.87
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.5207 ms/op 2.5502 ms/op 0.99
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.2781 ms/op 2.0610 ms/op 1.11
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 4.0274 ms/op 4.5036 ms/op 0.89
Tree 40 250000 create 238.27 ms/op 260.90 ms/op 0.91
Tree 40 250000 get(125000) 148.75 ns/op 166.49 ns/op 0.89
Tree 40 250000 set(125000) 688.61 ns/op 768.87 ns/op 0.90
Tree 40 250000 toArray() 18.867 ms/op 21.085 ms/op 0.89
Tree 40 250000 iterate all - toArray() + loop 14.950 ms/op 19.344 ms/op 0.77
Tree 40 250000 iterate all - get(i) 50.885 ms/op 58.681 ms/op 0.87
MutableVector 250000 create 13.179 ms/op 10.160 ms/op 1.30
MutableVector 250000 get(125000) 6.2690 ns/op 11.924 ns/op 0.53
MutableVector 250000 set(125000) 195.21 ns/op 212.76 ns/op 0.92
MutableVector 250000 toArray() 3.8887 ms/op 3.9661 ms/op 0.98
MutableVector 250000 iterate all - toArray() + loop 4.0132 ms/op 3.9903 ms/op 1.01
MutableVector 250000 iterate all - get(i) 1.8853 ms/op 1.6893 ms/op 1.12
Array 250000 create 3.4733 ms/op 3.1815 ms/op 1.09
Array 250000 clone - spread 1.4336 ms/op 1.3949 ms/op 1.03
Array 250000 get(125000) 0.41000 ns/op 0.42600 ns/op 0.96
Array 250000 set(125000) 0.42900 ns/op 0.44300 ns/op 0.97
Array 250000 iterate all - loop 106.80 us/op 86.300 us/op 1.24
effectiveBalanceIncrements clone Uint8Array 300000 28.817 us/op 36.500 us/op 0.79
effectiveBalanceIncrements clone MutableVector 300000 121.00 ns/op 126.00 ns/op 0.96
effectiveBalanceIncrements rw all Uint8Array 300000 177.36 us/op 204.11 us/op 0.87
effectiveBalanceIncrements rw all MutableVector 300000 67.163 ms/op 80.371 ms/op 0.84
phase0 afterProcessEpoch - 250000 vs - 7PWei 84.463 ms/op 92.844 ms/op 0.91
phase0 beforeProcessEpoch - 250000 vs - 7PWei 44.468 ms/op 42.567 ms/op 1.04
altair processEpoch - mainnet_e81889 412.66 ms/op 453.51 ms/op 0.91
mainnet_e81889 - altair beforeProcessEpoch 66.290 ms/op 71.026 ms/op 0.93
mainnet_e81889 - altair processJustificationAndFinalization 22.388 us/op 19.023 us/op 1.18
mainnet_e81889 - altair processInactivityUpdates 5.9322 ms/op 7.4185 ms/op 0.80
mainnet_e81889 - altair processRewardsAndPenalties 57.657 ms/op 54.610 ms/op 1.06
mainnet_e81889 - altair processRegistryUpdates 2.8520 us/op 2.6370 us/op 1.08
mainnet_e81889 - altair processSlashings 697.00 ns/op 658.00 ns/op 1.06
mainnet_e81889 - altair processEth1DataReset 523.00 ns/op 587.00 ns/op 0.89
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.9226 ms/op 2.2126 ms/op 1.32
mainnet_e81889 - altair processSlashingsReset 2.6710 us/op 3.9370 us/op 0.68
mainnet_e81889 - altair processRandaoMixesReset 5.1640 us/op 7.2480 us/op 0.71
mainnet_e81889 - altair processHistoricalRootsUpdate 716.00 ns/op 634.00 ns/op 1.13
mainnet_e81889 - altair processParticipationFlagUpdates 2.6100 us/op 3.0200 us/op 0.86
mainnet_e81889 - altair processSyncCommitteeUpdates 597.00 ns/op 422.00 ns/op 1.41
mainnet_e81889 - altair afterProcessEpoch 91.531 ms/op 95.619 ms/op 0.96
capella processEpoch - mainnet_e217614 1.3411 s/op 1.5241 s/op 0.88
mainnet_e217614 - capella beforeProcessEpoch 237.30 ms/op 307.40 ms/op 0.77
mainnet_e217614 - capella processJustificationAndFinalization 19.011 us/op 24.349 us/op 0.78
mainnet_e217614 - capella processInactivityUpdates 19.441 ms/op 20.315 ms/op 0.96
mainnet_e217614 - capella processRewardsAndPenalties 265.95 ms/op 253.57 ms/op 1.05
mainnet_e217614 - capella processRegistryUpdates 19.600 us/op 27.355 us/op 0.72
mainnet_e217614 - capella processSlashings 722.00 ns/op 862.00 ns/op 0.84
mainnet_e217614 - capella processEth1DataReset 513.00 ns/op 1.1810 us/op 0.43
mainnet_e217614 - capella processEffectiveBalanceUpdates 4.9575 ms/op 4.3216 ms/op 1.15
mainnet_e217614 - capella processSlashingsReset 5.7220 us/op 6.7000 us/op 0.85
mainnet_e217614 - capella processRandaoMixesReset 5.8770 us/op 8.4330 us/op 0.70
mainnet_e217614 - capella processHistoricalRootsUpdate 615.00 ns/op 1.2130 us/op 0.51
mainnet_e217614 - capella processParticipationFlagUpdates 4.2330 us/op 5.0960 us/op 0.83
mainnet_e217614 - capella afterProcessEpoch 284.34 ms/op 364.51 ms/op 0.78
phase0 processEpoch - mainnet_e58758 399.95 ms/op 519.46 ms/op 0.77
mainnet_e58758 - phase0 beforeProcessEpoch 116.72 ms/op 180.67 ms/op 0.65
mainnet_e58758 - phase0 processJustificationAndFinalization 22.042 us/op 35.434 us/op 0.62
mainnet_e58758 - phase0 processRewardsAndPenalties 33.699 ms/op 46.268 ms/op 0.73
mainnet_e58758 - phase0 processRegistryUpdates 10.209 us/op 21.155 us/op 0.48
mainnet_e58758 - phase0 processSlashings 561.00 ns/op 1.1210 us/op 0.50
mainnet_e58758 - phase0 processEth1DataReset 491.00 ns/op 1.1960 us/op 0.41
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.1875 ms/op 1.4624 ms/op 0.81
mainnet_e58758 - phase0 processSlashingsReset 3.9810 us/op 7.5180 us/op 0.53
mainnet_e58758 - phase0 processRandaoMixesReset 6.0370 us/op 17.020 us/op 0.35
mainnet_e58758 - phase0 processHistoricalRootsUpdate 931.00 ns/op 1.8460 us/op 0.50
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.7630 us/op 7.8430 us/op 0.61
mainnet_e58758 - phase0 afterProcessEpoch 74.996 ms/op 97.829 ms/op 0.77
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.2676 ms/op 2.1485 ms/op 0.59
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.1648 ms/op 5.5777 ms/op 0.39
altair processInactivityUpdates - 250000 normalcase 21.244 ms/op 44.582 ms/op 0.48
altair processInactivityUpdates - 250000 worstcase 20.208 ms/op 41.648 ms/op 0.49
phase0 processRegistryUpdates - 250000 normalcase 6.9780 us/op 24.392 us/op 0.29
phase0 processRegistryUpdates - 250000 badcase_full_deposits 323.53 us/op 575.85 us/op 0.56
phase0 processRegistryUpdates - 250000 worstcase 0.5 140.58 ms/op 248.18 ms/op 0.57
altair processRewardsAndPenalties - 250000 normalcase 43.628 ms/op 69.419 ms/op 0.63
altair processRewardsAndPenalties - 250000 worstcase 45.860 ms/op 62.825 ms/op 0.73
phase0 getAttestationDeltas - 250000 normalcase 7.0623 ms/op 9.0118 ms/op 0.78
phase0 getAttestationDeltas - 250000 worstcase 7.2647 ms/op 12.416 ms/op 0.59
phase0 processSlashings - 250000 worstcase 124.05 us/op 143.38 us/op 0.87
altair processSyncCommitteeUpdates - 250000 122.48 ms/op 165.87 ms/op 0.74
BeaconState.hashTreeRoot - No change 303.00 ns/op 550.00 ns/op 0.55
BeaconState.hashTreeRoot - 1 full validator 135.31 us/op 171.25 us/op 0.79
BeaconState.hashTreeRoot - 32 full validator 1.7072 ms/op 1.6724 ms/op 1.02
BeaconState.hashTreeRoot - 512 full validator 13.667 ms/op 16.993 ms/op 0.80
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 124.00 us/op 197.98 us/op 0.63
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.6120 ms/op 3.1747 ms/op 0.51
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 22.002 ms/op 42.084 ms/op 0.52
BeaconState.hashTreeRoot - 1 balances 97.285 us/op 168.96 us/op 0.58
BeaconState.hashTreeRoot - 32 balances 824.83 us/op 1.3825 ms/op 0.60
BeaconState.hashTreeRoot - 512 balances 7.4822 ms/op 13.760 ms/op 0.54
BeaconState.hashTreeRoot - 250000 balances 166.97 ms/op 259.23 ms/op 0.64
aggregationBits - 2048 els - zipIndexesInBitList 23.905 us/op 52.278 us/op 0.46
byteArrayEquals 32 55.349 ns/op 72.331 ns/op 0.77
Buffer.compare 32 17.259 ns/op 20.177 ns/op 0.86
byteArrayEquals 1024 1.5948 us/op 1.8296 us/op 0.87
Buffer.compare 1024 26.920 ns/op 33.251 ns/op 0.81
byteArrayEquals 16384 26.198 us/op 34.748 us/op 0.75
Buffer.compare 16384 203.90 ns/op 238.54 ns/op 0.85
byteArrayEquals 123687377 195.51 ms/op 221.47 ms/op 0.88
Buffer.compare 123687377 6.4598 ms/op 10.757 ms/op 0.60
byteArrayEquals 32 - diff last byte 53.367 ns/op 64.749 ns/op 0.82
Buffer.compare 32 - diff last byte 17.860 ns/op 21.449 ns/op 0.83
byteArrayEquals 1024 - diff last byte 1.6210 us/op 1.8331 us/op 0.88
Buffer.compare 1024 - diff last byte 25.893 ns/op 31.130 ns/op 0.83
byteArrayEquals 16384 - diff last byte 25.304 us/op 28.638 us/op 0.88
Buffer.compare 16384 - diff last byte 193.04 ns/op 251.13 ns/op 0.77
byteArrayEquals 123687377 - diff last byte 196.04 ms/op 222.92 ms/op 0.88
Buffer.compare 123687377 - diff last byte 6.6607 ms/op 10.907 ms/op 0.61
byteArrayEquals 32 - random bytes 5.2030 ns/op 5.8090 ns/op 0.90
Buffer.compare 32 - random bytes 17.423 ns/op 19.579 ns/op 0.89
byteArrayEquals 1024 - random bytes 5.2560 ns/op 5.7900 ns/op 0.91
Buffer.compare 1024 - random bytes 17.642 ns/op 19.606 ns/op 0.90
byteArrayEquals 16384 - random bytes 5.2570 ns/op 6.3260 ns/op 0.83
Buffer.compare 16384 - random bytes 17.534 ns/op 21.721 ns/op 0.81
byteArrayEquals 123687377 - random bytes 7.6800 ns/op 7.6200 ns/op 1.01
Buffer.compare 123687377 - random bytes 20.000 ns/op 23.150 ns/op 0.86
regular array get 100000 times 43.534 us/op 51.564 us/op 0.84
wrappedArray get 100000 times 33.886 us/op 48.475 us/op 0.70
arrayWithProxy get 100000 times 13.305 ms/op 14.610 ms/op 0.91
ssz.Root.equals 47.438 ns/op 61.906 ns/op 0.77
byteArrayEquals 46.559 ns/op 60.564 ns/op 0.77
Buffer.compare 10.692 ns/op 11.986 ns/op 0.89
shuffle list - 16384 els 6.3909 ms/op 7.4740 ms/op 0.86
shuffle list - 250000 els 95.212 ms/op 107.55 ms/op 0.89
processSlot - 1 slots 15.817 us/op 17.694 us/op 0.89
processSlot - 32 slots 3.7206 ms/op 4.2606 ms/op 0.87
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 38.877 ms/op 45.651 ms/op 0.85
getCommitteeAssignments - req 1 vs - 250000 vc 2.2666 ms/op 2.4114 ms/op 0.94
getCommitteeAssignments - req 100 vs - 250000 vc 4.2685 ms/op 4.7120 ms/op 0.91
getCommitteeAssignments - req 1000 vs - 250000 vc 4.5009 ms/op 5.1846 ms/op 0.87
findModifiedValidators - 10000 modified validators 260.03 ms/op 402.36 ms/op 0.65
findModifiedValidators - 1000 modified validators 216.12 ms/op 274.93 ms/op 0.79
findModifiedValidators - 100 modified validators 212.59 ms/op 273.87 ms/op 0.78
findModifiedValidators - 10 modified validators 237.73 ms/op 300.46 ms/op 0.79
findModifiedValidators - 1 modified validators 254.85 ms/op 293.70 ms/op 0.87
findModifiedValidators - no difference 241.86 ms/op 251.25 ms/op 0.96
compare ViewDUs 4.1078 s/op 3.7823 s/op 1.09
compare each validator Uint8Array 1.5905 s/op 1.4968 s/op 1.06
compare ViewDU to Uint8Array 1.3051 s/op 1.3891 s/op 0.94
migrate state 1000000 validators, 24 modified, 0 new 800.56 ms/op 644.09 ms/op 1.24
migrate state 1000000 validators, 1700 modified, 1000 new 1.2598 s/op 940.56 ms/op 1.34
migrate state 1000000 validators, 3400 modified, 2000 new 1.5705 s/op 1.1098 s/op 1.42
migrate state 1500000 validators, 24 modified, 0 new 817.25 ms/op 666.40 ms/op 1.23
migrate state 1500000 validators, 1700 modified, 1000 new 906.75 ms/op 875.14 ms/op 1.04
migrate state 1500000 validators, 3400 modified, 2000 new 1.1121 s/op 1.1537 s/op 0.96
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.2100 ns/op 5.4900 ns/op 0.95
state getBlockRootAtSlot - 250000 vs - 7PWei 586.24 ns/op 925.59 ns/op 0.63
computeProposers - vc 250000 8.5398 ms/op 9.4029 ms/op 0.91
computeEpochShuffling - vc 250000 106.30 ms/op 99.655 ms/op 1.07
getNextSyncCommittee - vc 250000 146.47 ms/op 143.49 ms/op 1.02
computeSigningRoot for AttestationData 29.991 us/op 24.238 us/op 1.24
hash AttestationData serialized data then Buffer.toString(base64) 1.7629 us/op 1.6802 us/op 1.05
toHexString serialized data 1.0760 us/op 1.1644 us/op 0.92
Buffer.toString(base64) 236.13 ns/op 229.40 ns/op 1.03

by benchmarkbot/action

@wemeetagain wemeetagain merged commit d87a901 into unstable Jun 27, 2024
20 checks passed
@wemeetagain wemeetagain deleted the nflaig/api-readme branch June 27, 2024 21:03
@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.

2 participants