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: log block transition steps in publishBlock api #6199

Merged
merged 1 commit into from
Dec 18, 2023

Conversation

twoeths
Copy link
Contributor

@twoeths twoeths commented Dec 18, 2023

Motivation

Log block transition steps in publishBlock api

Description

Add seenTimestampsSec in order to log block transition steps, see

if (blocks.length === 1 && opts.seenTimestampSec !== undefined) {

cc @g11tech

@twoeths twoeths requested a review from a team as a code owner December 18, 2023 07:28
Copy link

codecov bot commented Dec 18, 2023

Codecov Report

Merging #6199 (ce4315c) into unstable (c044d4c) will not change coverage.
The diff coverage is n/a.

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #6199   +/-   ##
=========================================
  Coverage     90.35%   90.35%           
=========================================
  Files            78       78           
  Lines          8087     8087           
  Branches        490      490           
=========================================
  Hits           7307     7307           
  Misses          772      772           
  Partials          8        8           

Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: cd6fa4d Previous: c044d4c Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 815.27 us/op 580.32 us/op 1.40
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 86.712 us/op 87.215 us/op 0.99
BLS verify - blst-native 1.3028 ms/op 1.3633 ms/op 0.96
BLS verifyMultipleSignatures 3 - blst-native 2.7258 ms/op 2.8638 ms/op 0.95
BLS verifyMultipleSignatures 8 - blst-native 5.9553 ms/op 6.2231 ms/op 0.96
BLS verifyMultipleSignatures 32 - blst-native 21.937 ms/op 22.348 ms/op 0.98
BLS verifyMultipleSignatures 64 - blst-native 43.003 ms/op 46.229 ms/op 0.93
BLS verifyMultipleSignatures 128 - blst-native 84.243 ms/op 89.520 ms/op 0.94
BLS deserializing 10000 signatures 929.92 ms/op 955.94 ms/op 0.97
BLS deserializing 100000 signatures 9.3194 s/op 9.3114 s/op 1.00
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.2771 ms/op 1.3848 ms/op 0.92
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.6477 ms/op 1.8386 ms/op 0.90
BLS verifyMultipleSignatures - same message - 32 - blst-native 3.0652 ms/op 2.3868 ms/op 1.28
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.1976 ms/op 3.4800 ms/op 0.92
BLS verifyMultipleSignatures - same message - 128 - blst-native 7.7910 ms/op 5.7344 ms/op 1.36
BLS aggregatePubkeys 32 - blst-native 25.559 us/op 26.304 us/op 0.97
BLS aggregatePubkeys 128 - blst-native 94.509 us/op 102.28 us/op 0.92
getAttestationsForBlock 42.746 ms/op 56.531 ms/op 0.76
getSlashingsAndExits - default max 163.10 us/op 245.32 us/op 0.66
getSlashingsAndExits - 2k 375.70 us/op 584.37 us/op 0.64
proposeBlockBody type=full, size=empty 4.9025 ms/op 6.4359 ms/op 0.76
isKnown best case - 1 super set check 288.00 ns/op 506.00 ns/op 0.57
isKnown normal case - 2 super set checks 288.00 ns/op 508.00 ns/op 0.57
isKnown worse case - 16 super set checks 279.00 ns/op 588.00 ns/op 0.47
CheckpointStateCache - add get delete 4.9450 us/op 6.3920 us/op 0.77
validate api signedAggregateAndProof - struct 2.7171 ms/op 2.8844 ms/op 0.94
validate gossip signedAggregateAndProof - struct 2.7195 ms/op 2.9097 ms/op 0.93
validate gossip attestation - vc 640000 1.2972 ms/op 1.4637 ms/op 0.89
batch validate gossip attestation - vc 640000 - chunk 32 155.49 us/op 188.10 us/op 0.83
batch validate gossip attestation - vc 640000 - chunk 64 139.46 us/op 174.01 us/op 0.80
batch validate gossip attestation - vc 640000 - chunk 128 130.81 us/op 177.52 us/op 0.74
batch validate gossip attestation - vc 640000 - chunk 256 123.65 us/op 161.42 us/op 0.77
pickEth1Vote - no votes 1.0761 ms/op 1.3944 ms/op 0.77
pickEth1Vote - max votes 8.4481 ms/op 11.935 ms/op 0.71
pickEth1Vote - Eth1Data hashTreeRoot value x2048 17.359 ms/op 21.891 ms/op 0.79
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 28.986 ms/op 33.390 ms/op 0.87
pickEth1Vote - Eth1Data fastSerialize value x2048 560.93 us/op 731.58 us/op 0.77
pickEth1Vote - Eth1Data fastSerialize tree x2048 7.2252 ms/op 8.6270 ms/op 0.84
bytes32 toHexString 459.00 ns/op 621.00 ns/op 0.74
bytes32 Buffer.toString(hex) 267.00 ns/op 318.00 ns/op 0.84
bytes32 Buffer.toString(hex) from Uint8Array 382.00 ns/op 492.00 ns/op 0.78
bytes32 Buffer.toString(hex) + 0x 263.00 ns/op 298.00 ns/op 0.88
Object access 1 prop 0.14200 ns/op 0.21200 ns/op 0.67
Map access 1 prop 0.13800 ns/op 0.16500 ns/op 0.84
Object get x1000 6.8850 ns/op 7.6890 ns/op 0.90
Map get x1000 0.69600 ns/op 0.89700 ns/op 0.78
Object set x1000 46.787 ns/op 65.224 ns/op 0.72
Map set x1000 36.196 ns/op 50.881 ns/op 0.71
Return object 10000 times 0.22170 ns/op 0.25120 ns/op 0.88
Throw Error 10000 times 3.6768 us/op 4.1705 us/op 0.88
fastMsgIdFn sha256 / 200 bytes 3.0550 us/op 3.4170 us/op 0.89
fastMsgIdFn h32 xxhash / 200 bytes 248.00 ns/op 337.00 ns/op 0.74
fastMsgIdFn h64 xxhash / 200 bytes 313.00 ns/op 373.00 ns/op 0.84
fastMsgIdFn sha256 / 1000 bytes 10.759 us/op 12.324 us/op 0.87
fastMsgIdFn h32 xxhash / 1000 bytes 376.00 ns/op 527.00 ns/op 0.71
fastMsgIdFn h64 xxhash / 1000 bytes 389.00 ns/op 479.00 ns/op 0.81
fastMsgIdFn sha256 / 10000 bytes 97.745 us/op 106.86 us/op 0.91
fastMsgIdFn h32 xxhash / 10000 bytes 1.7700 us/op 2.0620 us/op 0.86
fastMsgIdFn h64 xxhash / 10000 bytes 1.2180 us/op 1.4250 us/op 0.85
send data - 1000 256B messages 17.186 ms/op 21.367 ms/op 0.80
send data - 1000 512B messages 24.083 ms/op 28.548 ms/op 0.84
send data - 1000 1024B messages 37.513 ms/op 44.420 ms/op 0.84
send data - 1000 1200B messages 35.221 ms/op 38.685 ms/op 0.91
send data - 1000 2048B messages 43.367 ms/op 49.758 ms/op 0.87
send data - 1000 4096B messages 41.396 ms/op 49.559 ms/op 0.84
send data - 1000 16384B messages 109.65 ms/op 132.14 ms/op 0.83
send data - 1000 65536B messages 504.47 ms/op 499.63 ms/op 1.01
enrSubnets - fastDeserialize 64 bits 1.2150 us/op 1.7650 us/op 0.69
enrSubnets - ssz BitVector 64 bits 408.00 ns/op 563.00 ns/op 0.72
enrSubnets - fastDeserialize 4 bits 160.00 ns/op 243.00 ns/op 0.66
enrSubnets - ssz BitVector 4 bits 410.00 ns/op 564.00 ns/op 0.73
prioritizePeers score -10:0 att 32-0.1 sync 2-0 104.02 us/op 126.83 us/op 0.82
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 123.48 us/op 156.74 us/op 0.79
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 159.43 us/op 203.51 us/op 0.78
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 284.73 us/op 352.37 us/op 0.81
prioritizePeers score 0:0 att 64-1 sync 4-1 327.87 us/op 418.41 us/op 0.78
array of 16000 items push then shift 1.5740 us/op 1.7800 us/op 0.88
LinkedList of 16000 items push then shift 8.7280 ns/op 9.3830 ns/op 0.93
array of 16000 items push then pop 76.066 ns/op 111.61 ns/op 0.68
LinkedList of 16000 items push then pop 8.2500 ns/op 9.1630 ns/op 0.90
array of 24000 items push then shift 2.2496 us/op 2.7331 us/op 0.82
LinkedList of 24000 items push then shift 8.4840 ns/op 9.4400 ns/op 0.90
array of 24000 items push then pop 92.021 ns/op 169.81 ns/op 0.54
LinkedList of 24000 items push then pop 8.2480 ns/op 9.2180 ns/op 0.89
intersect bitArray bitLen 8 6.1040 ns/op 7.0710 ns/op 0.86
intersect array and set length 8 58.619 ns/op 75.145 ns/op 0.78
intersect bitArray bitLen 128 32.163 ns/op 38.835 ns/op 0.83
intersect array and set length 128 808.10 ns/op 1.1283 us/op 0.72
bitArray.getTrueBitIndexes() bitLen 128 1.4330 us/op 1.7520 us/op 0.82
bitArray.getTrueBitIndexes() bitLen 248 2.4560 us/op 3.0400 us/op 0.81
bitArray.getTrueBitIndexes() bitLen 512 4.4570 us/op 6.2370 us/op 0.71
Buffer.concat 32 items 859.00 ns/op 1.0870 us/op 0.79
Uint8Array.set 32 items 1.5480 us/op 1.9170 us/op 0.81
Set add up to 64 items then delete first 4.0400 us/op 4.9625 us/op 0.81
OrderedSet add up to 64 items then delete first 5.1025 us/op 6.1908 us/op 0.82
Set add up to 64 items then delete last 4.4562 us/op 5.4050 us/op 0.82
OrderedSet add up to 64 items then delete last 5.5411 us/op 6.3151 us/op 0.88
Set add up to 64 items then delete middle 4.4103 us/op 5.2925 us/op 0.83
OrderedSet add up to 64 items then delete middle 6.7892 us/op 8.3131 us/op 0.82
Set add up to 128 items then delete first 8.9196 us/op 10.668 us/op 0.84
OrderedSet add up to 128 items then delete first 11.859 us/op 14.030 us/op 0.85
Set add up to 128 items then delete last 8.7962 us/op 10.317 us/op 0.85
OrderedSet add up to 128 items then delete last 11.205 us/op 13.824 us/op 0.81
Set add up to 128 items then delete middle 8.7838 us/op 10.583 us/op 0.83
OrderedSet add up to 128 items then delete middle 16.203 us/op 19.893 us/op 0.81
Set add up to 256 items then delete first 17.985 us/op 22.271 us/op 0.81
OrderedSet add up to 256 items then delete first 24.232 us/op 28.936 us/op 0.84
Set add up to 256 items then delete last 17.632 us/op 21.150 us/op 0.83
OrderedSet add up to 256 items then delete last 22.300 us/op 27.807 us/op 0.80
Set add up to 256 items then delete middle 17.560 us/op 21.104 us/op 0.83
OrderedSet add up to 256 items then delete middle 43.719 us/op 52.835 us/op 0.83
transfer serialized Status (84 B) 1.7680 us/op 1.8490 us/op 0.96
copy serialized Status (84 B) 1.4940 us/op 1.6080 us/op 0.93
transfer serialized SignedVoluntaryExit (112 B) 1.9580 us/op 1.9720 us/op 0.99
copy serialized SignedVoluntaryExit (112 B) 1.5900 us/op 1.7530 us/op 0.91
transfer serialized ProposerSlashing (416 B) 2.2660 us/op 2.1970 us/op 1.03
copy serialized ProposerSlashing (416 B) 1.8750 us/op 2.1720 us/op 0.86
transfer serialized Attestation (485 B) 2.3330 us/op 2.7280 us/op 0.86
copy serialized Attestation (485 B) 2.2100 us/op 2.4120 us/op 0.92
transfer serialized AttesterSlashing (33232 B) 2.7720 us/op 2.3520 us/op 1.18
copy serialized AttesterSlashing (33232 B) 6.0130 us/op 7.3170 us/op 0.82
transfer serialized Small SignedBeaconBlock (128000 B) 3.1140 us/op 4.1850 us/op 0.74
copy serialized Small SignedBeaconBlock (128000 B) 14.539 us/op 17.570 us/op 0.83
transfer serialized Avg SignedBeaconBlock (200000 B) 3.2050 us/op 4.1280 us/op 0.78
copy serialized Avg SignedBeaconBlock (200000 B) 20.244 us/op 27.788 us/op 0.73
transfer serialized BlobsSidecar (524380 B) 3.2010 us/op 3.9450 us/op 0.81
copy serialized BlobsSidecar (524380 B) 92.833 us/op 88.806 us/op 1.05
transfer serialized Big SignedBeaconBlock (1000000 B) 2.6890 us/op 4.2490 us/op 0.63
copy serialized Big SignedBeaconBlock (1000000 B) 145.58 us/op 164.25 us/op 0.89
pass gossip attestations to forkchoice per slot 3.7263 ms/op 5.0399 ms/op 0.74
forkChoice updateHead vc 100000 bc 64 eq 0 665.98 us/op 715.65 us/op 0.93
forkChoice updateHead vc 600000 bc 64 eq 0 4.6708 ms/op 5.6795 ms/op 0.82
forkChoice updateHead vc 1000000 bc 64 eq 0 6.8352 ms/op 7.5488 ms/op 0.91
forkChoice updateHead vc 600000 bc 320 eq 0 3.9805 ms/op 4.4250 ms/op 0.90
forkChoice updateHead vc 600000 bc 1200 eq 0 4.0733 ms/op 4.5524 ms/op 0.89
forkChoice updateHead vc 600000 bc 7200 eq 0 4.9998 ms/op 5.4897 ms/op 0.91
forkChoice updateHead vc 600000 bc 64 eq 1000 10.752 ms/op 11.694 ms/op 0.92
forkChoice updateHead vc 600000 bc 64 eq 10000 11.518 ms/op 12.083 ms/op 0.95
forkChoice updateHead vc 600000 bc 64 eq 300000 15.546 ms/op 15.865 ms/op 0.98
computeDeltas 500000 validators 300 proto nodes 6.3264 ms/op 7.2887 ms/op 0.87
computeDeltas 500000 validators 1200 proto nodes 6.4127 ms/op 7.1974 ms/op 0.89
computeDeltas 500000 validators 7200 proto nodes 6.2194 ms/op 7.0313 ms/op 0.88
computeDeltas 750000 validators 300 proto nodes 9.4449 ms/op 11.381 ms/op 0.83
computeDeltas 750000 validators 1200 proto nodes 9.5058 ms/op 11.322 ms/op 0.84
computeDeltas 750000 validators 7200 proto nodes 9.5141 ms/op 11.969 ms/op 0.79
computeDeltas 1400000 validators 300 proto nodes 18.136 ms/op 23.688 ms/op 0.77
computeDeltas 1400000 validators 1200 proto nodes 18.758 ms/op 25.566 ms/op 0.73
computeDeltas 1400000 validators 7200 proto nodes 18.603 ms/op 22.623 ms/op 0.82
computeDeltas 2100000 validators 300 proto nodes 26.857 ms/op 32.698 ms/op 0.82
computeDeltas 2100000 validators 1200 proto nodes 26.414 ms/op 31.304 ms/op 0.84
computeDeltas 2100000 validators 7200 proto nodes 27.432 ms/op 30.846 ms/op 0.89
computeProposerBoostScoreFromBalances 500000 validators 3.6334 ms/op 4.0006 ms/op 0.91
computeProposerBoostScoreFromBalances 750000 validators 3.5758 ms/op 3.9809 ms/op 0.90
computeProposerBoostScoreFromBalances 1400000 validators 3.5727 ms/op 3.8471 ms/op 0.93
computeProposerBoostScoreFromBalances 2100000 validators 3.6558 ms/op 3.8305 ms/op 0.95
altair processAttestation - 250000 vs - 7PWei normalcase 2.1981 ms/op 2.3864 ms/op 0.92
altair processAttestation - 250000 vs - 7PWei worstcase 3.2637 ms/op 3.6158 ms/op 0.90
altair processAttestation - setStatus - 1/6 committees join 176.86 us/op 193.89 us/op 0.91
altair processAttestation - setStatus - 1/3 committees join 340.31 us/op 355.28 us/op 0.96
altair processAttestation - setStatus - 1/2 committees join 464.22 us/op 499.02 us/op 0.93
altair processAttestation - setStatus - 2/3 committees join 582.26 us/op 650.02 us/op 0.90
altair processAttestation - setStatus - 4/5 committees join 766.68 us/op 792.29 us/op 0.97
altair processAttestation - setStatus - 100% committees join 920.28 us/op 932.08 us/op 0.99
altair processBlock - 250000 vs - 7PWei normalcase 10.150 ms/op 11.879 ms/op 0.85
altair processBlock - 250000 vs - 7PWei normalcase hashState 36.382 ms/op 40.189 ms/op 0.91
altair processBlock - 250000 vs - 7PWei worstcase 37.021 ms/op 42.641 ms/op 0.87
altair processBlock - 250000 vs - 7PWei worstcase hashState 95.624 ms/op 107.03 ms/op 0.89
phase0 processBlock - 250000 vs - 7PWei normalcase 2.4369 ms/op 3.0265 ms/op 0.81
phase0 processBlock - 250000 vs - 7PWei worstcase 29.988 ms/op 32.527 ms/op 0.92
altair processEth1Data - 250000 vs - 7PWei normalcase 569.70 us/op 605.27 us/op 0.94
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 11.084 us/op 19.031 us/op 0.58
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 59.748 us/op 70.723 us/op 0.84
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 16.705 us/op 28.826 us/op 0.58
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 10.953 us/op 17.225 us/op 0.64
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 158.32 us/op 248.56 us/op 0.64
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.3199 ms/op 1.5891 ms/op 0.83
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.8351 ms/op 2.5852 ms/op 0.71
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.6719 ms/op 1.8665 ms/op 0.90
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.2032 ms/op 3.5040 ms/op 0.91
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.2323 ms/op 3.2242 ms/op 0.69
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 4.9435 ms/op 6.7203 ms/op 0.74
Tree 40 250000 create 338.55 ms/op 471.28 ms/op 0.72
Tree 40 250000 get(125000) 189.34 ns/op 212.14 ns/op 0.89
Tree 40 250000 set(125000) 989.34 ns/op 1.1024 us/op 0.90
Tree 40 250000 toArray() 18.217 ms/op 23.149 ms/op 0.79
Tree 40 250000 iterate all - toArray() + loop 18.338 ms/op 23.830 ms/op 0.77
Tree 40 250000 iterate all - get(i) 63.882 ms/op 74.601 ms/op 0.86
MutableVector 250000 create 14.517 ms/op 17.910 ms/op 0.81
MutableVector 250000 get(125000) 6.2720 ns/op 6.7490 ns/op 0.93
MutableVector 250000 set(125000) 256.78 ns/op 331.13 ns/op 0.78
MutableVector 250000 toArray() 3.1233 ms/op 3.7421 ms/op 0.83
MutableVector 250000 iterate all - toArray() + loop 3.1651 ms/op 4.6229 ms/op 0.68
MutableVector 250000 iterate all - get(i) 1.4548 ms/op 1.5491 ms/op 0.94
Array 250000 create 2.6434 ms/op 3.8882 ms/op 0.68
Array 250000 clone - spread 1.1813 ms/op 1.4675 ms/op 0.80
Array 250000 get(125000) 0.97600 ns/op 1.1810 ns/op 0.83
Array 250000 set(125000) 3.9020 ns/op 4.5110 ns/op 0.86
Array 250000 iterate all - loop 158.07 us/op 171.31 us/op 0.92
effectiveBalanceIncrements clone Uint8Array 300000 26.641 us/op 36.082 us/op 0.74
effectiveBalanceIncrements clone MutableVector 300000 343.00 ns/op 438.00 ns/op 0.78
effectiveBalanceIncrements rw all Uint8Array 300000 198.36 us/op 200.80 us/op 0.99
effectiveBalanceIncrements rw all MutableVector 300000 79.231 ms/op 100.11 ms/op 0.79
phase0 afterProcessEpoch - 250000 vs - 7PWei 106.90 ms/op 114.62 ms/op 0.93
phase0 beforeProcessEpoch - 250000 vs - 7PWei 51.236 ms/op 37.919 ms/op 1.35
altair processEpoch - mainnet_e81889 516.09 ms/op 509.73 ms/op 1.01
mainnet_e81889 - altair beforeProcessEpoch 86.281 ms/op 86.547 ms/op 1.00
mainnet_e81889 - altair processJustificationAndFinalization 14.786 us/op 15.810 us/op 0.94
mainnet_e81889 - altair processInactivityUpdates 6.2586 ms/op 6.8467 ms/op 0.91
mainnet_e81889 - altair processRewardsAndPenalties 61.937 ms/op 70.668 ms/op 0.88
mainnet_e81889 - altair processRegistryUpdates 2.7760 us/op 3.6660 us/op 0.76
mainnet_e81889 - altair processSlashings 454.00 ns/op 619.00 ns/op 0.73
mainnet_e81889 - altair processEth1DataReset 472.00 ns/op 738.00 ns/op 0.64
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.8833 ms/op 2.4013 ms/op 0.78
mainnet_e81889 - altair processSlashingsReset 3.3050 us/op 4.5420 us/op 0.73
mainnet_e81889 - altair processRandaoMixesReset 4.8940 us/op 6.3180 us/op 0.77
mainnet_e81889 - altair processHistoricalRootsUpdate 621.00 ns/op 1.1150 us/op 0.56
mainnet_e81889 - altair processParticipationFlagUpdates 1.9510 us/op 2.7560 us/op 0.71
mainnet_e81889 - altair processSyncCommitteeUpdates 587.00 ns/op 857.00 ns/op 0.68
mainnet_e81889 - altair afterProcessEpoch 116.62 ms/op 128.64 ms/op 0.91
capella processEpoch - mainnet_e217614 2.3017 s/op 3.4776 s/op 0.66
mainnet_e217614 - capella beforeProcessEpoch 593.77 ms/op 767.56 ms/op 0.77
mainnet_e217614 - capella processJustificationAndFinalization 17.985 us/op 35.892 us/op 0.50
mainnet_e217614 - capella processInactivityUpdates 24.523 ms/op 37.126 ms/op 0.66
mainnet_e217614 - capella processRewardsAndPenalties 478.01 ms/op 529.81 ms/op 0.90
mainnet_e217614 - capella processRegistryUpdates 27.982 us/op 51.132 us/op 0.55
mainnet_e217614 - capella processSlashings 485.00 ns/op 1.7160 us/op 0.28
mainnet_e217614 - capella processEth1DataReset 478.00 ns/op 1.0990 us/op 0.43
mainnet_e217614 - capella processEffectiveBalanceUpdates 7.2720 ms/op 6.4863 ms/op 1.12
mainnet_e217614 - capella processSlashingsReset 3.9060 us/op 10.256 us/op 0.38
mainnet_e217614 - capella processRandaoMixesReset 5.1240 us/op 11.568 us/op 0.44
mainnet_e217614 - capella processHistoricalRootsUpdate 670.00 ns/op 1.3990 us/op 0.48
mainnet_e217614 - capella processParticipationFlagUpdates 1.8290 us/op 4.7770 us/op 0.38
mainnet_e217614 - capella afterProcessEpoch 325.87 ms/op 381.30 ms/op 0.85
phase0 processEpoch - mainnet_e58758 518.70 ms/op 650.89 ms/op 0.80
mainnet_e58758 - phase0 beforeProcessEpoch 181.63 ms/op 171.85 ms/op 1.06
mainnet_e58758 - phase0 processJustificationAndFinalization 23.212 us/op 30.490 us/op 0.76
mainnet_e58758 - phase0 processRewardsAndPenalties 73.308 ms/op 75.242 ms/op 0.97
mainnet_e58758 - phase0 processRegistryUpdates 14.130 us/op 20.793 us/op 0.68
mainnet_e58758 - phase0 processSlashings 706.00 ns/op 1.1740 us/op 0.60
mainnet_e58758 - phase0 processEth1DataReset 493.00 ns/op 1.0350 us/op 0.48
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.2526 ms/op 1.6205 ms/op 0.77
mainnet_e58758 - phase0 processSlashingsReset 3.1840 us/op 7.5760 us/op 0.42
mainnet_e58758 - phase0 processRandaoMixesReset 5.4510 us/op 13.871 us/op 0.39
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.0390 us/op 1.4040 us/op 0.74
mainnet_e58758 - phase0 processParticipationRecordUpdates 9.0730 us/op 8.9600 us/op 1.01
mainnet_e58758 - phase0 afterProcessEpoch 104.27 ms/op 112.03 ms/op 0.93
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.6886 ms/op 1.8641 ms/op 0.91
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.6693 ms/op 2.0772 ms/op 0.80
altair processInactivityUpdates - 250000 normalcase 35.518 ms/op 43.038 ms/op 0.83
altair processInactivityUpdates - 250000 worstcase 37.393 ms/op 36.700 ms/op 1.02
phase0 processRegistryUpdates - 250000 normalcase 12.467 us/op 19.780 us/op 0.63
phase0 processRegistryUpdates - 250000 badcase_full_deposits 411.41 us/op 534.97 us/op 0.77
phase0 processRegistryUpdates - 250000 worstcase 0.5 147.80 ms/op 212.29 ms/op 0.70
altair processRewardsAndPenalties - 250000 normalcase 61.148 ms/op 80.329 ms/op 0.76
altair processRewardsAndPenalties - 250000 worstcase 54.054 ms/op 75.904 ms/op 0.71
phase0 getAttestationDeltas - 250000 normalcase 9.9192 ms/op 13.381 ms/op 0.74
phase0 getAttestationDeltas - 250000 worstcase 10.577 ms/op 14.546 ms/op 0.73
phase0 processSlashings - 250000 worstcase 94.391 us/op 135.86 us/op 0.69
altair processSyncCommitteeUpdates - 250000 182.20 ms/op 224.21 ms/op 0.81
BeaconState.hashTreeRoot - No change 256.00 ns/op 404.00 ns/op 0.63
BeaconState.hashTreeRoot - 1 full validator 164.22 us/op 233.71 us/op 0.70
BeaconState.hashTreeRoot - 32 full validator 1.5333 ms/op 2.2287 ms/op 0.69
BeaconState.hashTreeRoot - 512 full validator 18.369 ms/op 25.339 ms/op 0.72
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 196.87 us/op 232.75 us/op 0.85
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.1220 ms/op 3.5939 ms/op 0.59
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 25.678 ms/op 44.695 ms/op 0.57
BeaconState.hashTreeRoot - 1 balances 125.35 us/op 219.09 us/op 0.57
BeaconState.hashTreeRoot - 32 balances 1.2113 ms/op 2.0601 ms/op 0.59
BeaconState.hashTreeRoot - 512 balances 10.758 ms/op 20.089 ms/op 0.54
BeaconState.hashTreeRoot - 250000 balances 191.12 ms/op 341.05 ms/op 0.56
aggregationBits - 2048 els - zipIndexesInBitList 19.313 us/op 36.335 us/op 0.53
byteArrayEquals 32 76.475 ns/op 87.233 ns/op 0.88
Buffer.compare 32 56.629 ns/op 64.388 ns/op 0.88
byteArrayEquals 1024 2.0636 us/op 2.3764 us/op 0.87
Buffer.compare 1024 70.703 ns/op 82.051 ns/op 0.86
byteArrayEquals 16384 32.963 us/op 38.630 us/op 0.85
Buffer.compare 16384 276.92 ns/op 349.72 ns/op 0.79
byteArrayEquals 123687377 242.37 ms/op 344.54 ms/op 0.70
Buffer.compare 123687377 6.5131 ms/op 13.960 ms/op 0.47
byteArrayEquals 32 - diff last byte 72.376 ns/op 142.80 ns/op 0.51
Buffer.compare 32 - diff last byte 56.656 ns/op 75.890 ns/op 0.75
byteArrayEquals 1024 - diff last byte 2.0309 us/op 2.6518 us/op 0.77
Buffer.compare 1024 - diff last byte 70.598 ns/op 81.880 ns/op 0.86
byteArrayEquals 16384 - diff last byte 32.310 us/op 51.676 us/op 0.63
Buffer.compare 16384 - diff last byte 278.25 ns/op 315.15 ns/op 0.88
byteArrayEquals 123687377 - diff last byte 242.30 ms/op 325.45 ms/op 0.74
Buffer.compare 123687377 - diff last byte 6.1289 ms/op 13.303 ms/op 0.46
byteArrayEquals 32 - random bytes 5.1690 ns/op 7.4980 ns/op 0.69
Buffer.compare 32 - random bytes 58.182 ns/op 73.993 ns/op 0.79
byteArrayEquals 1024 - random bytes 4.9360 ns/op 7.4570 ns/op 0.66
Buffer.compare 1024 - random bytes 57.428 ns/op 71.948 ns/op 0.80
byteArrayEquals 16384 - random bytes 4.9310 ns/op 7.2980 ns/op 0.68
Buffer.compare 16384 - random bytes 57.483 ns/op 69.196 ns/op 0.83
byteArrayEquals 123687377 - random bytes 7.9900 ns/op 23.340 ns/op 0.34
Buffer.compare 123687377 - random bytes 61.190 ns/op 84.540 ns/op 0.72
regular array get 100000 times 42.163 us/op 51.070 us/op 0.83
wrappedArray get 100000 times 42.074 us/op 59.001 us/op 0.71
arrayWithProxy get 100000 times 13.332 ms/op 16.727 ms/op 0.80
ssz.Root.equals 51.765 ns/op 62.031 ns/op 0.83
byteArrayEquals 50.630 ns/op 61.691 ns/op 0.82
Buffer.compare 10.769 ns/op 19.772 ns/op 0.54
shuffle list - 16384 els 6.9187 ms/op 8.3631 ms/op 0.83
shuffle list - 250000 els 101.00 ms/op 122.16 ms/op 0.83
processSlot - 1 slots 16.624 us/op 26.965 us/op 0.62
processSlot - 32 slots 3.2900 ms/op 5.5043 ms/op 0.60
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 56.105 ms/op 77.199 ms/op 0.73
getCommitteeAssignments - req 1 vs - 250000 vc 2.4302 ms/op 3.0514 ms/op 0.80
getCommitteeAssignments - req 100 vs - 250000 vc 3.6260 ms/op 4.3954 ms/op 0.82
getCommitteeAssignments - req 1000 vs - 250000 vc 3.9563 ms/op 4.8533 ms/op 0.82
findModifiedValidators - 10000 modified validators 530.08 ms/op 745.40 ms/op 0.71
findModifiedValidators - 1000 modified validators 397.09 ms/op 609.42 ms/op 0.65
findModifiedValidators - 100 modified validators 404.38 ms/op 543.36 ms/op 0.74
findModifiedValidators - 10 modified validators 422.06 ms/op 567.57 ms/op 0.74
findModifiedValidators - 1 modified validators 391.42 ms/op 539.53 ms/op 0.73
findModifiedValidators - no difference 371.87 ms/op 657.22 ms/op 0.57
compare ViewDUs 4.2722 s/op 6.1247 s/op 0.70
compare each validator Uint8Array 1.6148 s/op 2.2234 s/op 0.73
compare ViewDU to Uint8Array 1.0825 s/op 1.7067 s/op 0.63
migrate state 1000000 validators, 24 modified, 0 new 799.73 ms/op 1.0559 s/op 0.76
migrate state 1000000 validators, 1700 modified, 1000 new 1.0984 s/op 1.4357 s/op 0.77
migrate state 1000000 validators, 3400 modified, 2000 new 1.3010 s/op 1.9712 s/op 0.66
migrate state 1500000 validators, 24 modified, 0 new 796.16 ms/op 1.0498 s/op 0.76
migrate state 1500000 validators, 1700 modified, 1000 new 1.0194 s/op 1.3154 s/op 0.77
migrate state 1500000 validators, 3400 modified, 2000 new 1.4113 s/op 1.7643 s/op 0.80
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.7900 ns/op 6.3200 ns/op 0.76
state getBlockRootAtSlot - 250000 vs - 7PWei 917.29 ns/op 842.77 ns/op 1.09
computeProposers - vc 250000 10.195 ms/op 12.945 ms/op 0.79
computeEpochShuffling - vc 250000 106.28 ms/op 120.42 ms/op 0.88
getNextSyncCommittee - vc 250000 162.12 ms/op 216.80 ms/op 0.75
computeSigningRoot for AttestationData 27.968 us/op 41.076 us/op 0.68
hash AttestationData serialized data then Buffer.toString(base64) 2.2105 us/op 3.0232 us/op 0.73
toHexString serialized data 1.0106 us/op 1.9654 us/op 0.51
Buffer.toString(base64) 203.77 ns/op 311.05 ns/op 0.66

by benchmarkbot/action

@g11tech g11tech merged commit 7a0a031 into unstable Dec 18, 2023
15 checks passed
@g11tech g11tech deleted the tuyen/log_api_block_transition_steps branch December 18, 2023 09:01
@wemeetagain
Copy link
Member

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

3 participants