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: placeholder PR for verge #7069

Draft
wants to merge 8 commits into
base: unstable
Choose a base branch
from
Draft

feat: placeholder PR for verge #7069

wants to merge 8 commits into from

Conversation

g11tech
Copy link
Contributor

@g11tech g11tech commented Sep 5, 2024

supercedes #5805
for CI and testing

Update state transition

Fix tests

Add fork to LC tests

rebase fixes

get the types to match current kaustinen network

insert verge between capella and deneb

add payload to execution witness

working local build with kaunstinen v2 geth build

use electra in config

few corrections

fix build

integrated ssz with optional

deep log witness

fix serialization for new payload

rename verge to electra and fix upgrade issues and transition banner

fix type issues

add parent stateroot to witness

rebase fixes

rename electra to verkle
Copy link
Contributor

github-actions bot commented Sep 7, 2024

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: aaba73f Previous: b05c93e Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.8955 ms/op 1.8922 ms/op 1.00
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 44.184 us/op 50.311 us/op 0.88
BLS verify - blst 747.27 us/op 910.11 us/op 0.82
BLS verifyMultipleSignatures 3 - blst 1.1524 ms/op 1.2178 ms/op 0.95
BLS verifyMultipleSignatures 8 - blst 1.5848 ms/op 1.9058 ms/op 0.83
BLS verifyMultipleSignatures 32 - blst 4.6622 ms/op 5.4504 ms/op 0.86
BLS verifyMultipleSignatures 64 - blst 8.6721 ms/op 10.784 ms/op 0.80
BLS verifyMultipleSignatures 128 - blst 16.636 ms/op 17.466 ms/op 0.95
BLS deserializing 10000 signatures 663.10 ms/op 682.83 ms/op 0.97
BLS deserializing 100000 signatures 6.5776 s/op 6.8248 s/op 0.96
BLS verifyMultipleSignatures - same message - 3 - blst 868.93 us/op 976.91 us/op 0.89
BLS verifyMultipleSignatures - same message - 8 - blst 950.10 us/op 1.0508 ms/op 0.90
BLS verifyMultipleSignatures - same message - 32 - blst 1.5770 ms/op 1.7194 ms/op 0.92
BLS verifyMultipleSignatures - same message - 64 - blst 2.3806 ms/op 2.6214 ms/op 0.91
BLS verifyMultipleSignatures - same message - 128 - blst 4.1142 ms/op 4.3843 ms/op 0.94
BLS aggregatePubkeys 32 - blst 18.941 us/op 20.089 us/op 0.94
BLS aggregatePubkeys 128 - blst 67.850 us/op 70.620 us/op 0.96
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 58.007 ms/op 66.242 ms/op 0.88
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 45.657 ms/op 65.782 ms/op 0.69
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 30.467 ms/op 40.036 ms/op 0.76
getSlashingsAndExits - default max 84.112 us/op 95.929 us/op 0.88
getSlashingsAndExits - 2k 244.02 us/op 325.96 us/op 0.75
proposeBlockBody type=full, size=empty 5.6013 ms/op 5.8315 ms/op 0.96
isKnown best case - 1 super set check 278.00 ns/op 337.00 ns/op 0.82
isKnown normal case - 2 super set checks 267.00 ns/op 323.00 ns/op 0.83
isKnown worse case - 16 super set checks 267.00 ns/op 308.00 ns/op 0.87
InMemoryCheckpointStateCache - add get delete 2.5350 us/op 3.1530 us/op 0.80
updateUnfinalizedPubkeys - updating 10 pubkeys 684.14 us/op 619.81 us/op 1.10
updateUnfinalizedPubkeys - updating 100 pubkeys 2.4567 ms/op 3.1527 ms/op 0.78
updateUnfinalizedPubkeys - updating 1000 pubkeys 49.575 ms/op 55.751 ms/op 0.89
validate api signedAggregateAndProof - struct 1.3189 ms/op 1.6223 ms/op 0.81
validate gossip signedAggregateAndProof - struct 1.3025 ms/op 2.5773 ms/op 0.51
validate gossip attestation - vc 640000 839.88 us/op 1.1353 ms/op 0.74
batch validate gossip attestation - vc 640000 - chunk 32 121.22 us/op 138.26 us/op 0.88
batch validate gossip attestation - vc 640000 - chunk 64 106.27 us/op 114.88 us/op 0.93
batch validate gossip attestation - vc 640000 - chunk 128 99.254 us/op 107.09 us/op 0.93
batch validate gossip attestation - vc 640000 - chunk 256 95.433 us/op 106.31 us/op 0.90
pickEth1Vote - no votes 990.65 us/op 1.2374 ms/op 0.80
pickEth1Vote - max votes 6.0009 ms/op 8.7804 ms/op 0.68
pickEth1Vote - Eth1Data hashTreeRoot value x2048 14.624 ms/op 13.294 ms/op 1.10
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 19.366 ms/op 19.563 ms/op 0.99
pickEth1Vote - Eth1Data fastSerialize value x2048 442.04 us/op 488.64 us/op 0.90
pickEth1Vote - Eth1Data fastSerialize tree x2048 4.3340 ms/op 2.7160 ms/op 1.60
bytes32 toHexString 409.00 ns/op 475.00 ns/op 0.86
bytes32 Buffer.toString(hex) 230.00 ns/op 264.00 ns/op 0.87
bytes32 Buffer.toString(hex) from Uint8Array 347.00 ns/op 390.00 ns/op 0.89
bytes32 Buffer.toString(hex) + 0x 238.00 ns/op 270.00 ns/op 0.88
Object access 1 prop 0.12800 ns/op 0.16000 ns/op 0.80
Map access 1 prop 0.12000 ns/op 0.15200 ns/op 0.79
Object get x1000 5.5090 ns/op 6.0560 ns/op 0.91
Map get x1000 6.2660 ns/op 6.7270 ns/op 0.93
Object set x1000 30.476 ns/op 35.636 ns/op 0.86
Map set x1000 20.875 ns/op 24.800 ns/op 0.84
Return object 10000 times 0.27340 ns/op 0.29920 ns/op 0.91
Throw Error 10000 times 3.1864 us/op 3.4705 us/op 0.92
toHex 137.13 ns/op 149.65 ns/op 0.92
Buffer.from 129.94 ns/op 139.04 ns/op 0.93
shared Buffer 82.060 ns/op 89.769 ns/op 0.91
fastMsgIdFn sha256 / 200 bytes 2.1860 us/op 2.3200 us/op 0.94
fastMsgIdFn h32 xxhash / 200 bytes 221.00 ns/op 245.00 ns/op 0.90
fastMsgIdFn h64 xxhash / 200 bytes 269.00 ns/op 280.00 ns/op 0.96
fastMsgIdFn sha256 / 1000 bytes 7.2380 us/op 7.8060 us/op 0.93
fastMsgIdFn h32 xxhash / 1000 bytes 347.00 ns/op 383.00 ns/op 0.91
fastMsgIdFn h64 xxhash / 1000 bytes 334.00 ns/op 364.00 ns/op 0.92
fastMsgIdFn sha256 / 10000 bytes 64.384 us/op 66.111 us/op 0.97
fastMsgIdFn h32 xxhash / 10000 bytes 1.7940 us/op 1.9200 us/op 0.93
fastMsgIdFn h64 xxhash / 10000 bytes 1.1600 us/op 1.2590 us/op 0.92
send data - 1000 256B messages 11.487 ms/op 13.248 ms/op 0.87
send data - 1000 512B messages 14.883 ms/op 17.720 ms/op 0.84
send data - 1000 1024B messages 23.994 ms/op 26.656 ms/op 0.90
send data - 1000 1200B messages 24.121 ms/op 23.076 ms/op 1.05
send data - 1000 2048B messages 30.799 ms/op 32.507 ms/op 0.95
send data - 1000 4096B messages 29.629 ms/op 32.327 ms/op 0.92
send data - 1000 16384B messages 68.125 ms/op 75.337 ms/op 0.90
send data - 1000 65536B messages 216.43 ms/op 223.62 ms/op 0.97
enrSubnets - fastDeserialize 64 bits 1.0820 us/op 1.0880 us/op 0.99
enrSubnets - ssz BitVector 64 bits 341.00 ns/op 402.00 ns/op 0.85
enrSubnets - fastDeserialize 4 bits 145.00 ns/op 195.00 ns/op 0.74
enrSubnets - ssz BitVector 4 bits 349.00 ns/op 447.00 ns/op 0.78
prioritizePeers score -10:0 att 32-0.1 sync 2-0 138.47 us/op 175.39 us/op 0.79
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 142.29 us/op 195.94 us/op 0.73
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 243.14 us/op 391.73 us/op 0.62
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 388.60 us/op 481.67 us/op 0.81
prioritizePeers score 0:0 att 64-1 sync 4-1 575.14 us/op 739.55 us/op 0.78
array of 16000 items push then shift 1.5893 us/op 1.6761 us/op 0.95
LinkedList of 16000 items push then shift 6.8120 ns/op 7.8510 ns/op 0.87
array of 16000 items push then pop 114.67 ns/op 140.00 ns/op 0.82
LinkedList of 16000 items push then pop 6.6920 ns/op 7.8060 ns/op 0.86
array of 24000 items push then shift 2.3419 us/op 2.5742 us/op 0.91
LinkedList of 24000 items push then shift 6.7920 ns/op 8.4590 ns/op 0.80
array of 24000 items push then pop 132.13 ns/op 188.23 ns/op 0.70
LinkedList of 24000 items push then pop 6.7160 ns/op 7.6230 ns/op 0.88
intersect bitArray bitLen 8 6.3100 ns/op 6.6780 ns/op 0.94
intersect array and set length 8 44.356 ns/op 54.364 ns/op 0.82
intersect bitArray bitLen 128 29.302 ns/op 31.345 ns/op 0.93
intersect array and set length 128 653.34 ns/op 929.26 ns/op 0.70
bitArray.getTrueBitIndexes() bitLen 128 1.7550 us/op 2.3200 us/op 0.76
bitArray.getTrueBitIndexes() bitLen 248 2.9490 us/op 4.3940 us/op 0.67
bitArray.getTrueBitIndexes() bitLen 512 6.5650 us/op 9.7670 us/op 0.67
Buffer.concat 32 items 899.00 ns/op 1.0730 us/op 0.84
Uint8Array.set 32 items 2.0500 us/op 1.6300 us/op 1.26
Buffer.copy 2.4060 us/op 2.1820 us/op 1.10
Uint8Array.set - with subarray 2.9490 us/op 3.1510 us/op 0.94
Uint8Array.set - without subarray 1.6450 us/op 1.6310 us/op 1.01
getUint32 - dataview 231.00 ns/op 316.00 ns/op 0.73
getUint32 - manual 150.00 ns/op 255.00 ns/op 0.59
Set add up to 64 items then delete first 2.1042 us/op 2.7536 us/op 0.76
OrderedSet add up to 64 items then delete first 3.1626 us/op 4.0716 us/op 0.78
Set add up to 64 items then delete last 2.4278 us/op 2.9983 us/op 0.81
OrderedSet add up to 64 items then delete last 3.5308 us/op 4.7860 us/op 0.74
Set add up to 64 items then delete middle 2.4920 us/op 2.6288 us/op 0.95
OrderedSet add up to 64 items then delete middle 5.0276 us/op 6.3458 us/op 0.79
Set add up to 128 items then delete first 4.9227 us/op 5.9284 us/op 0.83
OrderedSet add up to 128 items then delete first 7.3247 us/op 10.197 us/op 0.72
Set add up to 128 items then delete last 4.9087 us/op 5.8826 us/op 0.83
OrderedSet add up to 128 items then delete last 7.0897 us/op 8.8673 us/op 0.80
Set add up to 128 items then delete middle 4.8118 us/op 5.8234 us/op 0.83
OrderedSet add up to 128 items then delete middle 13.232 us/op 15.080 us/op 0.88
Set add up to 256 items then delete first 9.9725 us/op 10.754 us/op 0.93
OrderedSet add up to 256 items then delete first 15.043 us/op 16.999 us/op 0.88
Set add up to 256 items then delete last 9.6034 us/op 11.025 us/op 0.87
OrderedSet add up to 256 items then delete last 14.300 us/op 16.788 us/op 0.85
Set add up to 256 items then delete middle 9.4578 us/op 10.133 us/op 0.93
OrderedSet add up to 256 items then delete middle 40.267 us/op 43.009 us/op 0.94
transfer serialized Status (84 B) 1.4140 us/op 1.4900 us/op 0.95
copy serialized Status (84 B) 1.1830 us/op 1.2340 us/op 0.96
transfer serialized SignedVoluntaryExit (112 B) 1.5190 us/op 1.5790 us/op 0.96
copy serialized SignedVoluntaryExit (112 B) 1.1640 us/op 1.2630 us/op 0.92
transfer serialized ProposerSlashing (416 B) 1.8200 us/op 2.0960 us/op 0.87
copy serialized ProposerSlashing (416 B) 1.9800 us/op 1.8120 us/op 1.09
transfer serialized Attestation (485 B) 1.9980 us/op 1.9030 us/op 1.05
copy serialized Attestation (485 B) 1.7090 us/op 1.8250 us/op 0.94
transfer serialized AttesterSlashing (33232 B) 2.5210 us/op 2.5030 us/op 1.01
copy serialized AttesterSlashing (33232 B) 5.4570 us/op 5.4330 us/op 1.00
transfer serialized Small SignedBeaconBlock (128000 B) 2.9730 us/op 3.0420 us/op 0.98
copy serialized Small SignedBeaconBlock (128000 B) 15.745 us/op 15.933 us/op 0.99
transfer serialized Avg SignedBeaconBlock (200000 B) 3.4760 us/op 3.4720 us/op 1.00
copy serialized Avg SignedBeaconBlock (200000 B) 22.692 us/op 21.993 us/op 1.03
transfer serialized BlobsSidecar (524380 B) 3.3190 us/op 3.2270 us/op 1.03
copy serialized BlobsSidecar (524380 B) 129.64 us/op 97.114 us/op 1.33
transfer serialized Big SignedBeaconBlock (1000000 B) 2.8720 us/op 3.2000 us/op 0.90
copy serialized Big SignedBeaconBlock (1000000 B) 142.61 us/op 258.56 us/op 0.55
pass gossip attestations to forkchoice per slot 2.7257 ms/op 2.8533 ms/op 0.96
forkChoice updateHead vc 100000 bc 64 eq 0 483.01 us/op 497.46 us/op 0.97
forkChoice updateHead vc 600000 bc 64 eq 0 3.0119 ms/op 3.9550 ms/op 0.76
forkChoice updateHead vc 1000000 bc 64 eq 0 5.0694 ms/op 5.2531 ms/op 0.97
forkChoice updateHead vc 600000 bc 320 eq 0 3.5806 ms/op 3.0745 ms/op 1.16
forkChoice updateHead vc 600000 bc 1200 eq 0 3.0856 ms/op 3.2760 ms/op 0.94
forkChoice updateHead vc 600000 bc 7200 eq 0 3.5816 ms/op 3.7638 ms/op 0.95
forkChoice updateHead vc 600000 bc 64 eq 1000 10.253 ms/op 10.896 ms/op 0.94
forkChoice updateHead vc 600000 bc 64 eq 10000 10.436 ms/op 10.949 ms/op 0.95
forkChoice updateHead vc 600000 bc 64 eq 300000 14.166 ms/op 14.463 ms/op 0.98
computeDeltas 500000 validators 300 proto nodes 3.3976 ms/op 3.7476 ms/op 0.91
computeDeltas 500000 validators 1200 proto nodes 3.4290 ms/op 3.7564 ms/op 0.91
computeDeltas 500000 validators 7200 proto nodes 3.4746 ms/op 3.8664 ms/op 0.90
computeDeltas 750000 validators 300 proto nodes 5.0553 ms/op 5.4558 ms/op 0.93
computeDeltas 750000 validators 1200 proto nodes 5.0302 ms/op 5.4714 ms/op 0.92
computeDeltas 750000 validators 7200 proto nodes 5.1194 ms/op 5.3540 ms/op 0.96
computeDeltas 1400000 validators 300 proto nodes 9.6172 ms/op 10.441 ms/op 0.92
computeDeltas 1400000 validators 1200 proto nodes 9.5321 ms/op 10.633 ms/op 0.90
computeDeltas 1400000 validators 7200 proto nodes 9.4700 ms/op 10.172 ms/op 0.93
computeDeltas 2100000 validators 300 proto nodes 14.262 ms/op 15.100 ms/op 0.94
computeDeltas 2100000 validators 1200 proto nodes 14.203 ms/op 15.241 ms/op 0.93
computeDeltas 2100000 validators 7200 proto nodes 14.165 ms/op 15.623 ms/op 0.91
altair processAttestation - 250000 vs - 7PWei normalcase 1.6384 ms/op 2.1149 ms/op 0.77
altair processAttestation - 250000 vs - 7PWei worstcase 2.4722 ms/op 3.5275 ms/op 0.70
altair processAttestation - setStatus - 1/6 committees join 83.412 us/op 103.77 us/op 0.80
altair processAttestation - setStatus - 1/3 committees join 165.93 us/op 175.70 us/op 0.94
altair processAttestation - setStatus - 1/2 committees join 242.18 us/op 245.06 us/op 0.99
altair processAttestation - setStatus - 2/3 committees join 314.67 us/op 325.33 us/op 0.97
altair processAttestation - setStatus - 4/5 committees join 440.35 us/op 479.87 us/op 0.92
altair processAttestation - setStatus - 100% committees join 542.86 us/op 573.26 us/op 0.95
altair processBlock - 250000 vs - 7PWei normalcase 3.6361 ms/op 4.2532 ms/op 0.85
altair processBlock - 250000 vs - 7PWei normalcase hashState 28.102 ms/op 27.265 ms/op 1.03
altair processBlock - 250000 vs - 7PWei worstcase 33.182 ms/op 41.032 ms/op 0.81
altair processBlock - 250000 vs - 7PWei worstcase hashState 67.630 ms/op 93.696 ms/op 0.72
phase0 processBlock - 250000 vs - 7PWei normalcase 1.7313 ms/op 2.6724 ms/op 0.65
phase0 processBlock - 250000 vs - 7PWei worstcase 19.164 ms/op 25.272 ms/op 0.76
altair processEth1Data - 250000 vs - 7PWei normalcase 276.20 us/op 375.11 us/op 0.74
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 4.9660 us/op 6.8920 us/op 0.72
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 26.964 us/op 37.023 us/op 0.73
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 8.0500 us/op 9.7680 us/op 0.82
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 4.9980 us/op 6.2710 us/op 0.80
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 111.41 us/op 158.84 us/op 0.70
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.1539 ms/op 1.3477 ms/op 0.86
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.6425 ms/op 1.8789 ms/op 0.87
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.5472 ms/op 1.5759 ms/op 0.98
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 3.6199 ms/op 3.5937 ms/op 1.01
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.5972 ms/op 2.4625 ms/op 0.65
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.7473 ms/op 3.4929 ms/op 1.07
Tree 40 250000 create 199.59 ms/op 217.23 ms/op 0.92
Tree 40 250000 get(125000) 143.86 ns/op 153.43 ns/op 0.94
Tree 40 250000 set(125000) 623.33 ns/op 700.02 ns/op 0.89
Tree 40 250000 toArray() 14.857 ms/op 20.130 ms/op 0.74
Tree 40 250000 iterate all - toArray() + loop 15.084 ms/op 20.919 ms/op 0.72
Tree 40 250000 iterate all - get(i) 51.521 ms/op 57.789 ms/op 0.89
Array 250000 create 2.9553 ms/op 3.2383 ms/op 0.91
Array 250000 clone - spread 1.4071 ms/op 1.4802 ms/op 0.95
Array 250000 get(125000) 0.41100 ns/op 0.42100 ns/op 0.98
Array 250000 set(125000) 0.42300 ns/op 0.43100 ns/op 0.98
Array 250000 iterate all - loop 80.289 us/op 82.040 us/op 0.98
phase0 afterProcessEpoch - 250000 vs - 7PWei 90.417 ms/op 94.741 ms/op 0.95
Array.fill - length 1000000 3.4938 ms/op 3.8215 ms/op 0.91
Array push - length 1000000 16.737 ms/op 21.785 ms/op 0.77
Array.get 0.25558 ns/op 0.29227 ns/op 0.87
Uint8Array.get 0.41359 ns/op 0.44766 ns/op 0.92
phase0 beforeProcessEpoch - 250000 vs - 7PWei 16.152 ms/op 17.651 ms/op 0.92
altair processEpoch - mainnet_e81889 311.88 ms/op 359.23 ms/op 0.87
mainnet_e81889 - altair beforeProcessEpoch 17.505 ms/op 18.440 ms/op 0.95
mainnet_e81889 - altair processJustificationAndFinalization 12.262 us/op 17.955 us/op 0.68
mainnet_e81889 - altair processInactivityUpdates 4.9515 ms/op 5.2782 ms/op 0.94
mainnet_e81889 - altair processRewardsAndPenalties 45.232 ms/op 59.699 ms/op 0.76
mainnet_e81889 - altair processRegistryUpdates 1.6410 us/op 3.0090 us/op 0.55
mainnet_e81889 - altair processSlashings 434.00 ns/op 605.00 ns/op 0.72
mainnet_e81889 - altair processEth1DataReset 324.00 ns/op 379.00 ns/op 0.85
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.9182 ms/op 2.6697 ms/op 0.72
mainnet_e81889 - altair processSlashingsReset 2.5930 us/op 2.5420 us/op 1.02
mainnet_e81889 - altair processRandaoMixesReset 4.7850 us/op 3.1160 us/op 1.54
mainnet_e81889 - altair processHistoricalRootsUpdate 541.00 ns/op 832.00 ns/op 0.65
mainnet_e81889 - altair processParticipationFlagUpdates 1.6010 us/op 3.0030 us/op 0.53
mainnet_e81889 - altair processSyncCommitteeUpdates 429.00 ns/op 477.00 ns/op 0.90
mainnet_e81889 - altair afterProcessEpoch 93.251 ms/op 99.297 ms/op 0.94
capella processEpoch - mainnet_e217614 1.2316 s/op 1.2617 s/op 0.98
mainnet_e217614 - capella beforeProcessEpoch 69.742 ms/op 73.985 ms/op 0.94
mainnet_e217614 - capella processJustificationAndFinalization 14.521 us/op 23.602 us/op 0.62
mainnet_e217614 - capella processInactivityUpdates 16.866 ms/op 16.281 ms/op 1.04
mainnet_e217614 - capella processRewardsAndPenalties 226.60 ms/op 280.78 ms/op 0.81
mainnet_e217614 - capella processRegistryUpdates 12.846 us/op 20.223 us/op 0.64
mainnet_e217614 - capella processSlashings 392.00 ns/op 658.00 ns/op 0.60
mainnet_e217614 - capella processEth1DataReset 310.00 ns/op 603.00 ns/op 0.51
mainnet_e217614 - capella processEffectiveBalanceUpdates 12.016 ms/op 12.762 ms/op 0.94
mainnet_e217614 - capella processSlashingsReset 3.2450 us/op 3.1980 us/op 1.01
mainnet_e217614 - capella processRandaoMixesReset 3.8820 us/op 4.3990 us/op 0.88
mainnet_e217614 - capella processHistoricalRootsUpdate 725.00 ns/op 479.00 ns/op 1.51
mainnet_e217614 - capella processParticipationFlagUpdates 1.9650 us/op 3.9390 us/op 0.50
mainnet_e217614 - capella afterProcessEpoch 252.86 ms/op 238.58 ms/op 1.06
phase0 processEpoch - mainnet_e58758 407.33 ms/op 436.80 ms/op 0.93
mainnet_e58758 - phase0 beforeProcessEpoch 72.220 ms/op 83.891 ms/op 0.86
mainnet_e58758 - phase0 processJustificationAndFinalization 17.068 us/op 22.790 us/op 0.75
mainnet_e58758 - phase0 processRewardsAndPenalties 33.520 ms/op 36.336 ms/op 0.92
mainnet_e58758 - phase0 processRegistryUpdates 7.5940 us/op 12.488 us/op 0.61
mainnet_e58758 - phase0 processSlashings 379.00 ns/op 490.00 ns/op 0.77
mainnet_e58758 - phase0 processEth1DataReset 325.00 ns/op 548.00 ns/op 0.59
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.2296 ms/op 2.9223 ms/op 0.42
mainnet_e58758 - phase0 processSlashingsReset 3.1130 us/op 4.1130 us/op 0.76
mainnet_e58758 - phase0 processRandaoMixesReset 4.0650 us/op 5.7890 us/op 0.70
mainnet_e58758 - phase0 processHistoricalRootsUpdate 358.00 ns/op 469.00 ns/op 0.76
mainnet_e58758 - phase0 processParticipationRecordUpdates 3.0550 us/op 4.3250 us/op 0.71
mainnet_e58758 - phase0 afterProcessEpoch 78.200 ms/op 82.402 ms/op 0.95
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.4317 ms/op 1.3079 ms/op 1.09
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.2704 ms/op 2.1866 ms/op 1.04
altair processInactivityUpdates - 250000 normalcase 16.083 ms/op 21.012 ms/op 0.77
altair processInactivityUpdates - 250000 worstcase 13.863 ms/op 21.391 ms/op 0.65
phase0 processRegistryUpdates - 250000 normalcase 5.7350 us/op 6.1370 us/op 0.93
phase0 processRegistryUpdates - 250000 badcase_full_deposits 236.95 us/op 341.00 us/op 0.69
phase0 processRegistryUpdates - 250000 worstcase 0.5 117.45 ms/op 122.16 ms/op 0.96
altair processRewardsAndPenalties - 250000 normalcase 41.871 ms/op 48.660 ms/op 0.86
altair processRewardsAndPenalties - 250000 worstcase 39.973 ms/op 56.556 ms/op 0.71
phase0 getAttestationDeltas - 250000 normalcase 6.8337 ms/op 7.1894 ms/op 0.95
phase0 getAttestationDeltas - 250000 worstcase 6.8327 ms/op 7.0507 ms/op 0.97
phase0 processSlashings - 250000 worstcase 75.518 us/op 120.83 us/op 0.63
altair processSyncCommitteeUpdates - 250000 121.47 ms/op 121.16 ms/op 1.00
BeaconState.hashTreeRoot - No change 252.00 ns/op 258.00 ns/op 0.98
BeaconState.hashTreeRoot - 1 full validator 127.02 us/op 147.99 us/op 0.86
BeaconState.hashTreeRoot - 32 full validator 1.1901 ms/op 1.6052 ms/op 0.74
BeaconState.hashTreeRoot - 512 full validator 11.731 ms/op 13.486 ms/op 0.87
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 143.46 us/op 142.53 us/op 1.01
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 1.7011 ms/op 2.1058 ms/op 0.81
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 25.190 ms/op 29.176 ms/op 0.86
BeaconState.hashTreeRoot - 1 balances 105.61 us/op 133.49 us/op 0.79
BeaconState.hashTreeRoot - 32 balances 1.0048 ms/op 1.1740 ms/op 0.86
BeaconState.hashTreeRoot - 512 balances 9.7076 ms/op 11.658 ms/op 0.83
BeaconState.hashTreeRoot - 250000 balances 178.76 ms/op 190.76 ms/op 0.94
aggregationBits - 2048 els - zipIndexesInBitList 22.713 us/op 23.370 us/op 0.97
byteArrayEquals 32 50.657 ns/op 51.519 ns/op 0.98
Buffer.compare 32 16.546 ns/op 16.419 ns/op 1.01
byteArrayEquals 1024 1.4987 us/op 1.5260 us/op 0.98
Buffer.compare 1024 24.716 ns/op 23.599 ns/op 1.05
byteArrayEquals 16384 23.860 us/op 24.250 us/op 0.98
Buffer.compare 16384 194.92 ns/op 190.85 ns/op 1.02
byteArrayEquals 123687377 179.98 ms/op 183.35 ms/op 0.98
Buffer.compare 123687377 6.0819 ms/op 6.1803 ms/op 0.98
byteArrayEquals 32 - diff last byte 49.627 ns/op 51.871 ns/op 0.96
Buffer.compare 32 - diff last byte 16.298 ns/op 16.811 ns/op 0.97
byteArrayEquals 1024 - diff last byte 1.4954 us/op 1.5570 us/op 0.96
Buffer.compare 1024 - diff last byte 23.901 ns/op 25.262 ns/op 0.95
byteArrayEquals 16384 - diff last byte 23.793 us/op 24.810 us/op 0.96
Buffer.compare 16384 - diff last byte 192.95 ns/op 195.81 ns/op 0.99
byteArrayEquals 123687377 - diff last byte 179.61 ms/op 185.48 ms/op 0.97
Buffer.compare 123687377 - diff last byte 6.0900 ms/op 6.1979 ms/op 0.98
byteArrayEquals 32 - random bytes 4.8980 ns/op 5.0080 ns/op 0.98
Buffer.compare 32 - random bytes 16.278 ns/op 16.699 ns/op 0.97
byteArrayEquals 1024 - random bytes 4.8760 ns/op 5.0240 ns/op 0.97
Buffer.compare 1024 - random bytes 16.317 ns/op 16.664 ns/op 0.98
byteArrayEquals 16384 - random bytes 4.8670 ns/op 5.0120 ns/op 0.97
Buffer.compare 16384 - random bytes 16.256 ns/op 17.000 ns/op 0.96
byteArrayEquals 123687377 - random bytes 6.0400 ns/op 6.3100 ns/op 0.96
Buffer.compare 123687377 - random bytes 17.430 ns/op 17.950 ns/op 0.97
regular array get 100000 times 40.202 us/op 41.309 us/op 0.97
wrappedArray get 100000 times 31.042 us/op 32.121 us/op 0.97
arrayWithProxy get 100000 times 12.445 ms/op 14.838 ms/op 0.84
ssz.Root.equals 43.404 ns/op 44.671 ns/op 0.97
byteArrayEquals 42.852 ns/op 43.937 ns/op 0.98
Buffer.compare 9.8770 ns/op 10.101 ns/op 0.98
shuffle list - 16384 els 5.9793 ms/op 5.9155 ms/op 1.01
shuffle list - 250000 els 86.014 ms/op 87.288 ms/op 0.99
processSlot - 1 slots 13.206 us/op 14.754 us/op 0.90
processSlot - 32 slots 2.8686 ms/op 3.4247 ms/op 0.84
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 37.117 ms/op 42.149 ms/op 0.88
getCommitteeAssignments - req 1 vs - 250000 vc 2.0538 ms/op 2.1085 ms/op 0.97
getCommitteeAssignments - req 100 vs - 250000 vc 3.9457 ms/op 4.0632 ms/op 0.97
getCommitteeAssignments - req 1000 vs - 250000 vc 4.1969 ms/op 4.4299 ms/op 0.95
findModifiedValidators - 10000 modified validators 238.05 ms/op 248.60 ms/op 0.96
findModifiedValidators - 1000 modified validators 165.04 ms/op 173.35 ms/op 0.95
findModifiedValidators - 100 modified validators 141.09 ms/op 157.35 ms/op 0.90
findModifiedValidators - 10 modified validators 131.70 ms/op 163.10 ms/op 0.81
findModifiedValidators - 1 modified validators 135.15 ms/op 157.23 ms/op 0.86
findModifiedValidators - no difference 167.66 ms/op 161.34 ms/op 1.04
compare ViewDUs 2.9429 s/op 3.1548 s/op 0.93
compare each validator Uint8Array 1.3522 s/op 1.8921 s/op 0.71
compare ViewDU to Uint8Array 949.53 ms/op 959.79 ms/op 0.99
migrate state 1000000 validators, 24 modified, 0 new 588.19 ms/op 622.81 ms/op 0.94
migrate state 1000000 validators, 1700 modified, 1000 new 838.67 ms/op 876.93 ms/op 0.96
migrate state 1000000 validators, 3400 modified, 2000 new 1.0257 s/op 1.1290 s/op 0.91
migrate state 1500000 validators, 24 modified, 0 new 608.27 ms/op 634.19 ms/op 0.96
migrate state 1500000 validators, 1700 modified, 1000 new 810.93 ms/op 897.46 ms/op 0.90
migrate state 1500000 validators, 3400 modified, 2000 new 1.0138 s/op 1.1186 s/op 0.91
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.2900 ns/op 4.5300 ns/op 0.95
state getBlockRootAtSlot - 250000 vs - 7PWei 670.24 ns/op 686.92 ns/op 0.98
computeProposers - vc 250000 7.8106 ms/op 8.2807 ms/op 0.94
computeEpochShuffling - vc 250000 86.014 ms/op 92.225 ms/op 0.93
getNextSyncCommittee - vc 250000 121.37 ms/op 129.70 ms/op 0.94
computeSigningRoot for AttestationData 21.761 us/op 20.795 us/op 1.05
hash AttestationData serialized data then Buffer.toString(base64) 1.4842 us/op 1.5428 us/op 0.96
toHexString serialized data 834.69 ns/op 944.59 ns/op 0.88
Buffer.toString(base64) 165.06 ns/op 185.19 ns/op 0.89
nodejs block root to RootHex using toHex 140.34 ns/op 146.32 ns/op 0.96
nodejs block root to RootHex using toRootHex 90.235 ns/op 88.568 ns/op 1.02
browser block root to RootHex using the deprecated toHexString 216.19 ns/op 227.77 ns/op 0.95
browser block root to RootHex using toHex 172.26 ns/op 184.91 ns/op 0.93
browser block root to RootHex using toRootHex 152.26 ns/op 171.18 ns/op 0.89

by benchmarkbot/action

@g11tech g11tech changed the title DONOT MERGE - verkle branch updates feat: placeholder PR for verge Oct 2, 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.

1 participant