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: epoch transition by steps panel #6205

Merged
merged 1 commit into from
Dec 19, 2023

Conversation

twoeths
Copy link
Contributor

@twoeths twoeths commented Dec 19, 2023

Motivation

A follow up of #6143

Description

Add "Epoch Transition By Steps" panel

Screenshot 2023-12-19 at 15 13 53

should be a good inputs for #5409 cc @nazarhussain

@twoeths twoeths requested a review from a team as a code owner December 19, 2023 08:15
Copy link
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: ef438ec Previous: 54e8c45 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 492.80 us/op 508.55 us/op 0.97
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 79.812 us/op 86.547 us/op 0.92
BLS verify - blst-native 1.1273 ms/op 1.3290 ms/op 0.85
BLS verifyMultipleSignatures 3 - blst-native 2.4222 ms/op 2.7994 ms/op 0.87
BLS verifyMultipleSignatures 8 - blst-native 5.3708 ms/op 6.1283 ms/op 0.88
BLS verifyMultipleSignatures 32 - blst-native 19.393 ms/op 22.437 ms/op 0.86
BLS verifyMultipleSignatures 64 - blst-native 38.475 ms/op 44.212 ms/op 0.87
BLS verifyMultipleSignatures 128 - blst-native 75.138 ms/op 87.739 ms/op 0.86
BLS deserializing 10000 signatures 797.22 ms/op 938.93 ms/op 0.85
BLS deserializing 100000 signatures 8.6180 s/op 9.5031 s/op 0.91
BLS verifyMultipleSignatures - same message - 3 - blst-native 1.1660 ms/op 1.4930 ms/op 0.78
BLS verifyMultipleSignatures - same message - 8 - blst-native 1.3213 ms/op 1.5380 ms/op 0.86
BLS verifyMultipleSignatures - same message - 32 - blst-native 2.4762 ms/op 2.3800 ms/op 1.04
BLS verifyMultipleSignatures - same message - 64 - blst-native 4.2018 ms/op 4.6236 ms/op 0.91
BLS verifyMultipleSignatures - same message - 128 - blst-native 5.0617 ms/op 5.6894 ms/op 0.89
BLS aggregatePubkeys 32 - blst-native 23.243 us/op 26.081 us/op 0.89
BLS aggregatePubkeys 128 - blst-native 89.856 us/op 101.71 us/op 0.88
getAttestationsForBlock 42.202 ms/op 52.762 ms/op 0.80
getSlashingsAndExits - default max 98.704 us/op 141.30 us/op 0.70
getSlashingsAndExits - 2k 456.25 us/op 355.36 us/op 1.28
proposeBlockBody type=full, size=empty 5.2339 ms/op 5.0777 ms/op 1.03
isKnown best case - 1 super set check 357.00 ns/op 325.00 ns/op 1.10
isKnown normal case - 2 super set checks 618.00 ns/op 315.00 ns/op 1.96
isKnown worse case - 16 super set checks 460.00 ns/op 309.00 ns/op 1.49
CheckpointStateCache - add get delete 5.1680 us/op 5.1190 us/op 1.01
validate api signedAggregateAndProof - struct 2.5035 ms/op 2.7954 ms/op 0.90
validate gossip signedAggregateAndProof - struct 2.4612 ms/op 2.8161 ms/op 0.87
validate gossip attestation - vc 640000 1.1875 ms/op 1.3730 ms/op 0.86
batch validate gossip attestation - vc 640000 - chunk 32 152.73 us/op 164.65 us/op 0.93
batch validate gossip attestation - vc 640000 - chunk 64 133.10 us/op 143.01 us/op 0.93
batch validate gossip attestation - vc 640000 - chunk 128 123.83 us/op 134.57 us/op 0.92
batch validate gossip attestation - vc 640000 - chunk 256 116.61 us/op 124.67 us/op 0.94
pickEth1Vote - no votes 936.32 us/op 1.1261 ms/op 0.83
pickEth1Vote - max votes 13.171 ms/op 9.8201 ms/op 1.34
pickEth1Vote - Eth1Data hashTreeRoot value x2048 18.404 ms/op 21.413 ms/op 0.86
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 29.182 ms/op 28.608 ms/op 1.02
pickEth1Vote - Eth1Data fastSerialize value x2048 431.43 us/op 573.40 us/op 0.75
pickEth1Vote - Eth1Data fastSerialize tree x2048 8.4683 ms/op 6.2549 ms/op 1.35
bytes32 toHexString 467.00 ns/op 489.00 ns/op 0.96
bytes32 Buffer.toString(hex) 335.00 ns/op 276.00 ns/op 1.21
bytes32 Buffer.toString(hex) from Uint8Array 469.00 ns/op 417.00 ns/op 1.12
bytes32 Buffer.toString(hex) + 0x 339.00 ns/op 273.00 ns/op 1.24
Object access 1 prop 0.21100 ns/op 0.16000 ns/op 1.32
Map access 1 prop 0.19000 ns/op 0.14100 ns/op 1.35
Object get x1000 5.6130 ns/op 7.3280 ns/op 0.77
Map get x1000 0.76600 ns/op 0.73800 ns/op 1.04
Object set x1000 25.209 ns/op 48.316 ns/op 0.52
Map set x1000 17.259 ns/op 38.020 ns/op 0.45
Return object 10000 times 0.23860 ns/op 0.23120 ns/op 1.03
Throw Error 10000 times 2.8080 us/op 3.7641 us/op 0.75
fastMsgIdFn sha256 / 200 bytes 2.0630 us/op 3.1740 us/op 0.65
fastMsgIdFn h32 xxhash / 200 bytes 311.00 ns/op 279.00 ns/op 1.11
fastMsgIdFn h64 xxhash / 200 bytes 363.00 ns/op 330.00 ns/op 1.10
fastMsgIdFn sha256 / 1000 bytes 6.2460 us/op 11.013 us/op 0.57
fastMsgIdFn h32 xxhash / 1000 bytes 419.00 ns/op 400.00 ns/op 1.05
fastMsgIdFn h64 xxhash / 1000 bytes 429.00 ns/op 402.00 ns/op 1.07
fastMsgIdFn sha256 / 10000 bytes 53.813 us/op 100.55 us/op 0.54
fastMsgIdFn h32 xxhash / 10000 bytes 1.8500 us/op 1.8590 us/op 1.00
fastMsgIdFn h64 xxhash / 10000 bytes 1.2760 us/op 1.2600 us/op 1.01
send data - 1000 256B messages 11.048 ms/op 18.196 ms/op 0.61
send data - 1000 512B messages 17.588 ms/op 25.701 ms/op 0.68
send data - 1000 1024B messages 27.279 ms/op 40.369 ms/op 0.68
send data - 1000 1200B messages 29.986 ms/op 36.683 ms/op 0.82
send data - 1000 2048B messages 34.358 ms/op 43.485 ms/op 0.79
send data - 1000 4096B messages 32.689 ms/op 42.335 ms/op 0.77
send data - 1000 16384B messages 85.439 ms/op 117.39 ms/op 0.73
send data - 1000 65536B messages 392.38 ms/op 448.55 ms/op 0.87
enrSubnets - fastDeserialize 64 bits 1.2800 us/op 1.2640 us/op 1.01
enrSubnets - ssz BitVector 64 bits 461.00 ns/op 413.00 ns/op 1.12
enrSubnets - fastDeserialize 4 bits 202.00 ns/op 170.00 ns/op 1.19
enrSubnets - ssz BitVector 4 bits 419.00 ns/op 406.00 ns/op 1.03
prioritizePeers score -10:0 att 32-0.1 sync 2-0 69.492 us/op 98.743 us/op 0.70
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 75.853 us/op 129.84 us/op 0.58
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 105.51 us/op 177.60 us/op 0.59
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 176.24 us/op 307.75 us/op 0.57
prioritizePeers score 0:0 att 64-1 sync 4-1 206.74 us/op 381.06 us/op 0.54
array of 16000 items push then shift 1.2332 us/op 1.7163 us/op 0.72
LinkedList of 16000 items push then shift 5.9720 ns/op 9.3250 ns/op 0.64
array of 16000 items push then pop 95.039 ns/op 106.29 ns/op 0.89
LinkedList of 16000 items push then pop 5.9040 ns/op 9.3730 ns/op 0.63
array of 24000 items push then shift 1.8804 us/op 2.5667 us/op 0.73
LinkedList of 24000 items push then shift 6.0180 ns/op 9.0550 ns/op 0.66
array of 24000 items push then pop 107.57 ns/op 130.47 ns/op 0.82
LinkedList of 24000 items push then pop 5.9960 ns/op 8.8210 ns/op 0.68
intersect bitArray bitLen 8 5.2060 ns/op 6.4440 ns/op 0.81
intersect array and set length 8 47.741 ns/op 64.852 ns/op 0.74
intersect bitArray bitLen 128 27.836 ns/op 34.346 ns/op 0.81
intersect array and set length 128 694.18 ns/op 892.49 ns/op 0.78
bitArray.getTrueBitIndexes() bitLen 128 1.5020 us/op 1.7300 us/op 0.87
bitArray.getTrueBitIndexes() bitLen 248 2.4760 us/op 2.9120 us/op 0.85
bitArray.getTrueBitIndexes() bitLen 512 3.5510 us/op 6.0610 us/op 0.59
Buffer.concat 32 items 880.00 ns/op 980.00 ns/op 0.90
Uint8Array.set 32 items 1.4150 us/op 1.6900 us/op 0.84
Set add up to 64 items then delete first 1.7572 us/op 4.4267 us/op 0.40
OrderedSet add up to 64 items then delete first 2.7037 us/op 5.5546 us/op 0.49
Set add up to 64 items then delete last 2.1114 us/op 4.7185 us/op 0.45
OrderedSet add up to 64 items then delete last 3.2326 us/op 5.7867 us/op 0.56
Set add up to 64 items then delete middle 2.1772 us/op 4.5942 us/op 0.47
OrderedSet add up to 64 items then delete middle 4.4027 us/op 7.0266 us/op 0.63
Set add up to 128 items then delete first 4.1929 us/op 9.5234 us/op 0.44
OrderedSet add up to 128 items then delete first 6.4555 us/op 12.556 us/op 0.51
Set add up to 128 items then delete last 3.9557 us/op 9.5788 us/op 0.41
OrderedSet add up to 128 items then delete last 6.0552 us/op 11.893 us/op 0.51
Set add up to 128 items then delete middle 4.4812 us/op 9.3712 us/op 0.48
OrderedSet add up to 128 items then delete middle 11.110 us/op 17.371 us/op 0.64
Set add up to 256 items then delete first 7.9850 us/op 18.954 us/op 0.42
OrderedSet add up to 256 items then delete first 12.442 us/op 25.265 us/op 0.49
Set add up to 256 items then delete last 7.8577 us/op 19.497 us/op 0.40
OrderedSet add up to 256 items then delete last 12.084 us/op 24.895 us/op 0.49
Set add up to 256 items then delete middle 7.7597 us/op 20.608 us/op 0.38
OrderedSet add up to 256 items then delete middle 33.551 us/op 48.583 us/op 0.69
transfer serialized Status (84 B) 1.4690 us/op 1.7600 us/op 0.83
copy serialized Status (84 B) 1.2300 us/op 1.4860 us/op 0.83
transfer serialized SignedVoluntaryExit (112 B) 1.5580 us/op 2.1280 us/op 0.73
copy serialized SignedVoluntaryExit (112 B) 1.3640 us/op 1.7950 us/op 0.76
transfer serialized ProposerSlashing (416 B) 2.7130 us/op 2.9980 us/op 0.90
copy serialized ProposerSlashing (416 B) 2.2870 us/op 2.9420 us/op 0.78
transfer serialized Attestation (485 B) 2.8420 us/op 3.0680 us/op 0.93
copy serialized Attestation (485 B) 2.5600 us/op 2.9570 us/op 0.87
transfer serialized AttesterSlashing (33232 B) 2.6370 us/op 3.0740 us/op 0.86
copy serialized AttesterSlashing (33232 B) 6.6720 us/op 6.5380 us/op 1.02
transfer serialized Small SignedBeaconBlock (128000 B) 2.6080 us/op 2.8050 us/op 0.93
copy serialized Small SignedBeaconBlock (128000 B) 15.269 us/op 17.375 us/op 0.88
transfer serialized Avg SignedBeaconBlock (200000 B) 2.8340 us/op 3.4810 us/op 0.81
copy serialized Avg SignedBeaconBlock (200000 B) 26.608 us/op 26.765 us/op 0.99
transfer serialized BlobsSidecar (524380 B) 2.5860 us/op 3.5020 us/op 0.74
copy serialized BlobsSidecar (524380 B) 87.016 us/op 96.789 us/op 0.90
transfer serialized Big SignedBeaconBlock (1000000 B) 3.3640 us/op 3.5820 us/op 0.94
copy serialized Big SignedBeaconBlock (1000000 B) 183.19 us/op 166.79 us/op 1.10
pass gossip attestations to forkchoice per slot 2.7931 ms/op 4.3835 ms/op 0.64
forkChoice updateHead vc 100000 bc 64 eq 0 515.94 us/op 709.90 us/op 0.73
forkChoice updateHead vc 600000 bc 64 eq 0 3.6366 ms/op 4.8934 ms/op 0.74
forkChoice updateHead vc 1000000 bc 64 eq 0 4.5113 ms/op 7.1200 ms/op 0.63
forkChoice updateHead vc 600000 bc 320 eq 0 3.0157 ms/op 4.4321 ms/op 0.68
forkChoice updateHead vc 600000 bc 1200 eq 0 2.9099 ms/op 4.7277 ms/op 0.62
forkChoice updateHead vc 600000 bc 7200 eq 0 3.5343 ms/op 5.6719 ms/op 0.62
forkChoice updateHead vc 600000 bc 64 eq 1000 10.852 ms/op 12.065 ms/op 0.90
forkChoice updateHead vc 600000 bc 64 eq 10000 10.110 ms/op 12.654 ms/op 0.80
forkChoice updateHead vc 600000 bc 64 eq 300000 14.949 ms/op 17.912 ms/op 0.83
computeDeltas 500000 validators 300 proto nodes 3.2969 ms/op 6.8496 ms/op 0.48
computeDeltas 500000 validators 1200 proto nodes 3.3014 ms/op 6.7632 ms/op 0.49
computeDeltas 500000 validators 7200 proto nodes 3.0494 ms/op 6.8001 ms/op 0.45
computeDeltas 750000 validators 300 proto nodes 4.6855 ms/op 10.490 ms/op 0.45
computeDeltas 750000 validators 1200 proto nodes 4.4573 ms/op 10.504 ms/op 0.42
computeDeltas 750000 validators 7200 proto nodes 4.3987 ms/op 10.566 ms/op 0.42
computeDeltas 1400000 validators 300 proto nodes 8.5772 ms/op 21.309 ms/op 0.40
computeDeltas 1400000 validators 1200 proto nodes 8.8643 ms/op 20.555 ms/op 0.43
computeDeltas 1400000 validators 7200 proto nodes 9.0948 ms/op 22.109 ms/op 0.41
computeDeltas 2100000 validators 300 proto nodes 16.798 ms/op 31.210 ms/op 0.54
computeDeltas 2100000 validators 1200 proto nodes 13.475 ms/op 29.433 ms/op 0.46
computeDeltas 2100000 validators 7200 proto nodes 13.945 ms/op 29.316 ms/op 0.48
computeProposerBoostScoreFromBalances 500000 validators 3.4252 ms/op 4.0270 ms/op 0.85
computeProposerBoostScoreFromBalances 750000 validators 3.2943 ms/op 4.0655 ms/op 0.81
computeProposerBoostScoreFromBalances 1400000 validators 3.3281 ms/op 4.0659 ms/op 0.82
computeProposerBoostScoreFromBalances 2100000 validators 3.2843 ms/op 3.9443 ms/op 0.83
altair processAttestation - 250000 vs - 7PWei normalcase 1.5658 ms/op 3.7058 ms/op 0.42
altair processAttestation - 250000 vs - 7PWei worstcase 2.2952 ms/op 6.4829 ms/op 0.35
altair processAttestation - setStatus - 1/6 committees join 94.444 us/op 207.94 us/op 0.45
altair processAttestation - setStatus - 1/3 committees join 208.06 us/op 414.83 us/op 0.50
altair processAttestation - setStatus - 1/2 committees join 277.82 us/op 469.06 us/op 0.59
altair processAttestation - setStatus - 2/3 committees join 377.54 us/op 576.57 us/op 0.65
altair processAttestation - setStatus - 4/5 committees join 494.63 us/op 898.92 us/op 0.55
altair processAttestation - setStatus - 100% committees join 593.24 us/op 1.0709 ms/op 0.55
altair processBlock - 250000 vs - 7PWei normalcase 10.582 ms/op 14.116 ms/op 0.75
altair processBlock - 250000 vs - 7PWei normalcase hashState 27.720 ms/op 51.470 ms/op 0.54
altair processBlock - 250000 vs - 7PWei worstcase 31.414 ms/op 46.924 ms/op 0.67
altair processBlock - 250000 vs - 7PWei worstcase hashState 78.358 ms/op 130.78 ms/op 0.60
phase0 processBlock - 250000 vs - 7PWei normalcase 3.1258 ms/op 3.3999 ms/op 0.92
phase0 processBlock - 250000 vs - 7PWei worstcase 28.068 ms/op 39.869 ms/op 0.70
altair processEth1Data - 250000 vs - 7PWei normalcase 345.97 us/op 862.78 us/op 0.40
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 13.136 us/op 12.305 us/op 1.07
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 65.384 us/op 89.135 us/op 0.73
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 16.474 us/op 18.232 us/op 0.90
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 11.391 us/op 20.464 us/op 0.56
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 134.33 us/op 242.04 us/op 0.55
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.3323 ms/op 1.3779 ms/op 0.97
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.3224 ms/op 2.4169 ms/op 0.55
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.3641 ms/op 2.3268 ms/op 0.59
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.2594 ms/op 4.5207 ms/op 0.50
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.8287 ms/op 2.9243 ms/op 0.63
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 4.0711 ms/op 6.3556 ms/op 0.64
Tree 40 250000 create 283.07 ms/op 682.17 ms/op 0.41
Tree 40 250000 get(125000) 113.84 ns/op 242.37 ns/op 0.47
Tree 40 250000 set(125000) 763.41 ns/op 1.3688 us/op 0.56
Tree 40 250000 toArray() 12.039 ms/op 24.277 ms/op 0.50
Tree 40 250000 iterate all - toArray() + loop 11.769 ms/op 24.515 ms/op 0.48
Tree 40 250000 iterate all - get(i) 48.290 ms/op 77.551 ms/op 0.62
MutableVector 250000 create 9.2247 ms/op 15.761 ms/op 0.59
MutableVector 250000 get(125000) 5.8980 ns/op 6.9670 ns/op 0.85
MutableVector 250000 set(125000) 209.26 ns/op 351.67 ns/op 0.60
MutableVector 250000 toArray() 2.2966 ms/op 4.4171 ms/op 0.52
MutableVector 250000 iterate all - toArray() + loop 2.4125 ms/op 4.6190 ms/op 0.52
MutableVector 250000 iterate all - get(i) 1.3433 ms/op 1.6005 ms/op 0.84
Array 250000 create 2.7522 ms/op 4.2646 ms/op 0.65
Array 250000 clone - spread 1.1026 ms/op 1.4685 ms/op 0.75
Array 250000 get(125000) 1.0140 ns/op 1.2210 ns/op 0.83
Array 250000 set(125000) 1.2290 ns/op 5.5220 ns/op 0.22
Array 250000 iterate all - loop 157.93 us/op 181.57 us/op 0.87
effectiveBalanceIncrements clone Uint8Array 300000 14.791 us/op 44.642 us/op 0.33
effectiveBalanceIncrements clone MutableVector 300000 394.00 ns/op 431.00 ns/op 0.91
effectiveBalanceIncrements rw all Uint8Array 300000 184.76 us/op 209.85 us/op 0.88
effectiveBalanceIncrements rw all MutableVector 300000 68.523 ms/op 99.324 ms/op 0.69
phase0 afterProcessEpoch - 250000 vs - 7PWei 77.458 ms/op 124.73 ms/op 0.62
phase0 beforeProcessEpoch - 250000 vs - 7PWei 34.365 ms/op 57.113 ms/op 0.60
altair processEpoch - mainnet_e81889 450.10 ms/op 615.63 ms/op 0.73
mainnet_e81889 - altair beforeProcessEpoch 75.265 ms/op 101.11 ms/op 0.74
mainnet_e81889 - altair processJustificationAndFinalization 10.635 us/op 29.933 us/op 0.36
mainnet_e81889 - altair processInactivityUpdates 3.9870 ms/op 8.2329 ms/op 0.48
mainnet_e81889 - altair processRewardsAndPenalties 57.164 ms/op 73.459 ms/op 0.78
mainnet_e81889 - altair processRegistryUpdates 1.9530 us/op 3.5490 us/op 0.55
mainnet_e81889 - altair processSlashings 432.00 ns/op 498.00 ns/op 0.87
mainnet_e81889 - altair processEth1DataReset 576.00 ns/op 939.00 ns/op 0.61
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.8149 ms/op 1.5775 ms/op 1.15
mainnet_e81889 - altair processSlashingsReset 3.9970 us/op 6.5010 us/op 0.61
mainnet_e81889 - altair processRandaoMixesReset 5.8290 us/op 6.8870 us/op 0.85
mainnet_e81889 - altair processHistoricalRootsUpdate 947.00 ns/op 1.5180 us/op 0.62
mainnet_e81889 - altair processParticipationFlagUpdates 1.5130 us/op 3.1430 us/op 0.48
mainnet_e81889 - altair processSyncCommitteeUpdates 523.00 ns/op 1.2850 us/op 0.41
mainnet_e81889 - altair afterProcessEpoch 78.105 ms/op 127.09 ms/op 0.61
capella processEpoch - mainnet_e217614 1.9657 s/op 2.4582 s/op 0.80
mainnet_e217614 - capella beforeProcessEpoch 426.87 ms/op 538.77 ms/op 0.79
mainnet_e217614 - capella processJustificationAndFinalization 11.824 us/op 19.213 us/op 0.62
mainnet_e217614 - capella processInactivityUpdates 17.964 ms/op 20.375 ms/op 0.88
mainnet_e217614 - capella processRewardsAndPenalties 337.64 ms/op 442.08 ms/op 0.76
mainnet_e217614 - capella processRegistryUpdates 8.7050 us/op 38.342 us/op 0.23
mainnet_e217614 - capella processSlashings 371.00 ns/op 886.00 ns/op 0.42
mainnet_e217614 - capella processEth1DataReset 550.00 ns/op 845.00 ns/op 0.65
mainnet_e217614 - capella processEffectiveBalanceUpdates 11.249 ms/op 11.453 ms/op 0.98
mainnet_e217614 - capella processSlashingsReset 2.6070 us/op 8.3110 us/op 0.31
mainnet_e217614 - capella processRandaoMixesReset 3.2710 us/op 9.2280 us/op 0.35
mainnet_e217614 - capella processHistoricalRootsUpdate 604.00 ns/op 751.00 ns/op 0.80
mainnet_e217614 - capella processParticipationFlagUpdates 1.6730 us/op 2.3590 us/op 0.71
mainnet_e217614 - capella afterProcessEpoch 210.36 ms/op 378.58 ms/op 0.56
phase0 processEpoch - mainnet_e58758 327.96 ms/op 559.04 ms/op 0.59
mainnet_e58758 - phase0 beforeProcessEpoch 106.59 ms/op 174.60 ms/op 0.61
mainnet_e58758 - phase0 processJustificationAndFinalization 11.300 us/op 19.996 us/op 0.57
mainnet_e58758 - phase0 processRewardsAndPenalties 50.432 ms/op 43.779 ms/op 1.15
mainnet_e58758 - phase0 processRegistryUpdates 7.9700 us/op 17.404 us/op 0.46
mainnet_e58758 - phase0 processSlashings 620.00 ns/op 711.00 ns/op 0.87
mainnet_e58758 - phase0 processEth1DataReset 559.00 ns/op 983.00 ns/op 0.57
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.4692 ms/op 1.3263 ms/op 1.11
mainnet_e58758 - phase0 processSlashingsReset 3.5760 us/op 6.3950 us/op 0.56
mainnet_e58758 - phase0 processRandaoMixesReset 4.5600 us/op 5.9310 us/op 0.77
mainnet_e58758 - phase0 processHistoricalRootsUpdate 776.00 ns/op 813.00 ns/op 0.95
mainnet_e58758 - phase0 processParticipationRecordUpdates 3.3010 us/op 6.2040 us/op 0.53
mainnet_e58758 - phase0 afterProcessEpoch 62.637 ms/op 104.03 ms/op 0.60
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.0547 ms/op 1.4956 ms/op 0.71
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.1456 ms/op 1.5726 ms/op 0.73
altair processInactivityUpdates - 250000 normalcase 19.194 ms/op 27.035 ms/op 0.71
altair processInactivityUpdates - 250000 worstcase 21.219 ms/op 34.524 ms/op 0.61
phase0 processRegistryUpdates - 250000 normalcase 9.1290 us/op 9.7100 us/op 0.94
phase0 processRegistryUpdates - 250000 badcase_full_deposits 440.91 us/op 366.50 us/op 1.20
phase0 processRegistryUpdates - 250000 worstcase 0.5 102.63 ms/op 144.62 ms/op 0.71
altair processRewardsAndPenalties - 250000 normalcase 54.034 ms/op 42.613 ms/op 1.27
altair processRewardsAndPenalties - 250000 worstcase 60.599 ms/op 54.755 ms/op 1.11
phase0 getAttestationDeltas - 250000 normalcase 6.1203 ms/op 8.2731 ms/op 0.74
phase0 getAttestationDeltas - 250000 worstcase 5.9419 ms/op 8.1090 ms/op 0.73
phase0 processSlashings - 250000 worstcase 90.802 us/op 89.114 us/op 1.02
altair processSyncCommitteeUpdates - 250000 113.91 ms/op 159.12 ms/op 0.72
BeaconState.hashTreeRoot - No change 402.00 ns/op 260.00 ns/op 1.55
BeaconState.hashTreeRoot - 1 full validator 143.27 us/op 137.18 us/op 1.04
BeaconState.hashTreeRoot - 32 full validator 1.3772 ms/op 1.4486 ms/op 0.95
BeaconState.hashTreeRoot - 512 full validator 14.585 ms/op 14.973 ms/op 0.97
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 150.56 us/op 179.87 us/op 0.84
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 2.3527 ms/op 2.1550 ms/op 1.09
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 28.164 ms/op 28.247 ms/op 1.00
BeaconState.hashTreeRoot - 1 balances 157.90 us/op 137.28 us/op 1.15
BeaconState.hashTreeRoot - 32 balances 1.1835 ms/op 1.1039 ms/op 1.07
BeaconState.hashTreeRoot - 512 balances 13.445 ms/op 13.086 ms/op 1.03
BeaconState.hashTreeRoot - 250000 balances 204.10 ms/op 219.99 ms/op 0.93
aggregationBits - 2048 els - zipIndexesInBitList 17.661 us/op 17.777 us/op 0.99
byteArrayEquals 32 62.889 ns/op 78.722 ns/op 0.80
Buffer.compare 32 36.439 ns/op 60.961 ns/op 0.60
byteArrayEquals 1024 1.6615 us/op 2.1434 us/op 0.78
Buffer.compare 1024 42.798 ns/op 73.935 ns/op 0.58
byteArrayEquals 16384 27.240 us/op 34.430 us/op 0.79
Buffer.compare 16384 203.99 ns/op 278.14 ns/op 0.73
byteArrayEquals 123687377 209.89 ms/op 253.25 ms/op 0.83
Buffer.compare 123687377 6.3872 ms/op 7.6628 ms/op 0.83
byteArrayEquals 32 - diff last byte 60.398 ns/op 73.871 ns/op 0.82
Buffer.compare 32 - diff last byte 37.351 ns/op 57.172 ns/op 0.65
byteArrayEquals 1024 - diff last byte 1.7026 us/op 2.1068 us/op 0.81
Buffer.compare 1024 - diff last byte 43.470 ns/op 72.217 ns/op 0.60
byteArrayEquals 16384 - diff last byte 27.790 us/op 33.066 us/op 0.84
Buffer.compare 16384 - diff last byte 218.41 ns/op 279.06 ns/op 0.78
byteArrayEquals 123687377 - diff last byte 214.08 ms/op 254.55 ms/op 0.84
Buffer.compare 123687377 - diff last byte 5.7870 ms/op 8.0229 ms/op 0.72
byteArrayEquals 32 - random bytes 4.8200 ns/op 6.0550 ns/op 0.80
Buffer.compare 32 - random bytes 41.972 ns/op 63.170 ns/op 0.66
byteArrayEquals 1024 - random bytes 4.8130 ns/op 5.7390 ns/op 0.84
Buffer.compare 1024 - random bytes 40.269 ns/op 62.509 ns/op 0.64
byteArrayEquals 16384 - random bytes 5.6000 ns/op 5.7140 ns/op 0.98
Buffer.compare 16384 - random bytes 37.047 ns/op 62.773 ns/op 0.59
byteArrayEquals 123687377 - random bytes 16.540 ns/op 9.2300 ns/op 1.79
Buffer.compare 123687377 - random bytes 50.810 ns/op 75.960 ns/op 0.67
regular array get 100000 times 42.583 us/op 47.017 us/op 0.91
wrappedArray get 100000 times 42.130 us/op 47.011 us/op 0.90
arrayWithProxy get 100000 times 10.275 ms/op 15.239 ms/op 0.67
ssz.Root.equals 58.125 ns/op 56.669 ns/op 1.03
byteArrayEquals 55.970 ns/op 56.494 ns/op 0.99
Buffer.compare 10.656 ns/op 12.419 ns/op 0.86
shuffle list - 16384 els 4.7437 ms/op 7.3461 ms/op 0.65
shuffle list - 250000 els 73.856 ms/op 107.98 ms/op 0.68
processSlot - 1 slots 13.493 us/op 17.683 us/op 0.76
processSlot - 32 slots 4.1387 ms/op 3.4730 ms/op 1.19
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 54.958 ms/op 60.119 ms/op 0.91
getCommitteeAssignments - req 1 vs - 250000 vc 2.2222 ms/op 2.5939 ms/op 0.86
getCommitteeAssignments - req 100 vs - 250000 vc 3.3545 ms/op 3.8332 ms/op 0.88
getCommitteeAssignments - req 1000 vs - 250000 vc 3.6446 ms/op 4.1567 ms/op 0.88
findModifiedValidators - 10000 modified validators 448.20 ms/op 551.61 ms/op 0.81
findModifiedValidators - 1000 modified validators 338.82 ms/op 433.57 ms/op 0.78
findModifiedValidators - 100 modified validators 357.30 ms/op 453.18 ms/op 0.79
findModifiedValidators - 10 modified validators 338.31 ms/op 439.19 ms/op 0.77
findModifiedValidators - 1 modified validators 278.40 ms/op 402.01 ms/op 0.69
findModifiedValidators - no difference 323.21 ms/op 450.30 ms/op 0.72
compare ViewDUs 4.1017 s/op 4.8344 s/op 0.85
compare each validator Uint8Array 1.8791 s/op 1.7874 s/op 1.05
compare ViewDU to Uint8Array 1.1405 s/op 1.3506 s/op 0.84
migrate state 1000000 validators, 24 modified, 0 new 631.99 ms/op 846.68 ms/op 0.75
migrate state 1000000 validators, 1700 modified, 1000 new 944.73 ms/op 1.1225 s/op 0.84
migrate state 1000000 validators, 3400 modified, 2000 new 1.1081 s/op 1.3858 s/op 0.80
migrate state 1500000 validators, 24 modified, 0 new 679.44 ms/op 873.97 ms/op 0.78
migrate state 1500000 validators, 1700 modified, 1000 new 963.84 ms/op 1.1279 s/op 0.85
migrate state 1500000 validators, 3400 modified, 2000 new 1.1002 s/op 1.5115 s/op 0.73
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.0000 ns/op 5.2400 ns/op 0.95
state getBlockRootAtSlot - 250000 vs - 7PWei 1.1105 us/op 726.15 ns/op 1.53
computeProposers - vc 250000 8.0560 ms/op 10.023 ms/op 0.80
computeEpochShuffling - vc 250000 68.840 ms/op 111.29 ms/op 0.62
getNextSyncCommittee - vc 250000 117.10 ms/op 179.41 ms/op 0.65
computeSigningRoot for AttestationData 26.180 us/op 28.491 us/op 0.92
hash AttestationData serialized data then Buffer.toString(base64) 1.3663 us/op 2.5532 us/op 0.54
toHexString serialized data 851.40 ns/op 1.2515 us/op 0.68
Buffer.toString(base64) 144.68 ns/op 281.41 ns/op 0.51

by benchmarkbot/action

@twoeths twoeths merged commit d3005bf into unstable Dec 19, 2023
14 of 15 checks passed
@twoeths twoeths deleted the tuyen/epoch_transition_by_steps_panel branch December 19, 2023 09:01
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.14.0 🎉

ensi321 pushed a commit to ensi321/lodestar that referenced this pull request Jan 22, 2024
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