Skip to content

Conversation

@nflaig
Copy link
Member

@nflaig nflaig commented Jan 30, 2024

Motivation

Noticed the schema validation for block_id in getBlobSidecars API was removed in #6337.

Description

Adds block_id schema validation to getBlobSidecars API

@nflaig nflaig requested a review from a team as a code owner January 30, 2024 12:32
@nflaig nflaig enabled auto-merge (squash) January 30, 2024 12:43
@codecov
Copy link

codecov bot commented Jan 30, 2024

Codecov Report

Merging #6377 (4f27988) into unstable (ed43a98) will increase coverage by 0.00%.
Report is 2 commits behind head on unstable.
The diff coverage is n/a.

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #6377   +/-   ##
=========================================
  Coverage     60.15%   60.15%           
=========================================
  Files           407      407           
  Lines         46511    46512    +1     
  Branches       1550     1550           
=========================================
+ Hits          27980    27981    +1     
  Misses        18499    18499           
  Partials         32       32           

@nflaig nflaig merged commit b5344bf into unstable Jan 30, 2024
@nflaig nflaig deleted the nflaig/missing-block-id-schema branch January 30, 2024 12:47
@github-actions
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: fdd2072 Previous: 5064fab Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 834.81 us/op 552.65 us/op 1.51
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 109.90 us/op 100.01 us/op 1.10
BLS verify - blst-native 1.3218 ms/op 1.4262 ms/op 0.93
BLS verifyMultipleSignatures 3 - blst-native 2.7676 ms/op 2.9539 ms/op 0.94
BLS verifyMultipleSignatures 8 - blst-native 6.0854 ms/op 6.5628 ms/op 0.93
BLS verifyMultipleSignatures 32 - blst-native 22.357 ms/op 23.893 ms/op 0.94
BLS verifyMultipleSignatures 64 - blst-native 44.269 ms/op 46.509 ms/op 0.95
BLS verifyMultipleSignatures 128 - blst-native 88.062 ms/op 91.880 ms/op 0.96
BLS deserializing 10000 signatures 990.96 ms/op 993.96 ms/op 1.00
BLS deserializing 100000 signatures 8.9345 s/op 9.2625 s/op 0.96
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.3444 ms/op 1.4077 ms/op 0.96
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.5300 ms/op 1.5743 ms/op 0.97
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.3608 ms/op 2.4931 ms/op 0.95
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.4479 ms/op 3.5447 ms/op 0.97
BLS verifyMultipleSignatures - same message - 128 - blst-native 5.6497 ms/op 5.7090 ms/op 0.99
BLS aggregatePubkeys 32 - blst-native 25.928 us/op 26.595 us/op 0.97
BLS aggregatePubkeys 128 - blst-native 101.40 us/op 103.26 us/op 0.98
getAttestationsForBlock 52.260 ms/op 53.027 ms/op 0.99
getSlashingsAndExits - default max 145.57 us/op 187.19 us/op 0.78
getSlashingsAndExits - 2k 424.87 us/op 500.71 us/op 0.85
proposeBlockBody type=full, size=empty 6.4454 ms/op 6.9202 ms/op 0.93
isKnown best case - 1 super set check 553.00 ns/op 458.00 ns/op 1.21
isKnown normal case - 2 super set checks 435.00 ns/op 416.00 ns/op 1.05
isKnown worse case - 16 super set checks 397.00 ns/op 487.00 ns/op 0.82
CheckpointStateCache - add get delete 5.8870 us/op 5.9100 us/op 1.00
validate api signedAggregateAndProof - struct 2.8184 ms/op 3.0237 ms/op 0.93
validate gossip signedAggregateAndProof - struct 2.8164 ms/op 2.9661 ms/op 0.95
validate gossip attestation - vc 640000 1.3818 ms/op 1.4525 ms/op 0.95
batch validate gossip attestation - vc 640000 - chunk 32 170.22 us/op 182.29 us/op 0.93
batch validate gossip attestation - vc 640000 - chunk 64 153.52 us/op 158.25 us/op 0.97
batch validate gossip attestation - vc 640000 - chunk 128 151.95 us/op 148.11 us/op 1.03
batch validate gossip attestation - vc 640000 - chunk 256 144.78 us/op 143.51 us/op 1.01
pickEth1Vote - no votes 1.4873 ms/op 1.3501 ms/op 1.10
pickEth1Vote - max votes 11.379 ms/op 13.103 ms/op 0.87
pickEth1Vote - Eth1Data hashTreeRoot value x2048 20.405 ms/op 21.198 ms/op 0.96
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 30.812 ms/op 25.666 ms/op 1.20
pickEth1Vote - Eth1Data fastSerialize value x2048 785.68 us/op 647.82 us/op 1.21
pickEth1Vote - Eth1Data fastSerialize tree x2048 5.7830 ms/op 5.5121 ms/op 1.05
bytes32 toHexString 822.00 ns/op 605.00 ns/op 1.36
bytes32 Buffer.toString(hex) 316.00 ns/op 309.00 ns/op 1.02
bytes32 Buffer.toString(hex) from Uint8Array 567.00 ns/op 552.00 ns/op 1.03
bytes32 Buffer.toString(hex) + 0x 298.00 ns/op 332.00 ns/op 0.90
Object access 1 prop 0.24300 ns/op 0.20100 ns/op 1.21
Map access 1 prop 0.15200 ns/op 0.15500 ns/op 0.98
Object get x1000 7.5640 ns/op 8.4400 ns/op 0.90
Map get x1000 0.92100 ns/op 0.95500 ns/op 0.96
Object set x1000 81.084 ns/op 66.257 ns/op 1.22
Map set x1000 59.484 ns/op 55.811 ns/op 1.07
Return object 10000 times 0.26270 ns/op 0.27040 ns/op 0.97
Throw Error 10000 times 4.1658 us/op 4.2530 us/op 0.98
fastMsgIdFn sha256 / 200 bytes 3.5670 us/op 3.6510 us/op 0.98
fastMsgIdFn h32 xxhash / 200 bytes 404.00 ns/op 336.00 ns/op 1.20
fastMsgIdFn h64 xxhash / 200 bytes 418.00 ns/op 394.00 ns/op 1.06
fastMsgIdFn sha256 / 1000 bytes 11.921 us/op 12.637 us/op 0.94
fastMsgIdFn h32 xxhash / 1000 bytes 534.00 ns/op 482.00 ns/op 1.11
fastMsgIdFn h64 xxhash / 1000 bytes 500.00 ns/op 468.00 ns/op 1.07
fastMsgIdFn sha256 / 10000 bytes 107.72 us/op 109.24 us/op 0.99
fastMsgIdFn h32 xxhash / 10000 bytes 2.0790 us/op 2.2300 us/op 0.93
fastMsgIdFn h64 xxhash / 10000 bytes 1.4380 us/op 1.4810 us/op 0.97
send data - 1000 256B messages 28.358 ms/op 22.962 ms/op 1.23
send data - 1000 512B messages 30.552 ms/op 35.179 ms/op 0.87
send data - 1000 1024B messages 49.513 ms/op 46.026 ms/op 1.08
send data - 1000 1200B messages 49.296 ms/op 41.844 ms/op 1.18
send data - 1000 2048B messages 62.906 ms/op 58.602 ms/op 1.07
send data - 1000 4096B messages 50.283 ms/op 50.498 ms/op 1.00
send data - 1000 16384B messages 137.58 ms/op 140.24 ms/op 0.98
send data - 1000 65536B messages 582.31 ms/op 537.86 ms/op 1.08
enrSubnets - fastDeserialize 64 bits 1.6360 us/op 1.9390 us/op 0.84
enrSubnets - ssz BitVector 64 bits 558.00 ns/op 593.00 ns/op 0.94
enrSubnets - fastDeserialize 4 bits 263.00 ns/op 252.00 ns/op 1.04
enrSubnets - ssz BitVector 4 bits 578.00 ns/op 595.00 ns/op 0.97
prioritizePeers score -10:0 att 32-0.1 sync 2-0 126.05 us/op 125.17 us/op 1.01
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 166.86 us/op 166.45 us/op 1.00
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 228.89 us/op 211.60 us/op 1.08
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 373.03 us/op 375.53 us/op 0.99
prioritizePeers score 0:0 att 64-1 sync 4-1 410.51 us/op 416.96 us/op 0.98
array of 16000 items push then shift 1.8105 us/op 1.8746 us/op 0.97
LinkedList of 16000 items push then shift 11.089 ns/op 10.597 ns/op 1.05
array of 16000 items push then pop 125.10 ns/op 129.06 ns/op 0.97
LinkedList of 16000 items push then pop 9.9980 ns/op 10.508 ns/op 0.95
array of 24000 items push then shift 2.6194 us/op 2.6917 us/op 0.97
LinkedList of 24000 items push then shift 10.405 ns/op 10.321 ns/op 1.01
array of 24000 items push then pop 170.63 ns/op 178.54 ns/op 0.96
LinkedList of 24000 items push then pop 9.7010 ns/op 10.118 ns/op 0.96
intersect bitArray bitLen 8 7.2860 ns/op 7.8570 ns/op 0.93
intersect array and set length 8 97.496 ns/op 86.820 ns/op 1.12
intersect bitArray bitLen 128 37.826 ns/op 40.251 ns/op 0.94
intersect array and set length 128 1.0693 us/op 1.1739 us/op 0.91
bitArray.getTrueBitIndexes() bitLen 128 1.7690 us/op 1.9850 us/op 0.89
bitArray.getTrueBitIndexes() bitLen 248 3.1550 us/op 3.6550 us/op 0.86
bitArray.getTrueBitIndexes() bitLen 512 7.3200 us/op 7.3370 us/op 1.00
Buffer.concat 32 items 1.1380 us/op 1.2240 us/op 0.93
Uint8Array.set 32 items 2.0390 us/op 2.2260 us/op 0.92
Set add up to 64 items then delete first 5.2343 us/op 5.6402 us/op 0.93
OrderedSet add up to 64 items then delete first 6.0835 us/op 7.5913 us/op 0.80
Set add up to 64 items then delete last 5.2673 us/op 6.0110 us/op 0.88
OrderedSet add up to 64 items then delete last 6.5254 us/op 8.0131 us/op 0.81
Set add up to 64 items then delete middle 5.5799 us/op 6.0977 us/op 0.92
OrderedSet add up to 64 items then delete middle 8.8241 us/op 9.6856 us/op 0.91
Set add up to 128 items then delete first 11.179 us/op 12.631 us/op 0.89
OrderedSet add up to 128 items then delete first 15.260 us/op 16.589 us/op 0.92
Set add up to 128 items then delete last 10.844 us/op 12.425 us/op 0.87
OrderedSet add up to 128 items then delete last 14.257 us/op 16.831 us/op 0.85
Set add up to 128 items then delete middle 11.286 us/op 12.102 us/op 0.93
OrderedSet add up to 128 items then delete middle 19.380 us/op 22.476 us/op 0.86
Set add up to 256 items then delete first 22.104 us/op 25.173 us/op 0.88
OrderedSet add up to 256 items then delete first 31.465 us/op 34.957 us/op 0.90
Set add up to 256 items then delete last 22.826 us/op 24.713 us/op 0.92
OrderedSet add up to 256 items then delete last 29.947 us/op 32.846 us/op 0.91
Set add up to 256 items then delete middle 21.401 us/op 24.177 us/op 0.89
OrderedSet add up to 256 items then delete middle 52.686 us/op 59.958 us/op 0.88
transfer serialized Status (84 B) 1.8920 us/op 2.2220 us/op 0.85
copy serialized Status (84 B) 1.4320 us/op 1.6800 us/op 0.85
transfer serialized SignedVoluntaryExit (112 B) 1.9550 us/op 2.3420 us/op 0.83
copy serialized SignedVoluntaryExit (112 B) 1.4280 us/op 1.7160 us/op 0.83
transfer serialized ProposerSlashing (416 B) 2.1230 us/op 3.3970 us/op 0.62
copy serialized ProposerSlashing (416 B) 1.8950 us/op 2.8790 us/op 0.66
transfer serialized Attestation (485 B) 2.1800 us/op 3.2240 us/op 0.68
copy serialized Attestation (485 B) 1.8850 us/op 2.9500 us/op 0.64
transfer serialized AttesterSlashing (33232 B) 2.1230 us/op 3.0640 us/op 0.69
copy serialized AttesterSlashing (33232 B) 5.7050 us/op 9.8160 us/op 0.58
transfer serialized Small SignedBeaconBlock (128000 B) 2.4890 us/op 3.6230 us/op 0.69
copy serialized Small SignedBeaconBlock (128000 B) 17.767 us/op 29.900 us/op 0.59
transfer serialized Avg SignedBeaconBlock (200000 B) 2.8560 us/op 3.8770 us/op 0.74
copy serialized Avg SignedBeaconBlock (200000 B) 26.295 us/op 42.949 us/op 0.61
transfer serialized BlobsSidecar (524380 B) 3.0160 us/op 4.2490 us/op 0.71
copy serialized BlobsSidecar (524380 B) 217.39 us/op 147.69 us/op 1.47
transfer serialized Big SignedBeaconBlock (1000000 B) 3.4110 us/op 4.4190 us/op 0.77
copy serialized Big SignedBeaconBlock (1000000 B) 214.39 us/op 262.54 us/op 0.82
pass gossip attestations to forkchoice per slot 4.1709 ms/op 4.5570 ms/op 0.92
forkChoice updateHead vc 100000 bc 64 eq 0 740.21 us/op 744.89 us/op 0.99
forkChoice updateHead vc 600000 bc 64 eq 0 4.4148 ms/op 5.3648 ms/op 0.82
forkChoice updateHead vc 1000000 bc 64 eq 0 9.3900 ms/op 8.2368 ms/op 1.14
forkChoice updateHead vc 600000 bc 320 eq 0 4.4852 ms/op 4.7648 ms/op 0.94
forkChoice updateHead vc 600000 bc 1200 eq 0 4.8311 ms/op 4.8726 ms/op 0.99
forkChoice updateHead vc 600000 bc 7200 eq 0 5.7491 ms/op 6.2206 ms/op 0.92
forkChoice updateHead vc 600000 bc 64 eq 1000 11.580 ms/op 12.624 ms/op 0.92
forkChoice updateHead vc 600000 bc 64 eq 10000 12.652 ms/op 13.878 ms/op 0.91
forkChoice updateHead vc 600000 bc 64 eq 300000 20.271 ms/op 21.470 ms/op 0.94
computeDeltas 500000 validators 300 proto nodes 6.9632 ms/op 7.5226 ms/op 0.93
computeDeltas 500000 validators 1200 proto nodes 6.9922 ms/op 7.3466 ms/op 0.95
computeDeltas 500000 validators 7200 proto nodes 6.5445 ms/op 6.8755 ms/op 0.95
computeDeltas 750000 validators 300 proto nodes 9.4960 ms/op 10.431 ms/op 0.91
computeDeltas 750000 validators 1200 proto nodes 9.6895 ms/op 10.519 ms/op 0.92
computeDeltas 750000 validators 7200 proto nodes 9.5737 ms/op 10.591 ms/op 0.90
computeDeltas 1400000 validators 300 proto nodes 18.760 ms/op 20.154 ms/op 0.93
computeDeltas 1400000 validators 1200 proto nodes 18.630 ms/op 19.618 ms/op 0.95
computeDeltas 1400000 validators 7200 proto nodes 18.801 ms/op 21.048 ms/op 0.89
computeDeltas 2100000 validators 300 proto nodes 27.595 ms/op 30.417 ms/op 0.91
computeDeltas 2100000 validators 1200 proto nodes 28.408 ms/op 28.918 ms/op 0.98
computeDeltas 2100000 validators 7200 proto nodes 28.179 ms/op 32.644 ms/op 0.86
altair processAttestation - 250000 vs - 7PWei normalcase 2.2970 ms/op 2.4247 ms/op 0.95
altair processAttestation - 250000 vs - 7PWei worstcase 3.3569 ms/op 3.5232 ms/op 0.95
altair processAttestation - setStatus - 1/6 committees join 187.51 us/op 192.80 us/op 0.97
altair processAttestation - setStatus - 1/3 committees join 358.05 us/op 356.08 us/op 1.01
altair processAttestation - setStatus - 1/2 committees join 470.64 us/op 501.94 us/op 0.94
altair processAttestation - setStatus - 2/3 committees join 593.23 us/op 626.81 us/op 0.95
altair processAttestation - setStatus - 4/5 committees join 791.40 us/op 874.32 us/op 0.91
altair processAttestation - setStatus - 100% committees join 935.99 us/op 1.0225 ms/op 0.92
altair processBlock - 250000 vs - 7PWei normalcase 10.236 ms/op 11.223 ms/op 0.91
altair processBlock - 250000 vs - 7PWei normalcase hashState 33.671 ms/op 37.916 ms/op 0.89
altair processBlock - 250000 vs - 7PWei worstcase 36.722 ms/op 41.894 ms/op 0.88
altair processBlock - 250000 vs - 7PWei worstcase hashState 86.423 ms/op 97.427 ms/op 0.89
phase0 processBlock - 250000 vs - 7PWei normalcase 2.8321 ms/op 2.8519 ms/op 0.99
phase0 processBlock - 250000 vs - 7PWei worstcase 29.440 ms/op 32.835 ms/op 0.90
altair processEth1Data - 250000 vs - 7PWei normalcase 484.24 us/op 601.83 us/op 0.80
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 9.5190 us/op 14.249 us/op 0.67
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 58.391 us/op 76.069 us/op 0.77
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 15.562 us/op 20.079 us/op 0.78
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 12.800 us/op 12.960 us/op 0.99
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 151.26 us/op 215.51 us/op 0.70
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.1482 ms/op 1.1350 ms/op 1.01
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.5385 ms/op 1.7773 ms/op 0.87
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.5204 ms/op 1.8561 ms/op 0.82
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.7005 ms/op 3.6781 ms/op 1.01
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.3205 ms/op 2.7000 ms/op 0.86
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 5.2734 ms/op 5.7637 ms/op 0.91
Tree 40 250000 create 338.58 ms/op 372.40 ms/op 0.91
Tree 40 250000 get(125000) 206.48 ns/op 230.81 ns/op 0.89
Tree 40 250000 set(125000) 1.0377 us/op 1.0740 us/op 0.97
Tree 40 250000 toArray() 18.824 ms/op 22.427 ms/op 0.84
Tree 40 250000 iterate all - toArray() + loop 18.948 ms/op 23.089 ms/op 0.82
Tree 40 250000 iterate all - get(i) 68.528 ms/op 75.857 ms/op 0.90
MutableVector 250000 create 14.731 ms/op 17.002 ms/op 0.87
MutableVector 250000 get(125000) 9.0600 ns/op 7.3920 ns/op 1.23
MutableVector 250000 set(125000) 276.72 ns/op 348.58 ns/op 0.79
MutableVector 250000 toArray() 3.2733 ms/op 4.0066 ms/op 0.82
MutableVector 250000 iterate all - toArray() + loop 3.2794 ms/op 4.0331 ms/op 0.81
MutableVector 250000 iterate all - get(i) 1.5208 ms/op 1.7026 ms/op 0.89
Array 250000 create 2.8470 ms/op 3.7248 ms/op 0.76
Array 250000 clone - spread 1.3020 ms/op 1.4283 ms/op 0.91
Array 250000 get(125000) 1.0870 ns/op 1.2970 ns/op 0.84
Array 250000 set(125000) 4.1800 ns/op 5.0900 ns/op 0.82
Array 250000 iterate all - loop 165.14 us/op 196.26 us/op 0.84
effectiveBalanceIncrements clone Uint8Array 300000 31.621 us/op 44.475 us/op 0.71
effectiveBalanceIncrements clone MutableVector 300000 406.00 ns/op 448.00 ns/op 0.91
effectiveBalanceIncrements rw all Uint8Array 300000 199.85 us/op 226.74 us/op 0.88
effectiveBalanceIncrements rw all MutableVector 300000 88.304 ms/op 100.64 ms/op 0.88
phase0 afterProcessEpoch - 250000 vs - 7PWei 113.57 ms/op 133.65 ms/op 0.85
phase0 beforeProcessEpoch - 250000 vs - 7PWei 49.925 ms/op 64.640 ms/op 0.77
altair processEpoch - mainnet_e81889 460.31 ms/op 582.43 ms/op 0.79
mainnet_e81889 - altair beforeProcessEpoch 87.442 ms/op 109.50 ms/op 0.80
mainnet_e81889 - altair processJustificationAndFinalization 14.214 us/op 20.888 us/op 0.68
mainnet_e81889 - altair processInactivityUpdates 5.7904 ms/op 7.7390 ms/op 0.75
mainnet_e81889 - altair processRewardsAndPenalties 61.922 ms/op 70.889 ms/op 0.87
mainnet_e81889 - altair processRegistryUpdates 2.7360 us/op 3.6570 us/op 0.75
mainnet_e81889 - altair processSlashings 485.00 ns/op 834.00 ns/op 0.58
mainnet_e81889 - altair processEth1DataReset 540.00 ns/op 861.00 ns/op 0.63
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.4163 ms/op 1.7657 ms/op 0.80
mainnet_e81889 - altair processSlashingsReset 3.8230 us/op 7.7280 us/op 0.49
mainnet_e81889 - altair processRandaoMixesReset 3.6440 us/op 6.8220 us/op 0.53
mainnet_e81889 - altair processHistoricalRootsUpdate 658.00 ns/op 1.0310 us/op 0.64
mainnet_e81889 - altair processParticipationFlagUpdates 1.4570 us/op 2.4910 us/op 0.58
mainnet_e81889 - altair processSyncCommitteeUpdates 613.00 ns/op 918.00 ns/op 0.67
mainnet_e81889 - altair afterProcessEpoch 118.43 ms/op 136.78 ms/op 0.87
capella processEpoch - mainnet_e217614 2.1777 s/op 2.3995 s/op 0.91
mainnet_e217614 - capella beforeProcessEpoch 516.36 ms/op 505.65 ms/op 1.02
mainnet_e217614 - capella processJustificationAndFinalization 15.454 us/op 15.850 us/op 0.98
mainnet_e217614 - capella processInactivityUpdates 22.157 ms/op 20.901 ms/op 1.06
mainnet_e217614 - capella processRewardsAndPenalties 418.61 ms/op 409.19 ms/op 1.02
mainnet_e217614 - capella processRegistryUpdates 32.013 us/op 35.749 us/op 0.90
mainnet_e217614 - capella processSlashings 827.00 ns/op 1.0020 us/op 0.83
mainnet_e217614 - capella processEth1DataReset 524.00 ns/op 474.00 ns/op 1.11
mainnet_e217614 - capella processEffectiveBalanceUpdates 5.2368 ms/op 4.9590 ms/op 1.06
mainnet_e217614 - capella processSlashingsReset 6.5600 us/op 4.7500 us/op 1.38
mainnet_e217614 - capella processRandaoMixesReset 12.854 us/op 6.3090 us/op 2.04
mainnet_e217614 - capella processHistoricalRootsUpdate 2.3500 us/op 665.00 ns/op 3.53
mainnet_e217614 - capella processParticipationFlagUpdates 6.0390 us/op 1.8340 us/op 3.29
mainnet_e217614 - capella afterProcessEpoch 405.93 ms/op 351.68 ms/op 1.15
phase0 processEpoch - mainnet_e58758 666.79 ms/op 512.63 ms/op 1.30
mainnet_e58758 - phase0 beforeProcessEpoch 234.14 ms/op 139.67 ms/op 1.68
mainnet_e58758 - phase0 processJustificationAndFinalization 35.275 us/op 20.165 us/op 1.75
mainnet_e58758 - phase0 processRewardsAndPenalties 79.904 ms/op 57.782 ms/op 1.38
mainnet_e58758 - phase0 processRegistryUpdates 22.879 us/op 15.795 us/op 1.45
mainnet_e58758 - phase0 processSlashings 1.5040 us/op 789.00 ns/op 1.91
mainnet_e58758 - phase0 processEth1DataReset 1.1920 us/op 908.00 ns/op 1.31
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 2.0182 ms/op 1.4214 ms/op 1.42
mainnet_e58758 - phase0 processSlashingsReset 6.1630 us/op 4.8060 us/op 1.28
mainnet_e58758 - phase0 processRandaoMixesReset 5.7650 us/op 6.7210 us/op 0.86
mainnet_e58758 - phase0 processHistoricalRootsUpdate 558.00 ns/op 1.3210 us/op 0.42
mainnet_e58758 - phase0 processParticipationRecordUpdates 3.8090 us/op 6.1800 us/op 0.62
mainnet_e58758 - phase0 afterProcessEpoch 97.281 ms/op 106.37 ms/op 0.91
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.5494 ms/op 1.4769 ms/op 1.05
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.4705 ms/op 1.5099 ms/op 0.97
altair processInactivityUpdates - 250000 normalcase 34.198 ms/op 31.465 ms/op 1.09
altair processInactivityUpdates - 250000 worstcase 23.257 ms/op 27.989 ms/op 0.83
phase0 processRegistryUpdates - 250000 normalcase 10.609 us/op 9.6330 us/op 1.10
phase0 processRegistryUpdates - 250000 badcase_full_deposits 375.38 us/op 294.57 us/op 1.27
phase0 processRegistryUpdates - 250000 worstcase 0.5 141.26 ms/op 117.70 ms/op 1.20
altair processRewardsAndPenalties - 250000 normalcase 53.875 ms/op 57.122 ms/op 0.94
altair processRewardsAndPenalties - 250000 worstcase 56.000 ms/op 59.072 ms/op 0.95
phase0 getAttestationDeltas - 250000 normalcase 8.3243 ms/op 9.9024 ms/op 0.84
phase0 getAttestationDeltas - 250000 worstcase 8.2274 ms/op 9.4088 ms/op 0.87
phase0 processSlashings - 250000 worstcase 87.451 us/op 82.788 us/op 1.06
altair processSyncCommitteeUpdates - 250000 154.36 ms/op 162.99 ms/op 0.95
BeaconState.hashTreeRoot - No change 349.00 ns/op 377.00 ns/op 0.93
BeaconState.hashTreeRoot - 1 full validator 137.32 us/op 131.29 us/op 1.05
BeaconState.hashTreeRoot - 32 full validator 1.1608 ms/op 1.2988 ms/op 0.89
BeaconState.hashTreeRoot - 512 full validator 14.421 ms/op 15.412 ms/op 0.94
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 166.87 us/op 173.08 us/op 0.96
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.8261 ms/op 2.0545 ms/op 0.89
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 23.892 ms/op 26.896 ms/op 0.89
BeaconState.hashTreeRoot - 1 balances 108.81 us/op 114.98 us/op 0.95
BeaconState.hashTreeRoot - 32 balances 995.48 us/op 1.4776 ms/op 0.67
BeaconState.hashTreeRoot - 512 balances 9.8681 ms/op 10.568 ms/op 0.93
BeaconState.hashTreeRoot - 250000 balances 174.51 ms/op 214.87 ms/op 0.81
aggregationBits - 2048 els - zipIndexesInBitList 17.503 us/op 18.828 us/op 0.93
byteArrayEquals 32 75.813 ns/op 76.940 ns/op 0.99
Buffer.compare 32 56.765 ns/op 57.574 ns/op 0.99
byteArrayEquals 1024 2.0754 us/op 2.2166 us/op 0.94
Buffer.compare 1024 73.337 ns/op 73.868 ns/op 0.99
byteArrayEquals 16384 32.823 us/op 33.836 us/op 0.97
Buffer.compare 16384 260.84 ns/op 278.04 ns/op 0.94
byteArrayEquals 123687377 247.32 ms/op 258.74 ms/op 0.96
Buffer.compare 123687377 7.8998 ms/op 8.0624 ms/op 0.98
byteArrayEquals 32 - diff last byte 75.747 ns/op 77.794 ns/op 0.97
Buffer.compare 32 - diff last byte 62.162 ns/op 64.844 ns/op 0.96
byteArrayEquals 1024 - diff last byte 2.0703 us/op 2.1913 us/op 0.94
Buffer.compare 1024 - diff last byte 76.912 ns/op 81.605 ns/op 0.94
byteArrayEquals 16384 - diff last byte 32.948 us/op 34.516 us/op 0.95
Buffer.compare 16384 - diff last byte 261.37 ns/op 288.67 ns/op 0.91
byteArrayEquals 123687377 - diff last byte 282.75 ms/op 287.00 ms/op 0.99
Buffer.compare 123687377 - diff last byte 18.128 ms/op 7.6102 ms/op 2.38
byteArrayEquals 32 - random bytes 8.7140 ns/op 6.3940 ns/op 1.36
Buffer.compare 32 - random bytes 69.710 ns/op 71.003 ns/op 0.98
byteArrayEquals 1024 - random bytes 7.2950 ns/op 6.4690 ns/op 1.13
Buffer.compare 1024 - random bytes 66.017 ns/op 70.971 ns/op 0.93
byteArrayEquals 16384 - random bytes 7.7130 ns/op 6.3910 ns/op 1.21
Buffer.compare 16384 - random bytes 67.239 ns/op 71.636 ns/op 0.94
byteArrayEquals 123687377 - random bytes 22.790 ns/op 10.150 ns/op 2.25
Buffer.compare 123687377 - random bytes 85.230 ns/op 83.310 ns/op 1.02
regular array get 100000 times 52.369 us/op 52.767 us/op 0.99
wrappedArray get 100000 times 51.105 us/op 53.114 us/op 0.96
arrayWithProxy get 100000 times 19.077 ms/op 16.161 ms/op 1.18
ssz.Root.equals 89.539 ns/op 62.160 ns/op 1.44
byteArrayEquals 105.09 ns/op 61.106 ns/op 1.72
Buffer.compare 13.430 ns/op 13.238 ns/op 1.01
shuffle list - 16384 els 7.9072 ms/op 8.1917 ms/op 0.97
shuffle list - 250000 els 116.55 ms/op 115.46 ms/op 1.01
processSlot - 1 slots 23.301 us/op 20.995 us/op 1.11
processSlot - 32 slots 4.1060 ms/op 3.3922 ms/op 1.21
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 81.821 ms/op 65.516 ms/op 1.25
getCommitteeAssignments - req 1 vs - 250000 vc 3.5014 ms/op 2.9290 ms/op 1.20
getCommitteeAssignments - req 100 vs - 250000 vc 4.7243 ms/op 4.6033 ms/op 1.03
getCommitteeAssignments - req 1000 vs - 250000 vc 4.8939 ms/op 4.9129 ms/op 1.00
findModifiedValidators - 10000 modified validators 826.15 ms/op 714.48 ms/op 1.16
findModifiedValidators - 1000 modified validators 592.40 ms/op 533.54 ms/op 1.11
findModifiedValidators - 100 modified validators 531.55 ms/op 552.79 ms/op 0.96
findModifiedValidators - 10 modified validators 509.75 ms/op 646.56 ms/op 0.79
findModifiedValidators - 1 modified validators 587.48 ms/op 518.27 ms/op 1.13
findModifiedValidators - no difference 609.92 ms/op 610.23 ms/op 1.00
compare ViewDUs 5.9929 s/op 6.0515 s/op 0.99
compare each validator Uint8Array 1.8348 s/op 2.0104 s/op 0.91
compare ViewDU to Uint8Array 1.4083 s/op 1.5702 s/op 0.90
migrate state 1000000 validators, 24 modified, 0 new 858.81 ms/op 833.14 ms/op 1.03
migrate state 1000000 validators, 1700 modified, 1000 new 1.3472 s/op 1.1153 s/op 1.21
migrate state 1000000 validators, 3400 modified, 2000 new 1.9430 s/op 1.3544 s/op 1.43
migrate state 1500000 validators, 24 modified, 0 new 824.68 ms/op 787.67 ms/op 1.05
migrate state 1500000 validators, 1700 modified, 1000 new 980.28 ms/op 1.0948 s/op 0.90
migrate state 1500000 validators, 3400 modified, 2000 new 1.2673 s/op 1.4095 s/op 0.90
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.6400 ns/op 5.5000 ns/op 0.84
state getBlockRootAtSlot - 250000 vs - 7PWei 757.40 ns/op 930.62 ns/op 0.81
computeProposers - vc 250000 9.2194 ms/op 11.244 ms/op 0.82
computeEpochShuffling - vc 250000 105.34 ms/op 114.33 ms/op 0.92
getNextSyncCommittee - vc 250000 169.35 ms/op 166.94 ms/op 1.01
computeSigningRoot for AttestationData 25.909 us/op 24.623 us/op 1.05
hash AttestationData serialized data then Buffer.toString(base64) 2.3529 us/op 2.5838 us/op 0.91
toHexString serialized data 1.0821 us/op 1.2971 us/op 0.83
Buffer.toString(base64) 229.59 ns/op 288.68 ns/op 0.80

by benchmarkbot/action

@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.

4 participants