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

fix: logtrace produced cache population for blinded block assembly #6131

Merged
merged 4 commits into from
Nov 30, 2023

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Nov 27, 2023

we have observed issues where a engine block produced via produceBlindedBlock race doesn't get found while assembling from local cache when subsequently published via publishBlindedBlock.

this PR add more logtrace to decipher the problem and also fixes an issue for engine block root calc and tracking which shouldn't have anyway interfered with the engine block assembly at the time of publishBlindedBlock

plus added slot to various logs so that log search by the slot shows up all relevant logs for debugging

@g11tech g11tech requested a review from a team as a code owner November 27, 2023 09:35
@g11tech g11tech changed the title fix: logtrace produced cache population for blinded block assembley fix: logtrace produced cache population for blinded block assembly Nov 27, 2023
Copy link
Contributor

github-actions bot commented Nov 27, 2023

⚠️ Performance Alert ⚠️

Possible performance regression was detected for some benchmarks.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold.

Benchmark suite Current: f0d72f1 Previous: 959a8af Ratio
phase0 processSlashings - 250000 worstcase 1.6309 ms/op 130.59 us/op 12.49
Full benchmark results
Benchmark suite Current: f0d72f1 Previous: 959a8af Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 439.69 us/op 911.68 us/op 0.48
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 55.359 us/op 143.52 us/op 0.39
BLS verify - blst-native 1.1248 ms/op 1.4383 ms/op 0.78
BLS verifyMultipleSignatures 3 - blst-native 2.4139 ms/op 2.9960 ms/op 0.81
BLS verifyMultipleSignatures 8 - blst-native 5.3464 ms/op 6.9110 ms/op 0.77
BLS verifyMultipleSignatures 32 - blst-native 19.607 ms/op 25.059 ms/op 0.78
BLS verifyMultipleSignatures 64 - blst-native 38.434 ms/op 46.851 ms/op 0.82
BLS verifyMultipleSignatures 128 - blst-native 76.982 ms/op 96.479 ms/op 0.80
BLS deserializing 10000 signatures 827.60 ms/op 974.85 ms/op 0.85
BLS deserializing 100000 signatures 8.3114 s/op 9.4597 s/op 0.88
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.1491 ms/op 1.4177 ms/op 0.81
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.2940 ms/op 1.6431 ms/op 0.79
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.4380 ms/op 2.4896 ms/op 0.98
BLS verifyMultipleSignatures - same message - 64 - blst-native 3.1443 ms/op 3.8370 ms/op 0.82
BLS verifyMultipleSignatures - same message - 128 - blst-native 6.6584 ms/op 6.5170 ms/op 1.02
BLS aggregatePubkeys 32 - blst-native 24.763 us/op 29.000 us/op 0.85
BLS aggregatePubkeys 128 - blst-native 89.592 us/op 105.46 us/op 0.85
getAttestationsForBlock 40.107 ms/op 70.130 ms/op 0.57
isKnown best case - 1 super set check 345.00 ns/op 708.00 ns/op 0.49
isKnown normal case - 2 super set checks 333.00 ns/op 769.00 ns/op 0.43
isKnown worse case - 16 super set checks 348.00 ns/op 768.00 ns/op 0.45
CheckpointStateCache - add get delete 6.1000 us/op 6.9440 us/op 0.88
validate api signedAggregateAndProof - struct 2.4556 ms/op 3.2607 ms/op 0.75
validate gossip signedAggregateAndProof - struct 2.4264 ms/op 3.1945 ms/op 0.76
validate gossip attestation - vc 640000 1.1612 ms/op 1.4856 ms/op 0.78
batch validate gossip attestation - vc 640000 - chunk 32 143.77 us/op 190.39 us/op 0.76
batch validate gossip attestation - vc 640000 - chunk 64 133.40 us/op 169.64 us/op 0.79
batch validate gossip attestation - vc 640000 - chunk 128 132.85 us/op 167.40 us/op 0.79
batch validate gossip attestation - vc 640000 - chunk 256 134.91 us/op 148.47 us/op 0.91
pickEth1Vote - no votes 1.3326 ms/op 1.4465 ms/op 0.92
pickEth1Vote - max votes 13.810 ms/op 13.807 ms/op 1.00
pickEth1Vote - Eth1Data hashTreeRoot value x2048 23.804 ms/op 22.297 ms/op 1.07
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 38.617 ms/op 32.967 ms/op 1.17
pickEth1Vote - Eth1Data fastSerialize value x2048 531.93 us/op 784.87 us/op 0.68
pickEth1Vote - Eth1Data fastSerialize tree x2048 10.766 ms/op 6.1774 ms/op 1.74
bytes32 toHexString 818.00 ns/op 882.00 ns/op 0.93
bytes32 Buffer.toString(hex) 464.00 ns/op 311.00 ns/op 1.49
bytes32 Buffer.toString(hex) from Uint8Array 764.00 ns/op 615.00 ns/op 1.24
bytes32 Buffer.toString(hex) + 0x 481.00 ns/op 315.00 ns/op 1.53
Object access 1 prop 0.28000 ns/op 0.25800 ns/op 1.09
Map access 1 prop 0.25700 ns/op 0.16400 ns/op 1.57
Object get x1000 5.5000 ns/op 10.074 ns/op 0.55
Map get x1000 0.93500 ns/op 1.0590 ns/op 0.88
Object set x1000 40.496 ns/op 80.456 ns/op 0.50
Map set x1000 22.947 ns/op 60.552 ns/op 0.38
Return object 10000 times 0.28090 ns/op 0.28160 ns/op 1.00
Throw Error 10000 times 2.9717 us/op 4.2248 us/op 0.70
fastMsgIdFn sha256 / 200 bytes 2.8720 us/op 3.5570 us/op 0.81
fastMsgIdFn h32 xxhash / 200 bytes 429.00 ns/op 375.00 ns/op 1.14
fastMsgIdFn h64 xxhash / 200 bytes 441.00 ns/op 408.00 ns/op 1.08
fastMsgIdFn sha256 / 1000 bytes 6.8530 us/op 12.030 us/op 0.57
fastMsgIdFn h32 xxhash / 1000 bytes 615.00 ns/op 520.00 ns/op 1.18
fastMsgIdFn h64 xxhash / 1000 bytes 568.00 ns/op 526.00 ns/op 1.08
fastMsgIdFn sha256 / 10000 bytes 58.713 us/op 113.42 us/op 0.52
fastMsgIdFn h32 xxhash / 10000 bytes 1.9660 us/op 2.3660 us/op 0.83
fastMsgIdFn h64 xxhash / 10000 bytes 1.3500 us/op 1.6670 us/op 0.81
send data - 1000 256B messages 17.364 ms/op 26.837 ms/op 0.65
send data - 1000 512B messages 20.491 ms/op 30.437 ms/op 0.67
send data - 1000 1024B messages 28.792 ms/op 46.990 ms/op 0.61
send data - 1000 1200B messages 31.845 ms/op 57.095 ms/op 0.56
send data - 1000 2048B messages 51.252 ms/op 60.554 ms/op 0.85
send data - 1000 4096B messages 50.522 ms/op 51.938 ms/op 0.97
send data - 1000 16384B messages 122.13 ms/op 120.91 ms/op 1.01
send data - 1000 65536B messages 550.55 ms/op 491.40 ms/op 1.12
enrSubnets - fastDeserialize 64 bits 1.6490 us/op 1.4350 us/op 1.15
enrSubnets - ssz BitVector 64 bits 790.00 ns/op 483.00 ns/op 1.64
enrSubnets - fastDeserialize 4 bits 303.00 ns/op 209.00 ns/op 1.45
enrSubnets - ssz BitVector 4 bits 759.00 ns/op 592.00 ns/op 1.28
prioritizePeers score -10:0 att 32-0.1 sync 2-0 96.437 us/op 112.96 us/op 0.85
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 130.83 us/op 145.84 us/op 0.90
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 191.15 us/op 196.42 us/op 0.97
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 297.46 us/op 333.78 us/op 0.89
prioritizePeers score 0:0 att 64-1 sync 4-1 309.57 us/op 356.96 us/op 0.87
array of 16000 items push then shift 1.4055 us/op 1.7004 us/op 0.83
LinkedList of 16000 items push then shift 9.1040 ns/op 9.1810 ns/op 0.99
array of 16000 items push then pop 139.77 ns/op 105.65 ns/op 1.32
LinkedList of 16000 items push then pop 8.6070 ns/op 9.8020 ns/op 0.88
array of 24000 items push then shift 2.0312 us/op 2.5838 us/op 0.79
LinkedList of 24000 items push then shift 6.6800 ns/op 9.4740 ns/op 0.71
array of 24000 items push then pop 186.98 ns/op 145.46 ns/op 1.29
LinkedList of 24000 items push then pop 9.9940 ns/op 9.1240 ns/op 1.10
intersect bitArray bitLen 8 5.1970 ns/op 6.7060 ns/op 0.77
intersect array and set length 8 101.38 ns/op 70.184 ns/op 1.44
intersect bitArray bitLen 128 34.692 ns/op 35.055 ns/op 0.99
intersect array and set length 128 1.0633 us/op 989.22 ns/op 1.07
bitArray.getTrueBitIndexes() bitLen 128 1.9460 us/op 1.6370 us/op 1.19
bitArray.getTrueBitIndexes() bitLen 248 3.4390 us/op 2.6430 us/op 1.30
bitArray.getTrueBitIndexes() bitLen 512 7.1100 us/op 5.9570 us/op 1.19
Buffer.concat 32 items 1.2450 us/op 1.2460 us/op 1.00
Uint8Array.set 32 items 2.0640 us/op 2.1320 us/op 0.97
Set add up to 64 items then delete first 2.1687 us/op 5.0827 us/op 0.43
OrderedSet add up to 64 items then delete first 3.3544 us/op 5.9899 us/op 0.56
Set add up to 64 items then delete last 2.4336 us/op 5.0841 us/op 0.48
OrderedSet add up to 64 items then delete last 3.8127 us/op 6.0187 us/op 0.63
Set add up to 64 items then delete middle 2.1116 us/op 4.8251 us/op 0.44
OrderedSet add up to 64 items then delete middle 4.6581 us/op 7.1754 us/op 0.65
Set add up to 128 items then delete first 4.3486 us/op 9.4938 us/op 0.46
OrderedSet add up to 128 items then delete first 6.6705 us/op 12.918 us/op 0.52
Set add up to 128 items then delete last 4.2788 us/op 9.4159 us/op 0.45
OrderedSet add up to 128 items then delete last 6.8058 us/op 11.833 us/op 0.58
Set add up to 128 items then delete middle 5.2800 us/op 10.407 us/op 0.51
OrderedSet add up to 128 items then delete middle 13.085 us/op 20.301 us/op 0.64
Set add up to 256 items then delete first 10.715 us/op 21.594 us/op 0.50
OrderedSet add up to 256 items then delete first 19.980 us/op 30.389 us/op 0.66
Set add up to 256 items then delete last 8.7814 us/op 22.062 us/op 0.40
OrderedSet add up to 256 items then delete last 15.022 us/op 29.063 us/op 0.52
Set add up to 256 items then delete middle 10.667 us/op 20.098 us/op 0.53
OrderedSet add up to 256 items then delete middle 39.877 us/op 49.767 us/op 0.80
transfer serialized Status (84 B) 1.9460 us/op 1.9810 us/op 0.98
copy serialized Status (84 B) 1.8320 us/op 1.6270 us/op 1.13
transfer serialized SignedVoluntaryExit (112 B) 2.5460 us/op 1.8610 us/op 1.37
copy serialized SignedVoluntaryExit (112 B) 1.9130 us/op 1.6450 us/op 1.16
transfer serialized ProposerSlashing (416 B) 2.8830 us/op 2.2020 us/op 1.31
copy serialized ProposerSlashing (416 B) 3.7600 us/op 2.1100 us/op 1.78
transfer serialized Attestation (485 B) 3.0300 us/op 2.5920 us/op 1.17
copy serialized Attestation (485 B) 3.3200 us/op 2.7260 us/op 1.22
transfer serialized AttesterSlashing (33232 B) 3.4950 us/op 3.0050 us/op 1.16
copy serialized AttesterSlashing (33232 B) 10.323 us/op 6.4330 us/op 1.60
transfer serialized Small SignedBeaconBlock (128000 B) 3.7140 us/op 2.7790 us/op 1.34
copy serialized Small SignedBeaconBlock (128000 B) 31.548 us/op 16.316 us/op 1.93
transfer serialized Avg SignedBeaconBlock (200000 B) 4.0890 us/op 3.1660 us/op 1.29
copy serialized Avg SignedBeaconBlock (200000 B) 92.867 us/op 21.072 us/op 4.41
transfer serialized BlobsSidecar (524380 B) 3.7380 us/op 3.4510 us/op 1.08
copy serialized BlobsSidecar (524380 B) 125.86 us/op 132.64 us/op 0.95
transfer serialized Big SignedBeaconBlock (1000000 B) 4.9510 us/op 3.9930 us/op 1.24
copy serialized Big SignedBeaconBlock (1000000 B) 431.19 us/op 308.69 us/op 1.40
pass gossip attestations to forkchoice per slot 3.3343 ms/op 4.4865 ms/op 0.74
forkChoice updateHead vc 100000 bc 64 eq 0 625.63 us/op 711.90 us/op 0.88
forkChoice updateHead vc 600000 bc 64 eq 0 4.8970 ms/op 4.3284 ms/op 1.13
forkChoice updateHead vc 1000000 bc 64 eq 0 4.8027 ms/op 7.0640 ms/op 0.68
forkChoice updateHead vc 600000 bc 320 eq 0 3.0033 ms/op 4.2164 ms/op 0.71
forkChoice updateHead vc 600000 bc 1200 eq 0 3.3189 ms/op 4.3704 ms/op 0.76
forkChoice updateHead vc 600000 bc 7200 eq 0 4.2291 ms/op 5.3400 ms/op 0.79
forkChoice updateHead vc 600000 bc 64 eq 1000 10.239 ms/op 11.408 ms/op 0.90
forkChoice updateHead vc 600000 bc 64 eq 10000 10.120 ms/op 12.199 ms/op 0.83
forkChoice updateHead vc 600000 bc 64 eq 300000 12.703 ms/op 20.223 ms/op 0.63
computeDeltas 500000 validators 300 proto nodes 3.4951 ms/op 7.0513 ms/op 0.50
computeDeltas 500000 validators 1200 proto nodes 3.3082 ms/op 6.6754 ms/op 0.50
computeDeltas 500000 validators 7200 proto nodes 3.2234 ms/op 6.5907 ms/op 0.49
computeDeltas 750000 validators 300 proto nodes 5.0878 ms/op 9.7794 ms/op 0.52
computeDeltas 750000 validators 1200 proto nodes 4.8860 ms/op 9.5770 ms/op 0.51
computeDeltas 750000 validators 7200 proto nodes 4.7360 ms/op 9.4889 ms/op 0.50
computeDeltas 1400000 validators 300 proto nodes 9.0757 ms/op 19.036 ms/op 0.48
computeDeltas 1400000 validators 1200 proto nodes 9.6968 ms/op 19.429 ms/op 0.50
computeDeltas 1400000 validators 7200 proto nodes 9.6872 ms/op 19.117 ms/op 0.51
computeDeltas 2100000 validators 300 proto nodes 14.353 ms/op 28.997 ms/op 0.49
computeDeltas 2100000 validators 1200 proto nodes 13.767 ms/op 29.171 ms/op 0.47
computeDeltas 2100000 validators 7200 proto nodes 13.500 ms/op 29.902 ms/op 0.45
computeProposerBoostScoreFromBalances 500000 validators 3.3259 ms/op 3.8310 ms/op 0.87
computeProposerBoostScoreFromBalances 750000 validators 3.3110 ms/op 3.8424 ms/op 0.86
computeProposerBoostScoreFromBalances 1400000 validators 3.2898 ms/op 3.8969 ms/op 0.84
computeProposerBoostScoreFromBalances 2100000 validators 3.3723 ms/op 4.0735 ms/op 0.83
altair processAttestation - 250000 vs - 7PWei normalcase 2.2486 ms/op 2.5444 ms/op 0.88
altair processAttestation - 250000 vs - 7PWei worstcase 2.9278 ms/op 4.2966 ms/op 0.68
altair processAttestation - setStatus - 1/6 committees join 76.608 us/op 203.62 us/op 0.38
altair processAttestation - setStatus - 1/3 committees join 163.32 us/op 378.28 us/op 0.43
altair processAttestation - setStatus - 1/2 committees join 232.14 us/op 510.80 us/op 0.45
altair processAttestation - setStatus - 2/3 committees join 300.82 us/op 646.91 us/op 0.47
altair processAttestation - setStatus - 4/5 committees join 420.01 us/op 853.04 us/op 0.49
altair processAttestation - setStatus - 100% committees join 533.40 us/op 999.95 us/op 0.53
altair processBlock - 250000 vs - 7PWei normalcase 7.3932 ms/op 11.817 ms/op 0.63
altair processBlock - 250000 vs - 7PWei normalcase hashState 32.802 ms/op 41.779 ms/op 0.79
altair processBlock - 250000 vs - 7PWei worstcase 37.325 ms/op 40.790 ms/op 0.92
altair processBlock - 250000 vs - 7PWei worstcase hashState 88.523 ms/op 109.81 ms/op 0.81
phase0 processBlock - 250000 vs - 7PWei normalcase 3.0240 ms/op 3.1684 ms/op 0.95
phase0 processBlock - 250000 vs - 7PWei worstcase 26.614 ms/op 33.832 ms/op 0.79
altair processEth1Data - 250000 vs - 7PWei normalcase 305.41 us/op 791.81 us/op 0.39
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 13.636 us/op 11.257 us/op 1.21
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 58.143 us/op 99.270 us/op 0.59
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 14.348 us/op 32.196 us/op 0.45
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 13.631 us/op 19.570 us/op 0.70
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 192.84 us/op 187.58 us/op 1.03
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 868.35 us/op 1.3045 ms/op 0.67
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 985.71 us/op 2.0607 ms/op 0.48
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 856.50 us/op 2.1386 ms/op 0.40
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.0449 ms/op 4.4531 ms/op 0.46
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.5392 ms/op 2.8024 ms/op 0.55
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.9139 ms/op 6.8683 ms/op 0.57
Tree 40 250000 create 314.18 ms/op 420.33 ms/op 0.75
Tree 40 250000 get(125000) 117.52 ns/op 213.91 ns/op 0.55
Tree 40 250000 set(125000) 736.96 ns/op 1.0496 us/op 0.70
Tree 40 250000 toArray() 21.895 ms/op 23.169 ms/op 0.94
Tree 40 250000 iterate all - toArray() + loop 21.872 ms/op 24.215 ms/op 0.90
Tree 40 250000 iterate all - get(i) 51.035 ms/op 77.775 ms/op 0.66
MutableVector 250000 create 10.894 ms/op 17.677 ms/op 0.62
MutableVector 250000 get(125000) 5.7610 ns/op 6.7180 ns/op 0.86
MutableVector 250000 set(125000) 216.33 ns/op 308.13 ns/op 0.70
MutableVector 250000 toArray() 3.0162 ms/op 5.6349 ms/op 0.54
MutableVector 250000 iterate all - toArray() + loop 2.6461 ms/op 4.5221 ms/op 0.59
MutableVector 250000 iterate all - get(i) 1.3418 ms/op 1.5794 ms/op 0.85
Array 250000 create 3.4463 ms/op 3.3311 ms/op 1.03
Array 250000 clone - spread 1.0703 ms/op 1.2541 ms/op 0.85
Array 250000 get(125000) 1.0030 ns/op 1.0820 ns/op 0.93
Array 250000 set(125000) 1.1750 ns/op 4.2110 ns/op 0.28
Array 250000 iterate all - loop 150.91 us/op 170.24 us/op 0.89
effectiveBalanceIncrements clone Uint8Array 300000 21.189 us/op 33.802 us/op 0.63
effectiveBalanceIncrements clone MutableVector 300000 374.00 ns/op 375.00 ns/op 1.00
effectiveBalanceIncrements rw all Uint8Array 300000 179.63 us/op 212.86 us/op 0.84
effectiveBalanceIncrements rw all MutableVector 300000 71.759 ms/op 97.650 ms/op 0.73
phase0 afterProcessEpoch - 250000 vs - 7PWei 78.509 ms/op 120.04 ms/op 0.65
phase0 beforeProcessEpoch - 250000 vs - 7PWei 44.822 ms/op 60.270 ms/op 0.74
altair processEpoch - mainnet_e81889 400.47 ms/op 473.92 ms/op 0.85
mainnet_e81889 - altair beforeProcessEpoch 76.662 ms/op 92.684 ms/op 0.83
mainnet_e81889 - altair processJustificationAndFinalization 10.747 us/op 19.786 us/op 0.54
mainnet_e81889 - altair processInactivityUpdates 5.9539 ms/op 7.3070 ms/op 0.81
mainnet_e81889 - altair processRewardsAndPenalties 55.925 ms/op 82.105 ms/op 0.68
mainnet_e81889 - altair processRegistryUpdates 2.3890 us/op 3.0280 us/op 0.79
mainnet_e81889 - altair processSlashings 968.00 ns/op 877.00 ns/op 1.10
mainnet_e81889 - altair processEth1DataReset 761.00 ns/op 1.4020 us/op 0.54
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.0545 ms/op 2.5082 ms/op 0.42
mainnet_e81889 - altair processSlashingsReset 5.5120 us/op 7.9100 us/op 0.70
mainnet_e81889 - altair processRandaoMixesReset 4.5460 us/op 12.058 us/op 0.38
mainnet_e81889 - altair processHistoricalRootsUpdate 890.00 ns/op 1.0910 us/op 0.82
mainnet_e81889 - altair processParticipationFlagUpdates 6.5010 us/op 3.6550 us/op 1.78
mainnet_e81889 - altair processSyncCommitteeUpdates 1.5670 us/op 1.0870 us/op 1.44
mainnet_e81889 - altair afterProcessEpoch 82.896 ms/op 128.59 ms/op 0.64
capella processEpoch - mainnet_e217614 2.4996 s/op 2.4033 s/op 1.04
mainnet_e217614 - capella beforeProcessEpoch 499.35 ms/op 522.97 ms/op 0.95
mainnet_e217614 - capella processJustificationAndFinalization 12.897 us/op 19.899 us/op 0.65
mainnet_e217614 - capella processInactivityUpdates 22.082 ms/op 25.090 ms/op 0.88
mainnet_e217614 - capella processRewardsAndPenalties 477.23 ms/op 468.37 ms/op 1.02
mainnet_e217614 - capella processRegistryUpdates 8.1240 us/op 30.148 us/op 0.27
mainnet_e217614 - capella processSlashings 605.00 ns/op 1.0210 us/op 0.59
mainnet_e217614 - capella processEth1DataReset 690.00 ns/op 694.00 ns/op 0.99
mainnet_e217614 - capella processEffectiveBalanceUpdates 3.3421 ms/op 7.4805 ms/op 0.45
mainnet_e217614 - capella processSlashingsReset 1.6910 us/op 6.7600 us/op 0.25
mainnet_e217614 - capella processRandaoMixesReset 3.7480 us/op 8.7710 us/op 0.43
mainnet_e217614 - capella processHistoricalRootsUpdate 634.00 ns/op 877.00 ns/op 0.72
mainnet_e217614 - capella processParticipationFlagUpdates 2.3540 us/op 4.3210 us/op 0.54
mainnet_e217614 - capella afterProcessEpoch 224.92 ms/op 333.26 ms/op 0.67
phase0 processEpoch - mainnet_e58758 382.08 ms/op 557.77 ms/op 0.69
mainnet_e58758 - phase0 beforeProcessEpoch 129.19 ms/op 152.40 ms/op 0.85
mainnet_e58758 - phase0 processJustificationAndFinalization 13.791 us/op 20.057 us/op 0.69
mainnet_e58758 - phase0 processRewardsAndPenalties 60.337 ms/op 63.551 ms/op 0.95
mainnet_e58758 - phase0 processRegistryUpdates 11.449 us/op 14.985 us/op 0.76
mainnet_e58758 - phase0 processSlashings 688.00 ns/op 1.1170 us/op 0.62
mainnet_e58758 - phase0 processEth1DataReset 639.00 ns/op 455.00 ns/op 1.40
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 831.48 us/op 1.2157 ms/op 0.68
mainnet_e58758 - phase0 processSlashingsReset 2.6450 us/op 3.2290 us/op 0.82
mainnet_e58758 - phase0 processRandaoMixesReset 5.3820 us/op 5.1990 us/op 1.04
mainnet_e58758 - phase0 processHistoricalRootsUpdate 727.00 ns/op 475.00 ns/op 1.53
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.8830 us/op 12.744 us/op 0.38
mainnet_e58758 - phase0 afterProcessEpoch 74.219 ms/op 107.58 ms/op 0.69
phase0 processEffectiveBalanceUpdates - 250000 normalcase 995.11 us/op 1.5921 ms/op 0.63
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.3084 ms/op 1.5340 ms/op 0.85
altair processInactivityUpdates - 250000 normalcase 30.313 ms/op 25.137 ms/op 1.21
altair processInactivityUpdates - 250000 worstcase 30.773 ms/op 24.518 ms/op 1.26
phase0 processRegistryUpdates - 250000 normalcase 10.726 us/op 14.164 us/op 0.76
phase0 processRegistryUpdates - 250000 badcase_full_deposits 426.25 us/op 403.33 us/op 1.06
phase0 processRegistryUpdates - 250000 worstcase 0.5 135.55 ms/op 154.05 ms/op 0.88
altair processRewardsAndPenalties - 250000 normalcase 64.827 ms/op 63.865 ms/op 1.02
altair processRewardsAndPenalties - 250000 worstcase 61.848 ms/op 61.609 ms/op 1.00
phase0 getAttestationDeltas - 250000 normalcase 8.5324 ms/op 12.050 ms/op 0.71
phase0 getAttestationDeltas - 250000 worstcase 6.0470 ms/op 13.109 ms/op 0.46
phase0 processSlashings - 250000 worstcase 1.6309 ms/op 130.59 us/op 12.49
altair processSyncCommitteeUpdates - 250000 119.99 ms/op 181.12 ms/op 0.66
BeaconState.hashTreeRoot - No change 324.00 ns/op 300.00 ns/op 1.08
BeaconState.hashTreeRoot - 1 full validator 93.785 us/op 161.70 us/op 0.58
BeaconState.hashTreeRoot - 32 full validator 1.5517 ms/op 1.6978 ms/op 0.91
BeaconState.hashTreeRoot - 512 full validator 20.119 ms/op 15.561 ms/op 1.29
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 202.12 us/op 177.36 us/op 1.14
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.0844 ms/op 2.8349 ms/op 0.74
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 26.876 ms/op 33.988 ms/op 0.79
BeaconState.hashTreeRoot - 1 balances 133.64 us/op 156.09 us/op 0.86
BeaconState.hashTreeRoot - 32 balances 1.5724 ms/op 1.4767 ms/op 1.06
BeaconState.hashTreeRoot - 512 balances 12.062 ms/op 14.718 ms/op 0.82
BeaconState.hashTreeRoot - 250000 balances 216.95 ms/op 235.47 ms/op 0.92
aggregationBits - 2048 els - zipIndexesInBitList 11.205 us/op 31.765 us/op 0.35
byteArrayEquals 32 65.170 ns/op 80.944 ns/op 0.81
Buffer.compare 32 37.864 ns/op 58.475 ns/op 0.65
byteArrayEquals 1024 1.7506 us/op 2.1796 us/op 0.80
Buffer.compare 1024 46.928 ns/op 81.957 ns/op 0.57
byteArrayEquals 16384 28.791 us/op 35.250 us/op 0.82
Buffer.compare 16384 202.94 ns/op 296.20 ns/op 0.69
byteArrayEquals 123687377 211.60 ms/op 272.76 ms/op 0.78
Buffer.compare 123687377 5.5584 ms/op 11.968 ms/op 0.46
byteArrayEquals 32 - diff last byte 61.866 ns/op 91.374 ns/op 0.68
Buffer.compare 32 - diff last byte 38.093 ns/op 61.239 ns/op 0.62
byteArrayEquals 1024 - diff last byte 1.7774 us/op 2.1731 us/op 0.82
Buffer.compare 1024 - diff last byte 48.067 ns/op 82.834 ns/op 0.58
byteArrayEquals 16384 - diff last byte 27.843 us/op 33.839 us/op 0.82
Buffer.compare 16384 - diff last byte 231.57 ns/op 316.11 ns/op 0.73
byteArrayEquals 123687377 - diff last byte 210.01 ms/op 269.74 ms/op 0.78
Buffer.compare 123687377 - diff last byte 5.1466 ms/op 11.755 ms/op 0.44
byteArrayEquals 32 - random bytes 4.8290 ns/op 8.7450 ns/op 0.55
Buffer.compare 32 - random bytes 40.920 ns/op 70.871 ns/op 0.58
byteArrayEquals 1024 - random bytes 4.7410 ns/op 7.1690 ns/op 0.66
Buffer.compare 1024 - random bytes 37.634 ns/op 68.386 ns/op 0.55
byteArrayEquals 16384 - random bytes 4.5380 ns/op 7.3550 ns/op 0.62
Buffer.compare 16384 - random bytes 38.412 ns/op 67.346 ns/op 0.57
byteArrayEquals 123687377 - random bytes 8.0200 ns/op 22.840 ns/op 0.35
Buffer.compare 123687377 - random bytes 63.730 ns/op 81.400 ns/op 0.78
regular array get 100000 times 42.252 us/op 55.798 us/op 0.76
wrappedArray get 100000 times 43.075 us/op 47.781 us/op 0.90
arrayWithProxy get 100000 times 10.909 ms/op 15.966 ms/op 0.68
ssz.Root.equals 55.922 ns/op 57.645 ns/op 0.97
byteArrayEquals 55.072 ns/op 57.018 ns/op 0.97
Buffer.compare 9.6170 ns/op 13.342 ns/op 0.72
shuffle list - 16384 els 4.5862 ms/op 7.5900 ms/op 0.60
shuffle list - 250000 els 67.725 ms/op 117.16 ms/op 0.58
processSlot - 1 slots 16.857 us/op 20.849 us/op 0.81
processSlot - 32 slots 3.9997 ms/op 4.3583 ms/op 0.92
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 46.448 ms/op 81.681 ms/op 0.57
getCommitteeAssignments - req 1 vs - 250000 vc 2.2626 ms/op 3.0244 ms/op 0.75
getCommitteeAssignments - req 100 vs - 250000 vc 3.4520 ms/op 4.4168 ms/op 0.78
getCommitteeAssignments - req 1000 vs - 250000 vc 3.7282 ms/op 5.1320 ms/op 0.73
findModifiedValidators - 10000 modified validators 419.03 ms/op 801.55 ms/op 0.52
findModifiedValidators - 1000 modified validators 315.44 ms/op 624.77 ms/op 0.50
findModifiedValidators - 100 modified validators 317.08 ms/op 656.57 ms/op 0.48
findModifiedValidators - 10 modified validators 343.86 ms/op 602.26 ms/op 0.57
findModifiedValidators - 1 modified validators 306.47 ms/op 608.15 ms/op 0.50
findModifiedValidators - no difference 280.81 ms/op 550.35 ms/op 0.51
compare ViewDUs 4.1060 s/op 5.2614 s/op 0.78
compare each validator Uint8Array 1.5415 s/op 2.1780 s/op 0.71
compare ViewDU to Uint8Array 828.99 ms/op 1.4644 s/op 0.57
migrate state 1000000 validators, 24 modified, 0 new 692.07 ms/op 858.28 ms/op 0.81
migrate state 1000000 validators, 1700 modified, 1000 new 942.02 ms/op 1.4165 s/op 0.67
migrate state 1000000 validators, 3400 modified, 2000 new 1.2703 s/op 1.8393 s/op 0.69
migrate state 1500000 validators, 24 modified, 0 new 717.03 ms/op 1.3266 s/op 0.54
migrate state 1500000 validators, 1700 modified, 1000 new 1.0848 s/op 1.5583 s/op 0.70
migrate state 1500000 validators, 3400 modified, 2000 new 1.1186 s/op 1.7538 s/op 0.64
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.4800 ns/op 6.2300 ns/op 0.72
state getBlockRootAtSlot - 250000 vs - 7PWei 613.25 ns/op 869.22 ns/op 0.71
computeProposers - vc 250000 6.1984 ms/op 11.451 ms/op 0.54
computeEpochShuffling - vc 250000 67.531 ms/op 122.61 ms/op 0.55
getNextSyncCommittee - vc 250000 126.20 ms/op 200.71 ms/op 0.63
computeSigningRoot for AttestationData 26.767 us/op 40.465 us/op 0.66
hash AttestationData serialized data then Buffer.toString(base64) 1.2067 us/op 2.7089 us/op 0.45
toHexString serialized data 776.62 ns/op 2.0970 us/op 0.37
Buffer.toString(base64) 151.70 ns/op 321.92 ns/op 0.47

by benchmarkbot/action

@g11tech g11tech merged commit a8e3667 into unstable Nov 30, 2023
14 of 15 checks passed
@g11tech g11tech deleted the g11tech/logtrack-producedcache branch November 30, 2023 14:23
philknows pushed a commit that referenced this pull request Nov 30, 2023
…6131)

* fix: logtrack produced cache population for blinded block assembley

* add a bit more of log

* cleanup

* remove redundant log
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.12.1 🎉

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

4 participants