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

docs: add note to local testnet setup #6984

Merged
merged 2 commits into from
Jul 30, 2024

Conversation

nflaig
Copy link
Member

@nflaig nflaig commented Jul 29, 2024

Motivation

Clarify expectations on what the local testnet can be used for

Description

Adds note that local testnet is supposed to be short-lived / ephemeral and used for development and testing.

Links to Ethereum In a Box and Kurtosis ethereum package for users who wanna set up a long-lived private network or devnet.

@nflaig nflaig requested a review from a team as a code owner July 29, 2024 12:30
Copy link

codecov bot commented Jul 29, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 62.49%. Comparing base (3ecee07) to head (1c89dd2).

Additional details and impacted files
@@             Coverage Diff              @@
##           unstable    #6984      +/-   ##
============================================
- Coverage     62.49%   62.49%   -0.01%     
============================================
  Files           576      576              
  Lines         61170    61170              
  Branches       2134     2131       -3     
============================================
- Hits          38227    38226       -1     
- Misses        22904    22905       +1     
  Partials         39       39              

Copy link
Contributor

github-actions bot commented Jul 29, 2024

Performance Report

✔️ no performance regression detected

🚀🚀 Significant benchmark improvement detected

Benchmark suite Current: 9e42bfb Previous: 59f72d0 Ratio
Object set x1000 25.046 ns/op 77.701 ns/op 0.32
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.3807 ms/op 7.7077 ms/op 0.18
findModifiedValidators - 1000 modified validators 136.40 ms/op 450.90 ms/op 0.30
Full benchmark results
Benchmark suite Current: 9e42bfb Previous: 59f72d0 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.7838 ms/op 2.8144 ms/op 0.63
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 38.354 us/op 58.733 us/op 0.65
BLS verify - blst 847.94 us/op 1.0293 ms/op 0.82
BLS verifyMultipleSignatures 3 - blst 1.6544 ms/op 1.5085 ms/op 1.10
BLS verifyMultipleSignatures 8 - blst 1.9803 ms/op 2.2218 ms/op 0.89
BLS verifyMultipleSignatures 32 - blst 4.4148 ms/op 7.0741 ms/op 0.62
BLS verifyMultipleSignatures 64 - blst 8.2834 ms/op 12.137 ms/op 0.68
BLS verifyMultipleSignatures 128 - blst 15.742 ms/op 20.810 ms/op 0.76
BLS deserializing 10000 signatures 590.38 ms/op 739.80 ms/op 0.80
BLS deserializing 100000 signatures 6.1796 s/op 7.6259 s/op 0.81
BLS verifyMultipleSignatures - same message - 3 - blst 904.51 us/op 1.0784 ms/op 0.84
BLS verifyMultipleSignatures - same message - 8 - blst 1.0805 ms/op 1.2278 ms/op 0.88
BLS verifyMultipleSignatures - same message - 32 - blst 1.7025 ms/op 1.7701 ms/op 0.96
BLS verifyMultipleSignatures - same message - 64 - blst 2.5469 ms/op 2.6861 ms/op 0.95
BLS verifyMultipleSignatures - same message - 128 - blst 4.1502 ms/op 4.3882 ms/op 0.95
BLS aggregatePubkeys 32 - blst 17.827 us/op 21.434 us/op 0.83
BLS aggregatePubkeys 128 - blst 63.125 us/op 76.979 us/op 0.82
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 62.714 ms/op 101.51 ms/op 0.62
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 52.619 ms/op 67.655 ms/op 0.78
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 31.209 ms/op 40.916 ms/op 0.76
getSlashingsAndExits - default max 61.663 us/op 166.98 us/op 0.37
getSlashingsAndExits - 2k 243.68 us/op 496.12 us/op 0.49
proposeBlockBody type=full, size=empty 5.0971 ms/op 6.7414 ms/op 0.76
isKnown best case - 1 super set check 458.00 ns/op 500.00 ns/op 0.92
isKnown normal case - 2 super set checks 449.00 ns/op 535.00 ns/op 0.84
isKnown worse case - 16 super set checks 456.00 ns/op 442.00 ns/op 1.03
InMemoryCheckpointStateCache - add get delete 4.1520 us/op 6.7200 us/op 0.62
validate api signedAggregateAndProof - struct 1.8346 ms/op 1.7594 ms/op 1.04
validate gossip signedAggregateAndProof - struct 1.9111 ms/op 1.6286 ms/op 1.17
validate gossip attestation - vc 640000 962.64 us/op 1.1567 ms/op 0.83
batch validate gossip attestation - vc 640000 - chunk 32 122.88 us/op 141.22 us/op 0.87
batch validate gossip attestation - vc 640000 - chunk 64 103.00 us/op 125.17 us/op 0.82
batch validate gossip attestation - vc 640000 - chunk 128 97.764 us/op 114.95 us/op 0.85
batch validate gossip attestation - vc 640000 - chunk 256 95.398 us/op 117.75 us/op 0.81
pickEth1Vote - no votes 780.96 us/op 1.1676 ms/op 0.67
pickEth1Vote - max votes 7.8375 ms/op 12.274 ms/op 0.64
pickEth1Vote - Eth1Data hashTreeRoot value x2048 14.712 ms/op 17.013 ms/op 0.86
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 18.992 ms/op 29.311 ms/op 0.65
pickEth1Vote - Eth1Data fastSerialize value x2048 338.71 us/op 558.93 us/op 0.61
pickEth1Vote - Eth1Data fastSerialize tree x2048 5.4974 ms/op 4.5172 ms/op 1.22
bytes32 toHexString 550.00 ns/op 483.00 ns/op 1.14
bytes32 Buffer.toString(hex) 413.00 ns/op 256.00 ns/op 1.61
bytes32 Buffer.toString(hex) from Uint8Array 504.00 ns/op 384.00 ns/op 1.31
bytes32 Buffer.toString(hex) + 0x 419.00 ns/op 278.00 ns/op 1.51
Object access 1 prop 0.29900 ns/op 0.14400 ns/op 2.08
Map access 1 prop 0.29700 ns/op 0.13400 ns/op 2.22
Object get x1000 4.7250 ns/op 6.0310 ns/op 0.78
Map get x1000 5.4690 ns/op 6.7980 ns/op 0.80
Object set x1000 25.046 ns/op 77.701 ns/op 0.32
Map set x1000 18.581 ns/op 51.335 ns/op 0.36
Return object 10000 times 0.27850 ns/op 0.32530 ns/op 0.86
Throw Error 10000 times 2.5074 us/op 4.0236 us/op 0.62
fastMsgIdFn sha256 / 200 bytes 1.9080 us/op 2.5380 us/op 0.75
fastMsgIdFn h32 xxhash / 200 bytes 407.00 ns/op 331.00 ns/op 1.23
fastMsgIdFn h64 xxhash / 200 bytes 433.00 ns/op 312.00 ns/op 1.39
fastMsgIdFn sha256 / 1000 bytes 6.0930 us/op 8.2050 us/op 0.74
fastMsgIdFn h32 xxhash / 1000 bytes 524.00 ns/op 423.00 ns/op 1.24
fastMsgIdFn h64 xxhash / 1000 bytes 515.00 ns/op 369.00 ns/op 1.40
fastMsgIdFn sha256 / 10000 bytes 51.067 us/op 68.185 us/op 0.75
fastMsgIdFn h32 xxhash / 10000 bytes 1.9070 us/op 1.9830 us/op 0.96
fastMsgIdFn h64 xxhash / 10000 bytes 1.3350 us/op 1.3210 us/op 1.01
send data - 1000 256B messages 10.075 ms/op 14.074 ms/op 0.72
send data - 1000 512B messages 14.244 ms/op 18.766 ms/op 0.76
send data - 1000 1024B messages 19.950 ms/op 27.920 ms/op 0.71
send data - 1000 1200B messages 23.083 ms/op 33.507 ms/op 0.69
send data - 1000 2048B messages 29.655 ms/op 36.791 ms/op 0.81
send data - 1000 4096B messages 26.108 ms/op 37.187 ms/op 0.70
send data - 1000 16384B messages 62.474 ms/op 73.300 ms/op 0.85
send data - 1000 65536B messages 240.67 ms/op 244.60 ms/op 0.98
enrSubnets - fastDeserialize 64 bits 1.1420 us/op 1.3780 us/op 0.83
enrSubnets - ssz BitVector 64 bits 507.00 ns/op 466.00 ns/op 1.09
enrSubnets - fastDeserialize 4 bits 308.00 ns/op 186.00 ns/op 1.66
enrSubnets - ssz BitVector 4 bits 502.00 ns/op 411.00 ns/op 1.22
prioritizePeers score -10:0 att 32-0.1 sync 2-0 138.05 us/op 225.14 us/op 0.61
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 147.75 us/op 189.71 us/op 0.78
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 301.45 us/op 398.79 us/op 0.76
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 470.91 us/op 595.66 us/op 0.79
prioritizePeers score 0:0 att 64-1 sync 4-1 620.37 us/op 1.1148 ms/op 0.56
array of 16000 items push then shift 1.2775 us/op 1.8577 us/op 0.69
LinkedList of 16000 items push then shift 6.4860 ns/op 8.7960 ns/op 0.74
array of 16000 items push then pop 75.990 ns/op 155.81 ns/op 0.49
LinkedList of 16000 items push then pop 6.2780 ns/op 8.2190 ns/op 0.76
array of 24000 items push then shift 1.8777 us/op 3.2274 us/op 0.58
LinkedList of 24000 items push then shift 6.5820 ns/op 17.365 ns/op 0.38
array of 24000 items push then pop 106.22 ns/op 268.90 ns/op 0.40
LinkedList of 24000 items push then pop 6.3340 ns/op 10.238 ns/op 0.62
intersect bitArray bitLen 8 5.4650 ns/op 7.8480 ns/op 0.70
intersect array and set length 8 38.820 ns/op 112.91 ns/op 0.34
intersect bitArray bitLen 128 26.733 ns/op 34.438 ns/op 0.78
intersect array and set length 128 581.66 ns/op 1.3290 us/op 0.44
bitArray.getTrueBitIndexes() bitLen 128 1.7210 us/op 2.7600 us/op 0.62
bitArray.getTrueBitIndexes() bitLen 248 3.4400 us/op 3.9640 us/op 0.87
bitArray.getTrueBitIndexes() bitLen 512 6.1490 us/op 8.1840 us/op 0.75
Buffer.concat 32 items 1.0090 us/op 988.00 ns/op 1.02
Uint8Array.set 32 items 1.6640 us/op 1.6320 us/op 1.02
Buffer.copy 1.7790 us/op 1.7750 us/op 1.00
Uint8Array.set - with subarray 2.3720 us/op 2.7890 us/op 0.85
Uint8Array.set - without subarray 1.6350 us/op 2.0330 us/op 0.80
getUint32 - dataview 397.00 ns/op 315.00 ns/op 1.26
getUint32 - manual 338.00 ns/op 260.00 ns/op 1.30
Set add up to 64 items then delete first 1.8007 us/op 2.7753 us/op 0.65
OrderedSet add up to 64 items then delete first 2.7269 us/op 3.9113 us/op 0.70
Set add up to 64 items then delete last 1.8764 us/op 3.6145 us/op 0.52
OrderedSet add up to 64 items then delete last 2.8398 us/op 5.1222 us/op 0.55
Set add up to 64 items then delete middle 1.8760 us/op 2.7298 us/op 0.69
OrderedSet add up to 64 items then delete middle 4.1649 us/op 6.0286 us/op 0.69
Set add up to 128 items then delete first 3.6785 us/op 6.8297 us/op 0.54
OrderedSet add up to 128 items then delete first 5.8276 us/op 10.442 us/op 0.56
Set add up to 128 items then delete last 3.5538 us/op 5.5755 us/op 0.64
OrderedSet add up to 128 items then delete last 5.4542 us/op 9.9522 us/op 0.55
Set add up to 128 items then delete middle 3.5949 us/op 5.2590 us/op 0.68
OrderedSet add up to 128 items then delete middle 10.981 us/op 14.926 us/op 0.74
Set add up to 256 items then delete first 7.2651 us/op 13.789 us/op 0.53
OrderedSet add up to 256 items then delete first 11.757 us/op 20.545 us/op 0.57
Set add up to 256 items then delete last 7.0482 us/op 12.554 us/op 0.56
OrderedSet add up to 256 items then delete last 11.014 us/op 15.758 us/op 0.70
Set add up to 256 items then delete middle 7.0077 us/op 10.667 us/op 0.66
OrderedSet add up to 256 items then delete middle 32.298 us/op 46.727 us/op 0.69
transfer serialized Status (84 B) 1.5020 us/op 1.5170 us/op 0.99
copy serialized Status (84 B) 1.2910 us/op 1.3080 us/op 0.99
transfer serialized SignedVoluntaryExit (112 B) 1.5870 us/op 1.6990 us/op 0.93
copy serialized SignedVoluntaryExit (112 B) 1.3450 us/op 1.3360 us/op 1.01
transfer serialized ProposerSlashing (416 B) 2.2030 us/op 2.1890 us/op 1.01
copy serialized ProposerSlashing (416 B) 2.2690 us/op 2.2500 us/op 1.01
transfer serialized Attestation (485 B) 2.2350 us/op 2.4170 us/op 0.92
copy serialized Attestation (485 B) 2.2440 us/op 2.2720 us/op 0.99
transfer serialized AttesterSlashing (33232 B) 2.6350 us/op 2.7010 us/op 0.98
copy serialized AttesterSlashing (33232 B) 5.6400 us/op 8.8250 us/op 0.64
transfer serialized Small SignedBeaconBlock (128000 B) 3.2460 us/op 2.8150 us/op 1.15
copy serialized Small SignedBeaconBlock (128000 B) 13.281 us/op 24.634 us/op 0.54
transfer serialized Avg SignedBeaconBlock (200000 B) 3.4500 us/op 3.6840 us/op 0.94
copy serialized Avg SignedBeaconBlock (200000 B) 18.510 us/op 25.755 us/op 0.72
transfer serialized BlobsSidecar (524380 B) 3.1090 us/op 2.6350 us/op 1.18
copy serialized BlobsSidecar (524380 B) 103.66 us/op 96.379 us/op 1.08
transfer serialized Big SignedBeaconBlock (1000000 B) 3.0180 us/op 3.8180 us/op 0.79
copy serialized Big SignedBeaconBlock (1000000 B) 138.37 us/op 183.77 us/op 0.75
pass gossip attestations to forkchoice per slot 2.8286 ms/op 3.5957 ms/op 0.79
forkChoice updateHead vc 100000 bc 64 eq 0 380.76 us/op 552.73 us/op 0.69
forkChoice updateHead vc 600000 bc 64 eq 0 2.3521 ms/op 3.2941 ms/op 0.71
forkChoice updateHead vc 1000000 bc 64 eq 0 4.2224 ms/op 6.1188 ms/op 0.69
forkChoice updateHead vc 600000 bc 320 eq 0 2.5627 ms/op 3.3470 ms/op 0.77
forkChoice updateHead vc 600000 bc 1200 eq 0 2.4172 ms/op 4.8470 ms/op 0.50
forkChoice updateHead vc 600000 bc 7200 eq 0 2.8280 ms/op 4.5896 ms/op 0.62
forkChoice updateHead vc 600000 bc 64 eq 1000 9.1539 ms/op 11.543 ms/op 0.79
forkChoice updateHead vc 600000 bc 64 eq 10000 9.3052 ms/op 11.883 ms/op 0.78
forkChoice updateHead vc 600000 bc 64 eq 300000 12.039 ms/op 23.222 ms/op 0.52
computeDeltas 500000 validators 300 proto nodes 2.8569 ms/op 4.0673 ms/op 0.70
computeDeltas 500000 validators 1200 proto nodes 2.8432 ms/op 4.2413 ms/op 0.67
computeDeltas 500000 validators 7200 proto nodes 2.9392 ms/op 4.6100 ms/op 0.64
computeDeltas 750000 validators 300 proto nodes 4.3344 ms/op 6.7896 ms/op 0.64
computeDeltas 750000 validators 1200 proto nodes 4.3695 ms/op 6.7521 ms/op 0.65
computeDeltas 750000 validators 7200 proto nodes 4.2409 ms/op 6.3722 ms/op 0.67
computeDeltas 1400000 validators 300 proto nodes 8.1224 ms/op 12.043 ms/op 0.67
computeDeltas 1400000 validators 1200 proto nodes 8.1769 ms/op 11.148 ms/op 0.73
computeDeltas 1400000 validators 7200 proto nodes 8.0649 ms/op 11.517 ms/op 0.70
computeDeltas 2100000 validators 300 proto nodes 12.225 ms/op 15.815 ms/op 0.77
computeDeltas 2100000 validators 1200 proto nodes 12.341 ms/op 15.677 ms/op 0.79
computeDeltas 2100000 validators 7200 proto nodes 13.024 ms/op 15.222 ms/op 0.86
altair processAttestation - 250000 vs - 7PWei normalcase 1.2866 ms/op 1.7476 ms/op 0.74
altair processAttestation - 250000 vs - 7PWei worstcase 2.0007 ms/op 2.6841 ms/op 0.75
altair processAttestation - setStatus - 1/6 committees join 70.607 us/op 92.773 us/op 0.76
altair processAttestation - setStatus - 1/3 committees join 140.36 us/op 180.33 us/op 0.78
altair processAttestation - setStatus - 1/2 committees join 222.79 us/op 265.68 us/op 0.84
altair processAttestation - setStatus - 2/3 committees join 275.21 us/op 333.22 us/op 0.83
altair processAttestation - setStatus - 4/5 committees join 442.35 us/op 507.92 us/op 0.87
altair processAttestation - setStatus - 100% committees join 515.65 us/op 604.03 us/op 0.85
altair processBlock - 250000 vs - 7PWei normalcase 5.7407 ms/op 4.5631 ms/op 1.26
altair processBlock - 250000 vs - 7PWei normalcase hashState 32.552 ms/op 32.407 ms/op 1.00
altair processBlock - 250000 vs - 7PWei worstcase 43.587 ms/op 39.460 ms/op 1.10
altair processBlock - 250000 vs - 7PWei worstcase hashState 91.014 ms/op 85.532 ms/op 1.06
phase0 processBlock - 250000 vs - 7PWei normalcase 2.7706 ms/op 2.7890 ms/op 0.99
phase0 processBlock - 250000 vs - 7PWei worstcase 28.119 ms/op 28.085 ms/op 1.00
altair processEth1Data - 250000 vs - 7PWei normalcase 306.60 us/op 467.26 us/op 0.66
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 7.7450 us/op 7.1460 us/op 1.08
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 26.162 us/op 30.398 us/op 0.86
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 11.293 us/op 13.232 us/op 0.85
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 8.9260 us/op 8.4650 us/op 1.05
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 87.073 us/op 119.36 us/op 0.73
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 858.62 us/op 916.20 us/op 0.94
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.1131 ms/op 1.2645 ms/op 0.88
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.1650 ms/op 1.1508 ms/op 1.01
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 4.6462 ms/op 3.0927 ms/op 1.50
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.0254 ms/op 2.1243 ms/op 0.95
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 5.2585 ms/op 4.8473 ms/op 1.08
Tree 40 250000 create 404.70 ms/op 483.00 ms/op 0.84
Tree 40 250000 get(125000) 126.94 ns/op 179.48 ns/op 0.71
Tree 40 250000 set(125000) 915.98 ns/op 1.6828 us/op 0.54
Tree 40 250000 toArray() 19.732 ms/op 25.753 ms/op 0.77
Tree 40 250000 iterate all - toArray() + loop 19.505 ms/op 26.396 ms/op 0.74
Tree 40 250000 iterate all - get(i) 57.610 ms/op 74.884 ms/op 0.77
MutableVector 250000 create 15.085 ms/op 16.958 ms/op 0.89
MutableVector 250000 get(125000) 6.5020 ns/op 7.9280 ns/op 0.82
MutableVector 250000 set(125000) 185.38 ns/op 300.55 ns/op 0.62
MutableVector 250000 toArray() 4.4381 ms/op 5.0849 ms/op 0.87
MutableVector 250000 iterate all - toArray() + loop 5.1996 ms/op 5.4807 ms/op 0.95
MutableVector 250000 iterate all - get(i) 1.7196 ms/op 1.7584 ms/op 0.98
Array 250000 create 3.3531 ms/op 4.8963 ms/op 0.68
Array 250000 clone - spread 1.4812 ms/op 3.6722 ms/op 0.40
Array 250000 get(125000) 0.62400 ns/op 0.51300 ns/op 1.22
Array 250000 set(125000) 0.63200 ns/op 0.53800 ns/op 1.17
Array 250000 iterate all - loop 82.415 us/op 123.48 us/op 0.67
effectiveBalanceIncrements clone Uint8Array 300000 19.016 us/op 78.460 us/op 0.24
effectiveBalanceIncrements clone MutableVector 300000 335.00 ns/op 167.00 ns/op 2.01
effectiveBalanceIncrements rw all Uint8Array 300000 264.03 us/op 221.00 us/op 1.19
effectiveBalanceIncrements rw all MutableVector 300000 62.853 ms/op 179.53 ms/op 0.35
phase0 afterProcessEpoch - 250000 vs - 7PWei 79.000 ms/op 99.330 ms/op 0.80
Array.fill - length 1000000 4.6128 ms/op 7.9360 ms/op 0.58
Array push - length 1000000 22.676 ms/op 26.478 ms/op 0.86
Array.get 0.26430 ns/op 0.31746 ns/op 0.83
Uint8Array.get 0.35371 ns/op 0.49242 ns/op 0.72
phase0 beforeProcessEpoch - 250000 vs - 7PWei 27.404 ms/op 30.087 ms/op 0.91
altair processEpoch - mainnet_e81889 402.57 ms/op 385.46 ms/op 1.04
mainnet_e81889 - altair beforeProcessEpoch 34.345 ms/op 36.538 ms/op 0.94
mainnet_e81889 - altair processJustificationAndFinalization 23.227 us/op 18.921 us/op 1.23
mainnet_e81889 - altair processInactivityUpdates 8.3940 ms/op 6.3351 ms/op 1.33
mainnet_e81889 - altair processRewardsAndPenalties 59.435 ms/op 56.362 ms/op 1.05
mainnet_e81889 - altair processRegistryUpdates 4.5980 us/op 3.3880 us/op 1.36
mainnet_e81889 - altair processSlashings 1.5390 us/op 847.00 ns/op 1.82
mainnet_e81889 - altair processEth1DataReset 1.2100 us/op 732.00 ns/op 1.65
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.3183 ms/op 2.3132 ms/op 1.00
mainnet_e81889 - altair processSlashingsReset 6.5140 us/op 8.3150 us/op 0.78
mainnet_e81889 - altair processRandaoMixesReset 8.0200 us/op 8.5160 us/op 0.94
mainnet_e81889 - altair processHistoricalRootsUpdate 1.2920 us/op 1.2700 us/op 1.02
mainnet_e81889 - altair processParticipationFlagUpdates 5.4520 us/op 3.6310 us/op 1.50
mainnet_e81889 - altair processSyncCommitteeUpdates 1.2810 us/op 1.0030 us/op 1.28
mainnet_e81889 - altair afterProcessEpoch 89.443 ms/op 106.20 ms/op 0.84
capella processEpoch - mainnet_e217614 1.2870 s/op 1.9567 s/op 0.66
mainnet_e217614 - capella beforeProcessEpoch 103.03 ms/op 174.03 ms/op 0.59
mainnet_e217614 - capella processJustificationAndFinalization 7.3040 us/op 32.672 us/op 0.22
mainnet_e217614 - capella processInactivityUpdates 12.591 ms/op 23.799 ms/op 0.53
mainnet_e217614 - capella processRewardsAndPenalties 261.08 ms/op 293.13 ms/op 0.89
mainnet_e217614 - capella processRegistryUpdates 11.687 us/op 22.909 us/op 0.51
mainnet_e217614 - capella processSlashings 771.00 ns/op 821.00 ns/op 0.94
mainnet_e217614 - capella processEth1DataReset 684.00 ns/op 1.2620 us/op 0.54
mainnet_e217614 - capella processEffectiveBalanceUpdates 15.189 ms/op 25.334 ms/op 0.60
mainnet_e217614 - capella processSlashingsReset 2.7750 us/op 8.8370 us/op 0.31
mainnet_e217614 - capella processRandaoMixesReset 3.3310 us/op 14.103 us/op 0.24
mainnet_e217614 - capella processHistoricalRootsUpdate 719.00 ns/op 1.2750 us/op 0.56
mainnet_e217614 - capella processParticipationFlagUpdates 1.4090 us/op 8.0520 us/op 0.17
mainnet_e217614 - capella afterProcessEpoch 236.96 ms/op 412.89 ms/op 0.57
phase0 processEpoch - mainnet_e58758 313.47 ms/op 800.70 ms/op 0.39
mainnet_e58758 - phase0 beforeProcessEpoch 74.129 ms/op 218.61 ms/op 0.34
mainnet_e58758 - phase0 processJustificationAndFinalization 12.934 us/op 41.852 us/op 0.31
mainnet_e58758 - phase0 processRewardsAndPenalties 37.329 ms/op 58.574 ms/op 0.64
mainnet_e58758 - phase0 processRegistryUpdates 6.5530 us/op 20.839 us/op 0.31
mainnet_e58758 - phase0 processSlashings 804.00 ns/op 1.3770 us/op 0.58
mainnet_e58758 - phase0 processEth1DataReset 714.00 ns/op 1.3080 us/op 0.55
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.7177 ms/op 2.0452 ms/op 0.84
mainnet_e58758 - phase0 processSlashingsReset 2.1920 us/op 7.3930 us/op 0.30
mainnet_e58758 - phase0 processRandaoMixesReset 4.2110 us/op 13.948 us/op 0.30
mainnet_e58758 - phase0 processHistoricalRootsUpdate 708.00 ns/op 1.1550 us/op 0.61
mainnet_e58758 - phase0 processParticipationRecordUpdates 2.7610 us/op 20.240 us/op 0.14
mainnet_e58758 - phase0 afterProcessEpoch 64.954 ms/op 137.32 ms/op 0.47
phase0 processEffectiveBalanceUpdates - 250000 normalcase 758.32 us/op 2.0470 ms/op 0.37
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.3807 ms/op 7.7077 ms/op 0.18
altair processInactivityUpdates - 250000 normalcase 17.512 ms/op 29.936 ms/op 0.58
altair processInactivityUpdates - 250000 worstcase 17.696 ms/op 34.112 ms/op 0.52
phase0 processRegistryUpdates - 250000 normalcase 3.2830 us/op 20.105 us/op 0.16
phase0 processRegistryUpdates - 250000 badcase_full_deposits 298.60 us/op 507.66 us/op 0.59
phase0 processRegistryUpdates - 250000 worstcase 0.5 117.90 ms/op 168.90 ms/op 0.70
altair processRewardsAndPenalties - 250000 normalcase 48.462 ms/op 46.280 ms/op 1.05
altair processRewardsAndPenalties - 250000 worstcase 41.663 ms/op 46.715 ms/op 0.89
phase0 getAttestationDeltas - 250000 normalcase 5.7580 ms/op 12.549 ms/op 0.46
phase0 getAttestationDeltas - 250000 worstcase 6.5795 ms/op 9.9824 ms/op 0.66
phase0 processSlashings - 250000 worstcase 81.506 us/op 110.95 us/op 0.73
altair processSyncCommitteeUpdates - 250000 96.522 ms/op 146.44 ms/op 0.66
BeaconState.hashTreeRoot - No change 499.00 ns/op 358.00 ns/op 1.39
BeaconState.hashTreeRoot - 1 full validator 111.70 us/op 129.24 us/op 0.86
BeaconState.hashTreeRoot - 32 full validator 1.1396 ms/op 1.7672 ms/op 0.64
BeaconState.hashTreeRoot - 512 full validator 11.027 ms/op 15.259 ms/op 0.72
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 132.61 us/op 189.02 us/op 0.70
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.8714 ms/op 2.7816 ms/op 0.67
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 23.813 ms/op 34.706 ms/op 0.69
BeaconState.hashTreeRoot - 1 balances 127.32 us/op 140.65 us/op 0.91
BeaconState.hashTreeRoot - 32 balances 1.1868 ms/op 1.5437 ms/op 0.77
BeaconState.hashTreeRoot - 512 balances 12.371 ms/op 10.871 ms/op 1.14
BeaconState.hashTreeRoot - 250000 balances 194.61 ms/op 164.90 ms/op 1.18
aggregationBits - 2048 els - zipIndexesInBitList 19.864 us/op 28.413 us/op 0.70
byteArrayEquals 32 45.585 ns/op 56.290 ns/op 0.81
Buffer.compare 32 14.444 ns/op 17.995 ns/op 0.80
byteArrayEquals 1024 1.1891 us/op 1.6530 us/op 0.72
Buffer.compare 1024 22.261 ns/op 26.526 ns/op 0.84
byteArrayEquals 16384 18.885 us/op 26.347 us/op 0.72
Buffer.compare 16384 186.73 ns/op 189.44 ns/op 0.99
byteArrayEquals 123687377 142.97 ms/op 212.68 ms/op 0.67
Buffer.compare 123687377 5.2885 ms/op 12.212 ms/op 0.43
byteArrayEquals 32 - diff last byte 45.074 ns/op 59.934 ns/op 0.75
Buffer.compare 32 - diff last byte 14.835 ns/op 19.879 ns/op 0.75
byteArrayEquals 1024 - diff last byte 1.1924 us/op 1.8055 us/op 0.66
Buffer.compare 1024 - diff last byte 22.774 ns/op 29.804 ns/op 0.76
byteArrayEquals 16384 - diff last byte 18.962 us/op 28.535 us/op 0.66
Buffer.compare 16384 - diff last byte 181.37 ns/op 227.59 ns/op 0.80
byteArrayEquals 123687377 - diff last byte 144.37 ms/op 221.27 ms/op 0.65
Buffer.compare 123687377 - diff last byte 5.3302 ms/op 11.603 ms/op 0.46
byteArrayEquals 32 - random bytes 5.6190 ns/op 5.9520 ns/op 0.94
Buffer.compare 32 - random bytes 15.007 ns/op 20.094 ns/op 0.75
byteArrayEquals 1024 - random bytes 4.7510 ns/op 5.8630 ns/op 0.81
Buffer.compare 1024 - random bytes 14.950 ns/op 22.471 ns/op 0.67
byteArrayEquals 16384 - random bytes 4.7050 ns/op 6.1990 ns/op 0.76
Buffer.compare 16384 - random bytes 14.863 ns/op 19.813 ns/op 0.75
byteArrayEquals 123687377 - random bytes 7.5900 ns/op 7.8500 ns/op 0.97
Buffer.compare 123687377 - random bytes 17.730 ns/op 22.730 ns/op 0.78
regular array get 100000 times 29.368 us/op 41.934 us/op 0.70
wrappedArray get 100000 times 29.525 us/op 41.472 us/op 0.71
arrayWithProxy get 100000 times 10.660 ms/op 19.437 ms/op 0.55
ssz.Root.equals 42.073 ns/op 55.656 ns/op 0.76
byteArrayEquals 41.696 ns/op 54.337 ns/op 0.77
Buffer.compare 8.5340 ns/op 12.061 ns/op 0.71
shuffle list - 16384 els 5.5248 ms/op 7.3299 ms/op 0.75
shuffle list - 250000 els 81.431 ms/op 112.99 ms/op 0.72
processSlot - 1 slots 12.107 us/op 22.444 us/op 0.54
processSlot - 32 slots 3.0033 ms/op 4.3905 ms/op 0.68
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 41.482 ms/op 54.205 ms/op 0.77
getCommitteeAssignments - req 1 vs - 250000 vc 1.7048 ms/op 2.5613 ms/op 0.67
getCommitteeAssignments - req 100 vs - 250000 vc 3.3946 ms/op 5.3312 ms/op 0.64
getCommitteeAssignments - req 1000 vs - 250000 vc 3.6139 ms/op 5.2454 ms/op 0.69
findModifiedValidators - 10000 modified validators 226.96 ms/op 625.53 ms/op 0.36
findModifiedValidators - 1000 modified validators 136.40 ms/op 450.90 ms/op 0.30
findModifiedValidators - 100 modified validators 133.78 ms/op 345.77 ms/op 0.39
findModifiedValidators - 10 modified validators 135.04 ms/op 286.71 ms/op 0.47
findModifiedValidators - 1 modified validators 133.06 ms/op 303.21 ms/op 0.44
findModifiedValidators - no difference 133.97 ms/op 324.18 ms/op 0.41
compare ViewDUs 3.3480 s/op 4.3672 s/op 0.77
compare each validator Uint8Array 1.6440 s/op 2.2950 s/op 0.72
compare ViewDU to Uint8Array 936.10 ms/op 1.6281 s/op 0.57
migrate state 1000000 validators, 24 modified, 0 new 588.56 ms/op 683.43 ms/op 0.86
migrate state 1000000 validators, 1700 modified, 1000 new 853.60 ms/op 1.0534 s/op 0.81
migrate state 1000000 validators, 3400 modified, 2000 new 979.03 ms/op 1.2155 s/op 0.81
migrate state 1500000 validators, 24 modified, 0 new 595.85 ms/op 762.66 ms/op 0.78
migrate state 1500000 validators, 1700 modified, 1000 new 812.22 ms/op 832.10 ms/op 0.98
migrate state 1500000 validators, 3400 modified, 2000 new 983.21 ms/op 1.0789 s/op 0.91
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 6.3700 ns/op 4.7300 ns/op 1.35
state getBlockRootAtSlot - 250000 vs - 7PWei 556.34 ns/op 949.94 ns/op 0.59
computeProposers - vc 250000 5.8228 ms/op 7.6173 ms/op 0.76
computeEpochShuffling - vc 250000 83.102 ms/op 96.464 ms/op 0.86
getNextSyncCommittee - vc 250000 99.060 ms/op 123.15 ms/op 0.80
computeSigningRoot for AttestationData 17.438 us/op 24.217 us/op 0.72
hash AttestationData serialized data then Buffer.toString(base64) 1.1800 us/op 1.5446 us/op 0.76
toHexString serialized data 758.02 ns/op 927.19 ns/op 0.82
Buffer.toString(base64) 140.42 ns/op 194.50 ns/op 0.72

by benchmarkbot/action

Copy link
Member

@matthewkeil matthewkeil left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🎸

@philknows philknows merged commit 48a5a94 into unstable Jul 30, 2024
20 checks passed
@philknows philknows deleted the nflaig/add-note-about-testnet branch July 30, 2024 13:46
@wemeetagain
Copy link
Member

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