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

feat: add logs to track number of http retries #6458

Merged
merged 1 commit into from
Feb 20, 2024

Conversation

nflaig
Copy link
Member

@nflaig nflaig commented Feb 20, 2024

Motivation

We added retry functionality to builder publish requests in #6387 but there is no way to see if retries were actually required or not, and what was the error that caused the retry. This information is important in case we miss or orphan a block due to delayed publishing.

Description

Add logs to track number of http retries

@nflaig nflaig requested a review from a team as a code owner February 20, 2024 12:49
@nflaig nflaig added this to the v1.16.0 milestone Feb 20, 2024
Copy link

codecov bot commented Feb 20, 2024

Codecov Report

Merging #6458 (d2b4e65) into unstable (0e9fc49) will increase coverage by 0.00%.
Report is 2 commits behind head on unstable.
The diff coverage is 60.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##           unstable    #6458   +/-   ##
=========================================
  Coverage     61.63%   61.63%           
=========================================
  Files           553      553           
  Lines         57975    57992   +17     
  Branches       1833     1836    +3     
=========================================
+ Hits          35732    35743   +11     
- Misses        22206    22211    +5     
- Partials         37       38    +1     

Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 8060d14 Previous: 6b01690 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 693.09 us/op 1.1233 ms/op 0.62
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 84.715 us/op 135.80 us/op 0.62
BLS verify - blst-native 1.2824 ms/op 1.4628 ms/op 0.88
BLS verifyMultipleSignatures 3 - blst-native 2.7073 ms/op 3.2314 ms/op 0.84
BLS verifyMultipleSignatures 8 - blst-native 6.0252 ms/op 7.1446 ms/op 0.84
BLS verifyMultipleSignatures 32 - blst-native 21.710 ms/op 27.181 ms/op 0.80
BLS verifyMultipleSignatures 64 - blst-native 42.590 ms/op 49.198 ms/op 0.87
BLS verifyMultipleSignatures 128 - blst-native 83.980 ms/op 97.335 ms/op 0.86
BLS deserializing 10000 signatures 908.51 ms/op 1.1126 s/op 0.82
BLS deserializing 100000 signatures 9.3394 s/op 10.417 s/op 0.90
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.3387 ms/op 1.8154 ms/op 0.74
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.6886 ms/op 1.9384 ms/op 0.87
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.8553 ms/op 2.7998 ms/op 1.02
BLS verifyMultipleSignatures - same message - 64 - blst-native 4.2138 ms/op 4.2888 ms/op 0.98
BLS verifyMultipleSignatures - same message - 128 - blst-native 7.4684 ms/op 7.0018 ms/op 1.07
BLS aggregatePubkeys 32 - blst-native 26.462 us/op 30.736 us/op 0.86
BLS aggregatePubkeys 128 - blst-native 96.883 us/op 115.89 us/op 0.84
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 48.802 ms/op 75.597 ms/op 0.65
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 49.899 ms/op 61.084 ms/op 0.82
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 31.687 ms/op 49.559 ms/op 0.64
getSlashingsAndExits - default max 242.44 us/op 187.30 us/op 1.29
getSlashingsAndExits - 2k 418.51 us/op 485.35 us/op 0.86
proposeBlockBody type=full, size=empty 5.4202 ms/op 6.6814 ms/op 0.81
isKnown best case - 1 super set check 493.00 ns/op 629.00 ns/op 0.78
isKnown normal case - 2 super set checks 489.00 ns/op 641.00 ns/op 0.76
isKnown worse case - 16 super set checks 451.00 ns/op 626.00 ns/op 0.72
CheckpointStateCache - add get delete 5.8220 us/op 6.6060 us/op 0.88
validate api signedAggregateAndProof - struct 2.8006 ms/op 2.9724 ms/op 0.94
validate gossip signedAggregateAndProof - struct 2.8123 ms/op 2.9892 ms/op 0.94
validate gossip attestation - vc 640000 1.3619 ms/op 1.4294 ms/op 0.95
batch validate gossip attestation - vc 640000 - chunk 32 160.78 us/op 175.96 us/op 0.91
batch validate gossip attestation - vc 640000 - chunk 64 140.37 us/op 155.83 us/op 0.90
batch validate gossip attestation - vc 640000 - chunk 128 131.73 us/op 146.36 us/op 0.90
batch validate gossip attestation - vc 640000 - chunk 256 129.88 us/op 136.85 us/op 0.95
pickEth1Vote - no votes 1.1736 ms/op 1.4675 ms/op 0.80
pickEth1Vote - max votes 8.9401 ms/op 10.914 ms/op 0.82
pickEth1Vote - Eth1Data hashTreeRoot value x2048 21.888 ms/op 19.115 ms/op 1.15
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 34.201 ms/op 24.342 ms/op 1.41
pickEth1Vote - Eth1Data fastSerialize value x2048 601.77 us/op 643.46 us/op 0.94
pickEth1Vote - Eth1Data fastSerialize tree x2048 5.2051 ms/op 8.0754 ms/op 0.64
bytes32 toHexString 496.00 ns/op 521.00 ns/op 0.95
bytes32 Buffer.toString(hex) 290.00 ns/op 288.00 ns/op 1.01
bytes32 Buffer.toString(hex) from Uint8Array 436.00 ns/op 472.00 ns/op 0.92
bytes32 Buffer.toString(hex) + 0x 295.00 ns/op 311.00 ns/op 0.95
Object access 1 prop 0.16200 ns/op 0.17700 ns/op 0.92
Map access 1 prop 0.15700 ns/op 0.15200 ns/op 1.03
Object get x1000 7.0140 ns/op 7.7380 ns/op 0.91
Map get x1000 0.82800 ns/op 0.83000 ns/op 1.00
Object set x1000 59.107 ns/op 55.885 ns/op 1.06
Map set x1000 40.624 ns/op 44.349 ns/op 0.92
Return object 10000 times 0.24030 ns/op 0.24860 ns/op 0.97
Throw Error 10000 times 4.0238 us/op 4.1190 us/op 0.98
fastMsgIdFn sha256 / 200 bytes 3.4620 us/op 3.3960 us/op 1.02
fastMsgIdFn h32 xxhash / 200 bytes 305.00 ns/op 299.00 ns/op 1.02
fastMsgIdFn h64 xxhash / 200 bytes 369.00 ns/op 356.00 ns/op 1.04
fastMsgIdFn sha256 / 1000 bytes 11.512 us/op 11.669 us/op 0.99
fastMsgIdFn h32 xxhash / 1000 bytes 426.00 ns/op 441.00 ns/op 0.97
fastMsgIdFn h64 xxhash / 1000 bytes 418.00 ns/op 436.00 ns/op 0.96
fastMsgIdFn sha256 / 10000 bytes 104.36 us/op 106.33 us/op 0.98
fastMsgIdFn h32 xxhash / 10000 bytes 1.9960 us/op 2.0620 us/op 0.97
fastMsgIdFn h64 xxhash / 10000 bytes 1.3950 us/op 1.3970 us/op 1.00
send data - 1000 256B messages 16.744 ms/op 21.535 ms/op 0.78
send data - 1000 512B messages 26.524 ms/op 35.373 ms/op 0.75
send data - 1000 1024B messages 38.577 ms/op 43.529 ms/op 0.89
send data - 1000 1200B messages 39.714 ms/op 41.903 ms/op 0.95
send data - 1000 2048B messages 50.099 ms/op 50.270 ms/op 1.00
send data - 1000 4096B messages 46.055 ms/op 46.568 ms/op 0.99
send data - 1000 16384B messages 125.45 ms/op 122.24 ms/op 1.03
send data - 1000 65536B messages 489.93 ms/op 461.73 ms/op 1.06
enrSubnets - fastDeserialize 64 bits 1.2890 us/op 1.5820 us/op 0.81
enrSubnets - ssz BitVector 64 bits 430.00 ns/op 521.00 ns/op 0.83
enrSubnets - fastDeserialize 4 bits 171.00 ns/op 216.00 ns/op 0.79
enrSubnets - ssz BitVector 4 bits 437.00 ns/op 565.00 ns/op 0.77
prioritizePeers score -10:0 att 32-0.1 sync 2-0 103.72 us/op 117.63 us/op 0.88
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 144.99 us/op 153.49 us/op 0.94
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 182.94 us/op 197.12 us/op 0.93
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 321.38 us/op 368.15 us/op 0.87
prioritizePeers score 0:0 att 64-1 sync 4-1 363.51 us/op 412.09 us/op 0.88
array of 16000 items push then shift 1.6712 us/op 1.8760 us/op 0.89
LinkedList of 16000 items push then shift 9.1190 ns/op 9.9780 ns/op 0.91
array of 16000 items push then pop 103.84 ns/op 120.44 ns/op 0.86
LinkedList of 16000 items push then pop 8.6650 ns/op 10.348 ns/op 0.84
array of 24000 items push then shift 2.5653 us/op 2.9189 us/op 0.88
LinkedList of 24000 items push then shift 9.1100 ns/op 10.563 ns/op 0.86
array of 24000 items push then pop 133.70 ns/op 156.08 ns/op 0.86
LinkedList of 24000 items push then pop 8.6730 ns/op 9.9110 ns/op 0.88
intersect bitArray bitLen 8 5.8010 ns/op 6.1770 ns/op 0.94
intersect array and set length 8 69.792 ns/op 95.697 ns/op 0.73
intersect bitArray bitLen 128 35.409 ns/op 38.353 ns/op 0.92
intersect array and set length 128 860.33 ns/op 1.2370 us/op 0.70
bitArray.getTrueBitIndexes() bitLen 128 1.4230 us/op 2.0920 us/op 0.68
bitArray.getTrueBitIndexes() bitLen 248 2.4650 us/op 3.9650 us/op 0.62
bitArray.getTrueBitIndexes() bitLen 512 4.6870 us/op 8.0960 us/op 0.58
Buffer.concat 32 items 937.00 ns/op 1.3070 us/op 0.72
Uint8Array.set 32 items 1.5890 us/op 3.0000 us/op 0.53
Set add up to 64 items then delete first 4.4052 us/op 6.0612 us/op 0.73
OrderedSet add up to 64 items then delete first 5.5141 us/op 7.8111 us/op 0.71
Set add up to 64 items then delete last 4.7011 us/op 6.1142 us/op 0.77
OrderedSet add up to 64 items then delete last 6.7461 us/op 7.7378 us/op 0.87
Set add up to 64 items then delete middle 4.8112 us/op 5.9686 us/op 0.81
OrderedSet add up to 64 items then delete middle 7.3331 us/op 9.4809 us/op 0.77
Set add up to 128 items then delete first 9.9244 us/op 11.974 us/op 0.83
OrderedSet add up to 128 items then delete first 11.811 us/op 15.984 us/op 0.74
Set add up to 128 items then delete last 9.2365 us/op 11.396 us/op 0.81
OrderedSet add up to 128 items then delete last 12.103 us/op 15.977 us/op 0.76
Set add up to 128 items then delete middle 9.5799 us/op 11.491 us/op 0.83
OrderedSet add up to 128 items then delete middle 20.034 us/op 21.701 us/op 0.92
Set add up to 256 items then delete first 19.522 us/op 24.165 us/op 0.81
OrderedSet add up to 256 items then delete first 24.543 us/op 35.435 us/op 0.69
Set add up to 256 items then delete last 18.908 us/op 23.311 us/op 0.81
OrderedSet add up to 256 items then delete last 24.301 us/op 32.354 us/op 0.75
Set add up to 256 items then delete middle 18.574 us/op 22.494 us/op 0.83
OrderedSet add up to 256 items then delete middle 46.234 us/op 55.084 us/op 0.84
transfer serialized Status (84 B) 1.5780 us/op 2.1730 us/op 0.73
copy serialized Status (84 B) 1.3280 us/op 1.5040 us/op 0.88
transfer serialized SignedVoluntaryExit (112 B) 1.9070 us/op 2.0500 us/op 0.93
copy serialized SignedVoluntaryExit (112 B) 1.4170 us/op 1.5130 us/op 0.94
transfer serialized ProposerSlashing (416 B) 2.7990 us/op 2.6190 us/op 1.07
copy serialized ProposerSlashing (416 B) 2.7240 us/op 2.3010 us/op 1.18
transfer serialized Attestation (485 B) 3.1990 us/op 2.4930 us/op 1.28
copy serialized Attestation (485 B) 2.9620 us/op 2.2150 us/op 1.34
transfer serialized AttesterSlashing (33232 B) 3.1360 us/op 2.2880 us/op 1.37
copy serialized AttesterSlashing (33232 B) 8.4040 us/op 9.9100 us/op 0.85
transfer serialized Small SignedBeaconBlock (128000 B) 3.1930 us/op 3.0840 us/op 1.04
copy serialized Small SignedBeaconBlock (128000 B) 17.198 us/op 29.856 us/op 0.58
transfer serialized Avg SignedBeaconBlock (200000 B) 3.3660 us/op 3.3310 us/op 1.01
copy serialized Avg SignedBeaconBlock (200000 B) 22.624 us/op 40.435 us/op 0.56
transfer serialized BlobsSidecar (524380 B) 3.2180 us/op 4.1600 us/op 0.77
copy serialized BlobsSidecar (524380 B) 163.58 us/op 122.74 us/op 1.33
transfer serialized Big SignedBeaconBlock (1000000 B) 3.4220 us/op 4.5570 us/op 0.75
copy serialized Big SignedBeaconBlock (1000000 B) 265.85 us/op 266.83 us/op 1.00
pass gossip attestations to forkchoice per slot 4.2317 ms/op 4.3339 ms/op 0.98
forkChoice updateHead vc 100000 bc 64 eq 0 686.02 us/op 751.19 us/op 0.91
forkChoice updateHead vc 600000 bc 64 eq 0 4.9654 ms/op 6.9666 ms/op 0.71
forkChoice updateHead vc 1000000 bc 64 eq 0 6.9292 ms/op 8.3624 ms/op 0.83
forkChoice updateHead vc 600000 bc 320 eq 0 4.1361 ms/op 4.7307 ms/op 0.87
forkChoice updateHead vc 600000 bc 1200 eq 0 4.2225 ms/op 4.9483 ms/op 0.85
forkChoice updateHead vc 600000 bc 7200 eq 0 5.6354 ms/op 6.8619 ms/op 0.82
forkChoice updateHead vc 600000 bc 64 eq 1000 11.187 ms/op 13.576 ms/op 0.82
forkChoice updateHead vc 600000 bc 64 eq 10000 11.955 ms/op 14.688 ms/op 0.81
forkChoice updateHead vc 600000 bc 64 eq 300000 16.076 ms/op 46.776 ms/op 0.34
computeDeltas 500000 validators 300 proto nodes 6.7417 ms/op 7.8954 ms/op 0.85
computeDeltas 500000 validators 1200 proto nodes 6.5491 ms/op 8.0652 ms/op 0.81
computeDeltas 500000 validators 7200 proto nodes 6.4186 ms/op 7.9548 ms/op 0.81
computeDeltas 750000 validators 300 proto nodes 9.6618 ms/op 12.272 ms/op 0.79
computeDeltas 750000 validators 1200 proto nodes 9.6890 ms/op 12.559 ms/op 0.77
computeDeltas 750000 validators 7200 proto nodes 9.9365 ms/op 12.501 ms/op 0.79
computeDeltas 1400000 validators 300 proto nodes 18.927 ms/op 22.942 ms/op 0.82
computeDeltas 1400000 validators 1200 proto nodes 19.129 ms/op 23.575 ms/op 0.81
computeDeltas 1400000 validators 7200 proto nodes 19.388 ms/op 22.175 ms/op 0.87
computeDeltas 2100000 validators 300 proto nodes 28.822 ms/op 32.136 ms/op 0.90
computeDeltas 2100000 validators 1200 proto nodes 29.168 ms/op 31.309 ms/op 0.93
computeDeltas 2100000 validators 7200 proto nodes 28.703 ms/op 29.846 ms/op 0.96
altair processAttestation - 250000 vs - 7PWei normalcase 2.2088 ms/op 2.6288 ms/op 0.84
altair processAttestation - 250000 vs - 7PWei worstcase 3.2926 ms/op 3.7396 ms/op 0.88
altair processAttestation - setStatus - 1/6 committees join 178.58 us/op 193.08 us/op 0.92
altair processAttestation - setStatus - 1/3 committees join 343.39 us/op 375.14 us/op 0.92
altair processAttestation - setStatus - 1/2 committees join 474.14 us/op 487.95 us/op 0.97
altair processAttestation - setStatus - 2/3 committees join 582.38 us/op 637.11 us/op 0.91
altair processAttestation - setStatus - 4/5 committees join 800.11 us/op 840.21 us/op 0.95
altair processAttestation - setStatus - 100% committees join 942.83 us/op 1.0127 ms/op 0.93
altair processBlock - 250000 vs - 7PWei normalcase 10.811 ms/op 11.198 ms/op 0.97
altair processBlock - 250000 vs - 7PWei normalcase hashState 34.804 ms/op 36.516 ms/op 0.95
altair processBlock - 250000 vs - 7PWei worstcase 38.525 ms/op 45.753 ms/op 0.84
altair processBlock - 250000 vs - 7PWei worstcase hashState 92.787 ms/op 102.16 ms/op 0.91
phase0 processBlock - 250000 vs - 7PWei normalcase 2.8273 ms/op 3.0273 ms/op 0.93
phase0 processBlock - 250000 vs - 7PWei worstcase 30.503 ms/op 32.160 ms/op 0.95
altair processEth1Data - 250000 vs - 7PWei normalcase 617.89 us/op 666.81 us/op 0.93
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 10.836 us/op 13.791 us/op 0.79
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 83.398 us/op 71.611 us/op 1.16
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 25.875 us/op 28.452 us/op 0.91
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 18.494 us/op 19.369 us/op 0.95
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 147.99 us/op 189.78 us/op 0.78
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.2407 ms/op 1.3081 ms/op 0.95
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.7341 ms/op 1.9267 ms/op 0.90
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.6745 ms/op 1.7384 ms/op 0.96
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.6131 ms/op 4.4938 ms/op 0.80
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.4090 ms/op 2.9052 ms/op 0.83
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 5.4724 ms/op 6.8531 ms/op 0.80
Tree 40 250000 create 349.07 ms/op 430.53 ms/op 0.81
Tree 40 250000 get(125000) 206.16 ns/op 221.71 ns/op 0.93
Tree 40 250000 set(125000) 1.0315 us/op 1.4583 us/op 0.71
Tree 40 250000 toArray() 22.289 ms/op 24.581 ms/op 0.91
Tree 40 250000 iterate all - toArray() + loop 21.146 ms/op 22.573 ms/op 0.94
Tree 40 250000 iterate all - get(i) 73.650 ms/op 76.484 ms/op 0.96
MutableVector 250000 create 15.449 ms/op 15.057 ms/op 1.03
MutableVector 250000 get(125000) 6.9240 ns/op 7.4230 ns/op 0.93
MutableVector 250000 set(125000) 312.20 ns/op 290.98 ns/op 1.07
MutableVector 250000 toArray() 4.1199 ms/op 3.3506 ms/op 1.23
MutableVector 250000 iterate all - toArray() + loop 4.0452 ms/op 4.1138 ms/op 0.98
MutableVector 250000 iterate all - get(i) 1.5704 ms/op 1.5964 ms/op 0.98
Array 250000 create 3.5055 ms/op 3.3920 ms/op 1.03
Array 250000 clone - spread 1.3840 ms/op 1.3622 ms/op 1.02
Array 250000 get(125000) 1.2090 ns/op 1.1310 ns/op 1.07
Array 250000 set(125000) 4.2590 ns/op 4.2730 ns/op 1.00
Array 250000 iterate all - loop 169.99 us/op 168.75 us/op 1.01
effectiveBalanceIncrements clone Uint8Array 300000 41.170 us/op 29.103 us/op 1.41
effectiveBalanceIncrements clone MutableVector 300000 422.00 ns/op 372.00 ns/op 1.13
effectiveBalanceIncrements rw all Uint8Array 300000 225.30 us/op 203.62 us/op 1.11
effectiveBalanceIncrements rw all MutableVector 300000 96.260 ms/op 97.193 ms/op 0.99
phase0 afterProcessEpoch - 250000 vs - 7PWei 119.79 ms/op 120.16 ms/op 1.00
phase0 beforeProcessEpoch - 250000 vs - 7PWei 54.371 ms/op 60.415 ms/op 0.90
altair processEpoch - mainnet_e81889 719.59 ms/op 532.64 ms/op 1.35
mainnet_e81889 - altair beforeProcessEpoch 104.34 ms/op 90.984 ms/op 1.15
mainnet_e81889 - altair processJustificationAndFinalization 23.803 us/op 18.028 us/op 1.32
mainnet_e81889 - altair processInactivityUpdates 7.1711 ms/op 7.6924 ms/op 0.93
mainnet_e81889 - altair processRewardsAndPenalties 65.154 ms/op 70.101 ms/op 0.93
mainnet_e81889 - altair processRegistryUpdates 2.7590 us/op 3.4510 us/op 0.80
mainnet_e81889 - altair processSlashings 609.00 ns/op 864.00 ns/op 0.70
mainnet_e81889 - altair processEth1DataReset 959.00 ns/op 773.00 ns/op 1.24
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.5909 ms/op 1.4902 ms/op 1.07
mainnet_e81889 - altair processSlashingsReset 9.5570 us/op 4.7820 us/op 2.00
mainnet_e81889 - altair processRandaoMixesReset 15.404 us/op 7.6880 us/op 2.00
mainnet_e81889 - altair processHistoricalRootsUpdate 2.9530 us/op 1.3080 us/op 2.26
mainnet_e81889 - altair processParticipationFlagUpdates 7.3020 us/op 3.2260 us/op 2.26
mainnet_e81889 - altair processSyncCommitteeUpdates 1.8990 us/op 752.00 ns/op 2.53
mainnet_e81889 - altair afterProcessEpoch 140.58 ms/op 125.77 ms/op 1.12
capella processEpoch - mainnet_e217614 3.4573 s/op 2.6209 s/op 1.32
mainnet_e217614 - capella beforeProcessEpoch 529.22 ms/op 552.67 ms/op 0.96
mainnet_e217614 - capella processJustificationAndFinalization 17.783 us/op 18.621 us/op 0.95
mainnet_e217614 - capella processInactivityUpdates 24.131 ms/op 25.372 ms/op 0.95
mainnet_e217614 - capella processRewardsAndPenalties 470.17 ms/op 477.97 ms/op 0.98
mainnet_e217614 - capella processRegistryUpdates 47.632 us/op 47.144 us/op 1.01
mainnet_e217614 - capella processSlashings 1.2730 us/op 925.00 ns/op 1.38
mainnet_e217614 - capella processEth1DataReset 695.00 ns/op 1.1340 us/op 0.61
mainnet_e217614 - capella processEffectiveBalanceUpdates 5.5453 ms/op 7.0585 ms/op 0.79
mainnet_e217614 - capella processSlashingsReset 5.9850 us/op 5.7690 us/op 1.04
mainnet_e217614 - capella processRandaoMixesReset 6.7890 us/op 9.3650 us/op 0.72
mainnet_e217614 - capella processHistoricalRootsUpdate 959.00 ns/op 1.1160 us/op 0.86
mainnet_e217614 - capella processParticipationFlagUpdates 3.0960 us/op 3.0910 us/op 1.00
mainnet_e217614 - capella afterProcessEpoch 387.55 ms/op 362.21 ms/op 1.07
phase0 processEpoch - mainnet_e58758 530.45 ms/op 557.17 ms/op 0.95
mainnet_e58758 - phase0 beforeProcessEpoch 185.01 ms/op 181.46 ms/op 1.02
mainnet_e58758 - phase0 processJustificationAndFinalization 29.348 us/op 28.089 us/op 1.04
mainnet_e58758 - phase0 processRewardsAndPenalties 61.578 ms/op 72.242 ms/op 0.85
mainnet_e58758 - phase0 processRegistryUpdates 24.579 us/op 17.851 us/op 1.38
mainnet_e58758 - phase0 processSlashings 1.0510 us/op 831.00 ns/op 1.26
mainnet_e58758 - phase0 processEth1DataReset 932.00 ns/op 581.00 ns/op 1.60
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.4538 ms/op 1.3760 ms/op 1.06
mainnet_e58758 - phase0 processSlashingsReset 7.3130 us/op 5.8680 us/op 1.25
mainnet_e58758 - phase0 processRandaoMixesReset 6.6910 us/op 5.0140 us/op 1.33
mainnet_e58758 - phase0 processHistoricalRootsUpdate 960.00 ns/op 593.00 ns/op 1.62
mainnet_e58758 - phase0 processParticipationRecordUpdates 7.4710 us/op 4.3140 us/op 1.73
mainnet_e58758 - phase0 afterProcessEpoch 103.20 ms/op 99.794 ms/op 1.03
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.4380 ms/op 1.4874 ms/op 0.97
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.7872 ms/op 1.7647 ms/op 1.01
altair processInactivityUpdates - 250000 normalcase 38.389 ms/op 31.712 ms/op 1.21
altair processInactivityUpdates - 250000 worstcase 31.184 ms/op 31.207 ms/op 1.00
phase0 processRegistryUpdates - 250000 normalcase 18.898 us/op 11.852 us/op 1.59
phase0 processRegistryUpdates - 250000 badcase_full_deposits 550.88 us/op 535.54 us/op 1.03
phase0 processRegistryUpdates - 250000 worstcase 0.5 155.52 ms/op 179.16 ms/op 0.87
altair processRewardsAndPenalties - 250000 normalcase 65.369 ms/op 61.236 ms/op 1.07
altair processRewardsAndPenalties - 250000 worstcase 68.733 ms/op 66.917 ms/op 1.03
phase0 getAttestationDeltas - 250000 normalcase 12.826 ms/op 11.576 ms/op 1.11
phase0 getAttestationDeltas - 250000 worstcase 13.494 ms/op 12.016 ms/op 1.12
phase0 processSlashings - 250000 worstcase 143.88 us/op 101.45 us/op 1.42
altair processSyncCommitteeUpdates - 250000 172.33 ms/op 175.96 ms/op 0.98
BeaconState.hashTreeRoot - No change 657.00 ns/op 860.00 ns/op 0.76
BeaconState.hashTreeRoot - 1 full validator 140.92 us/op 165.40 us/op 0.85
BeaconState.hashTreeRoot - 32 full validator 1.9643 ms/op 1.9611 ms/op 1.00
BeaconState.hashTreeRoot - 512 full validator 20.365 ms/op 22.535 ms/op 0.90
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 211.82 us/op 237.80 us/op 0.89
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.8435 ms/op 3.2786 ms/op 0.87
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 38.376 ms/op 38.355 ms/op 1.00
BeaconState.hashTreeRoot - 1 balances 166.62 us/op 149.94 us/op 1.11
BeaconState.hashTreeRoot - 32 balances 1.7028 ms/op 1.3375 ms/op 1.27
BeaconState.hashTreeRoot - 512 balances 16.388 ms/op 12.209 ms/op 1.34
BeaconState.hashTreeRoot - 250000 balances 264.98 ms/op 215.23 ms/op 1.23
aggregationBits - 2048 els - zipIndexesInBitList 22.194 us/op 17.669 us/op 1.26
byteArrayEquals 32 78.009 ns/op 79.478 ns/op 0.98
Buffer.compare 32 59.416 ns/op 58.846 ns/op 1.01
byteArrayEquals 1024 2.1357 us/op 2.1696 us/op 0.98
Buffer.compare 1024 71.659 ns/op 73.956 ns/op 0.97
byteArrayEquals 16384 33.757 us/op 33.264 us/op 1.01
Buffer.compare 16384 279.60 ns/op 280.82 ns/op 1.00
byteArrayEquals 123687377 300.63 ms/op 262.63 ms/op 1.14
Buffer.compare 123687377 10.038 ms/op 8.9479 ms/op 1.12
byteArrayEquals 32 - diff last byte 75.543 ns/op 86.899 ns/op 0.87
Buffer.compare 32 - diff last byte 58.398 ns/op 67.596 ns/op 0.86
byteArrayEquals 1024 - diff last byte 2.1475 us/op 2.3002 us/op 0.93
Buffer.compare 1024 - diff last byte 74.504 ns/op 86.513 ns/op 0.86
byteArrayEquals 16384 - diff last byte 33.722 us/op 36.116 us/op 0.93
Buffer.compare 16384 - diff last byte 259.71 ns/op 288.58 ns/op 0.90
byteArrayEquals 123687377 - diff last byte 252.59 ms/op 315.00 ms/op 0.80
Buffer.compare 123687377 - diff last byte 7.0994 ms/op 15.304 ms/op 0.46
byteArrayEquals 32 - random bytes 5.3620 ns/op 7.9560 ns/op 0.67
Buffer.compare 32 - random bytes 62.089 ns/op 77.448 ns/op 0.80
byteArrayEquals 1024 - random bytes 5.3580 ns/op 10.640 ns/op 0.50
Buffer.compare 1024 - random bytes 60.256 ns/op 70.313 ns/op 0.86
byteArrayEquals 16384 - random bytes 5.1810 ns/op 7.2080 ns/op 0.72
Buffer.compare 16384 - random bytes 61.544 ns/op 72.554 ns/op 0.85
byteArrayEquals 123687377 - random bytes 8.7800 ns/op 14.150 ns/op 0.62
Buffer.compare 123687377 - random bytes 64.480 ns/op 93.350 ns/op 0.69
regular array get 100000 times 44.557 us/op 50.520 us/op 0.88
wrappedArray get 100000 times 44.843 us/op 53.503 us/op 0.84
arrayWithProxy get 100000 times 14.530 ms/op 17.261 ms/op 0.84
ssz.Root.equals 56.612 ns/op 63.757 ns/op 0.89
byteArrayEquals 55.064 ns/op 61.459 ns/op 0.90
Buffer.compare 12.062 ns/op 13.960 ns/op 0.86
shuffle list - 16384 els 7.2257 ms/op 8.0296 ms/op 0.90
shuffle list - 250000 els 101.97 ms/op 115.77 ms/op 0.88
processSlot - 1 slots 15.463 us/op 19.764 us/op 0.78
processSlot - 32 slots 2.9098 ms/op 3.7109 ms/op 0.78
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 59.715 ms/op 57.507 ms/op 1.04
getCommitteeAssignments - req 1 vs - 250000 vc 2.5184 ms/op 2.6212 ms/op 0.96
getCommitteeAssignments - req 100 vs - 250000 vc 3.6954 ms/op 3.9398 ms/op 0.94
getCommitteeAssignments - req 1000 vs - 250000 vc 4.1680 ms/op 4.2537 ms/op 0.98
findModifiedValidators - 10000 modified validators 539.68 ms/op 561.76 ms/op 0.96
findModifiedValidators - 1000 modified validators 428.25 ms/op 478.75 ms/op 0.89
findModifiedValidators - 100 modified validators 410.42 ms/op 466.09 ms/op 0.88
findModifiedValidators - 10 modified validators 418.71 ms/op 462.86 ms/op 0.90
findModifiedValidators - 1 modified validators 408.10 ms/op 469.56 ms/op 0.87
findModifiedValidators - no difference 411.13 ms/op 445.29 ms/op 0.92
compare ViewDUs 4.4980 s/op 4.9944 s/op 0.90
compare each validator Uint8Array 1.8945 s/op 2.1483 s/op 0.88
compare ViewDU to Uint8Array 1.4870 s/op 1.4672 s/op 1.01
migrate state 1000000 validators, 24 modified, 0 new 1.0020 s/op 926.94 ms/op 1.08
migrate state 1000000 validators, 1700 modified, 1000 new 1.3438 s/op 1.2184 s/op 1.10
migrate state 1000000 validators, 3400 modified, 2000 new 1.6466 s/op 1.4331 s/op 1.15
migrate state 1500000 validators, 24 modified, 0 new 772.52 ms/op 943.74 ms/op 0.82
migrate state 1500000 validators, 1700 modified, 1000 new 1.1346 s/op 1.2304 s/op 0.92
migrate state 1500000 validators, 3400 modified, 2000 new 1.4041 s/op 1.4833 s/op 0.95
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.3900 ns/op 4.9900 ns/op 1.08
state getBlockRootAtSlot - 250000 vs - 7PWei 927.67 ns/op 796.62 ns/op 1.16
computeProposers - vc 250000 10.360 ms/op 11.188 ms/op 0.93
computeEpochShuffling - vc 250000 114.98 ms/op 110.60 ms/op 1.04
getNextSyncCommittee - vc 250000 180.67 ms/op 174.48 ms/op 1.04
computeSigningRoot for AttestationData 35.927 us/op 31.973 us/op 1.12
hash AttestationData serialized data then Buffer.toString(base64) 2.4592 us/op 2.4280 us/op 1.01
toHexString serialized data 1.6407 us/op 1.1989 us/op 1.37
Buffer.toString(base64) 267.93 ns/op 266.27 ns/op 1.01

by benchmarkbot/action

@wemeetagain wemeetagain merged commit d1dc217 into unstable Feb 20, 2024
18 of 20 checks passed
@wemeetagain wemeetagain deleted the nflaig/track-retries branch February 20, 2024 15:27
@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.

2 participants