-
-
Notifications
You must be signed in to change notification settings - Fork 287
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
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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
|
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
dapplion
reviewed
Nov 28, 2023
philknows
approved these changes
Nov 30, 2023
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
This was referenced Dec 1, 2023
🎉 This PR is included in v1.12.1 🎉 |
🎉 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
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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