-
-
Notifications
You must be signed in to change notification settings - Fork 348
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: add more discovery logs #6996
Conversation
|
Benchmark suite | Current: 9465845 | Previous: 5b0608a | Ratio |
---|---|---|---|
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 | 6.6217 ms/op | 1.9386 ms/op | 3.42 |
Full benchmark results
Benchmark suite | Current: 9465845 | Previous: 5b0608a | Ratio |
---|---|---|---|
getPubkeys - index2pubkey - req 1000 vs - 250000 vc | 2.2608 ms/op | 1.9908 ms/op | 1.14 |
getPubkeys - validatorsArr - req 1000 vs - 250000 vc | 69.349 us/op | 45.498 us/op | 1.52 |
BLS verify - blst | 1.0211 ms/op | 870.18 us/op | 1.17 |
BLS verifyMultipleSignatures 3 - blst | 1.4044 ms/op | 2.2457 ms/op | 0.63 |
BLS verifyMultipleSignatures 8 - blst | 1.9459 ms/op | 2.3781 ms/op | 0.82 |
BLS verifyMultipleSignatures 32 - blst | 5.7669 ms/op | 7.3511 ms/op | 0.78 |
BLS verifyMultipleSignatures 64 - blst | 11.293 ms/op | 10.959 ms/op | 1.03 |
BLS verifyMultipleSignatures 128 - blst | 18.608 ms/op | 16.964 ms/op | 1.10 |
BLS deserializing 10000 signatures | 704.90 ms/op | 673.75 ms/op | 1.05 |
BLS deserializing 100000 signatures | 7.0600 s/op | 6.7177 s/op | 1.05 |
BLS verifyMultipleSignatures - same message - 3 - blst | 1.1518 ms/op | 1.5709 ms/op | 0.73 |
BLS verifyMultipleSignatures - same message - 8 - blst | 1.1819 ms/op | 1.2185 ms/op | 0.97 |
BLS verifyMultipleSignatures - same message - 32 - blst | 1.8342 ms/op | 1.7506 ms/op | 1.05 |
BLS verifyMultipleSignatures - same message - 64 - blst | 2.7463 ms/op | 2.6676 ms/op | 1.03 |
BLS verifyMultipleSignatures - same message - 128 - blst | 4.5634 ms/op | 4.4164 ms/op | 1.03 |
BLS aggregatePubkeys 32 - blst | 20.885 us/op | 20.752 us/op | 1.01 |
BLS aggregatePubkeys 128 - blst | 72.587 us/op | 69.259 us/op | 1.05 |
notSeenSlots=1 numMissedVotes=1 numBadVotes=10 | 79.639 ms/op | 73.381 ms/op | 1.09 |
notSeenSlots=1 numMissedVotes=0 numBadVotes=4 | 60.514 ms/op | 61.061 ms/op | 0.99 |
notSeenSlots=2 numMissedVotes=1 numBadVotes=10 | 39.201 ms/op | 41.833 ms/op | 0.94 |
getSlashingsAndExits - default max | 109.29 us/op | 139.26 us/op | 0.78 |
getSlashingsAndExits - 2k | 309.61 us/op | 285.17 us/op | 1.09 |
proposeBlockBody type=full, size=empty | 5.8291 ms/op | 5.7101 ms/op | 1.02 |
isKnown best case - 1 super set check | 355.00 ns/op | 299.00 ns/op | 1.19 |
isKnown normal case - 2 super set checks | 327.00 ns/op | 287.00 ns/op | 1.14 |
isKnown worse case - 16 super set checks | 315.00 ns/op | 288.00 ns/op | 1.09 |
InMemoryCheckpointStateCache - add get delete | 7.6470 us/op | 5.4560 us/op | 1.40 |
validate api signedAggregateAndProof - struct | 1.6492 ms/op | 2.1875 ms/op | 0.75 |
validate gossip signedAggregateAndProof - struct | 1.6842 ms/op | 2.5909 ms/op | 0.65 |
validate gossip attestation - vc 640000 | 1.1429 ms/op | 1.2242 ms/op | 0.93 |
batch validate gossip attestation - vc 640000 - chunk 32 | 147.64 us/op | 132.48 us/op | 1.11 |
batch validate gossip attestation - vc 640000 - chunk 64 | 128.45 us/op | 113.71 us/op | 1.13 |
batch validate gossip attestation - vc 640000 - chunk 128 | 126.24 us/op | 105.04 us/op | 1.20 |
batch validate gossip attestation - vc 640000 - chunk 256 | 120.48 us/op | 104.81 us/op | 1.15 |
pickEth1Vote - no votes | 1.1070 ms/op | 1.0324 ms/op | 1.07 |
pickEth1Vote - max votes | 8.8126 ms/op | 8.3210 ms/op | 1.06 |
pickEth1Vote - Eth1Data hashTreeRoot value x2048 | 13.418 ms/op | 11.878 ms/op | 1.13 |
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 | 20.808 ms/op | 19.958 ms/op | 1.04 |
pickEth1Vote - Eth1Data fastSerialize value x2048 | 537.24 us/op | 459.17 us/op | 1.17 |
pickEth1Vote - Eth1Data fastSerialize tree x2048 | 4.3061 ms/op | 6.2944 ms/op | 0.68 |
bytes32 toHexString | 458.00 ns/op | 425.00 ns/op | 1.08 |
bytes32 Buffer.toString(hex) | 271.00 ns/op | 248.00 ns/op | 1.09 |
bytes32 Buffer.toString(hex) from Uint8Array | 395.00 ns/op | 369.00 ns/op | 1.07 |
bytes32 Buffer.toString(hex) + 0x | 278.00 ns/op | 259.00 ns/op | 1.07 |
Object access 1 prop | 0.20200 ns/op | 0.13100 ns/op | 1.54 |
Map access 1 prop | 0.14200 ns/op | 0.12400 ns/op | 1.15 |
Object get x1000 | 6.0410 ns/op | 5.7170 ns/op | 1.06 |
Map get x1000 | 6.8260 ns/op | 6.2670 ns/op | 1.09 |
Object set x1000 | 40.326 ns/op | 34.240 ns/op | 1.18 |
Map set x1000 | 27.011 ns/op | 22.007 ns/op | 1.23 |
Return object 10000 times | 0.31270 ns/op | 0.28030 ns/op | 1.12 |
Throw Error 10000 times | 3.6599 us/op | 3.3067 us/op | 1.11 |
fastMsgIdFn sha256 / 200 bytes | 2.3510 us/op | 2.1650 us/op | 1.09 |
fastMsgIdFn h32 xxhash / 200 bytes | 280.00 ns/op | 241.00 ns/op | 1.16 |
fastMsgIdFn h64 xxhash / 200 bytes | 294.00 ns/op | 263.00 ns/op | 1.12 |
fastMsgIdFn sha256 / 1000 bytes | 7.4840 us/op | 7.3080 us/op | 1.02 |
fastMsgIdFn h32 xxhash / 1000 bytes | 403.00 ns/op | 358.00 ns/op | 1.13 |
fastMsgIdFn h64 xxhash / 1000 bytes | 351.00 ns/op | 335.00 ns/op | 1.05 |
fastMsgIdFn sha256 / 10000 bytes | 64.514 us/op | 63.125 us/op | 1.02 |
fastMsgIdFn h32 xxhash / 10000 bytes | 1.9450 us/op | 1.8460 us/op | 1.05 |
fastMsgIdFn h64 xxhash / 10000 bytes | 1.2750 us/op | 1.2150 us/op | 1.05 |
send data - 1000 256B messages | 12.111 ms/op | 12.276 ms/op | 0.99 |
send data - 1000 512B messages | 19.018 ms/op | 16.031 ms/op | 1.19 |
send data - 1000 1024B messages | 26.887 ms/op | 25.361 ms/op | 1.06 |
send data - 1000 1200B messages | 31.069 ms/op | 26.242 ms/op | 1.18 |
send data - 1000 2048B messages | 32.759 ms/op | 31.726 ms/op | 1.03 |
send data - 1000 4096B messages | 34.951 ms/op | 29.448 ms/op | 1.19 |
send data - 1000 16384B messages | 73.138 ms/op | 72.170 ms/op | 1.01 |
send data - 1000 65536B messages | 237.71 ms/op | 201.79 ms/op | 1.18 |
enrSubnets - fastDeserialize 64 bits | 1.1340 us/op | 1.0530 us/op | 1.08 |
enrSubnets - ssz BitVector 64 bits | 373.00 ns/op | 349.00 ns/op | 1.07 |
enrSubnets - fastDeserialize 4 bits | 186.00 ns/op | 151.00 ns/op | 1.23 |
enrSubnets - ssz BitVector 4 bits | 396.00 ns/op | 344.00 ns/op | 1.15 |
prioritizePeers score -10:0 att 32-0.1 sync 2-0 | 182.74 us/op | 134.38 us/op | 1.36 |
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 | 199.87 us/op | 139.40 us/op | 1.43 |
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 | 323.49 us/op | 232.29 us/op | 1.39 |
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 | 518.45 us/op | 468.47 us/op | 1.11 |
prioritizePeers score 0:0 att 64-1 sync 4-1 | 965.52 us/op | 762.74 us/op | 1.27 |
array of 16000 items push then shift | 1.6954 us/op | 1.6242 us/op | 1.04 |
LinkedList of 16000 items push then shift | 7.8390 ns/op | 7.4910 ns/op | 1.05 |
array of 16000 items push then pop | 142.22 ns/op | 128.91 ns/op | 1.10 |
LinkedList of 16000 items push then pop | 7.6000 ns/op | 7.0020 ns/op | 1.09 |
array of 24000 items push then shift | 2.4887 us/op | 2.4185 us/op | 1.03 |
LinkedList of 24000 items push then shift | 8.0360 ns/op | 7.4280 ns/op | 1.08 |
array of 24000 items push then pop | 188.20 ns/op | 179.09 ns/op | 1.05 |
LinkedList of 24000 items push then pop | 7.5040 ns/op | 7.5090 ns/op | 1.00 |
intersect bitArray bitLen 8 | 6.5430 ns/op | 6.4290 ns/op | 1.02 |
intersect array and set length 8 | 52.035 ns/op | 48.787 ns/op | 1.07 |
intersect bitArray bitLen 128 | 30.197 ns/op | 29.637 ns/op | 1.02 |
intersect array and set length 128 | 798.43 ns/op | 676.55 ns/op | 1.18 |
bitArray.getTrueBitIndexes() bitLen 128 | 2.5870 us/op | 2.3410 us/op | 1.11 |
bitArray.getTrueBitIndexes() bitLen 248 | 3.6410 us/op | 4.0430 us/op | 0.90 |
bitArray.getTrueBitIndexes() bitLen 512 | 8.2030 us/op | 8.5200 us/op | 0.96 |
Buffer.concat 32 items | 963.00 ns/op | 949.00 ns/op | 1.01 |
Uint8Array.set 32 items | 1.4680 us/op | 1.5060 us/op | 0.97 |
Buffer.copy | 1.7930 us/op | 1.6520 us/op | 1.09 |
Uint8Array.set - with subarray | 3.1190 us/op | 2.7590 us/op | 1.13 |
Uint8Array.set - without subarray | 2.0620 us/op | 1.4130 us/op | 1.46 |
getUint32 - dataview | 322.00 ns/op | 240.00 ns/op | 1.34 |
getUint32 - manual | 243.00 ns/op | 181.00 ns/op | 1.34 |
Set add up to 64 items then delete first | 2.9142 us/op | 2.2543 us/op | 1.29 |
OrderedSet add up to 64 items then delete first | 4.4575 us/op | 3.3841 us/op | 1.32 |
Set add up to 64 items then delete last | 3.3863 us/op | 2.6200 us/op | 1.29 |
OrderedSet add up to 64 items then delete last | 5.0446 us/op | 3.7766 us/op | 1.34 |
Set add up to 64 items then delete middle | 3.4866 us/op | 2.5620 us/op | 1.36 |
OrderedSet add up to 64 items then delete middle | 7.1979 us/op | 5.3850 us/op | 1.34 |
Set add up to 128 items then delete first | 7.0392 us/op | 5.2503 us/op | 1.34 |
OrderedSet add up to 128 items then delete first | 11.330 us/op | 8.1461 us/op | 1.39 |
Set add up to 128 items then delete last | 7.6532 us/op | 5.0593 us/op | 1.51 |
OrderedSet add up to 128 items then delete last | 10.989 us/op | 7.5365 us/op | 1.46 |
Set add up to 128 items then delete middle | 7.8620 us/op | 4.9892 us/op | 1.58 |
OrderedSet add up to 128 items then delete middle | 18.618 us/op | 14.257 us/op | 1.31 |
Set add up to 256 items then delete first | 14.298 us/op | 10.695 us/op | 1.34 |
OrderedSet add up to 256 items then delete first | 24.034 us/op | 16.689 us/op | 1.44 |
Set add up to 256 items then delete last | 13.804 us/op | 9.8609 us/op | 1.40 |
OrderedSet add up to 256 items then delete last | 22.025 us/op | 14.919 us/op | 1.48 |
Set add up to 256 items then delete middle | 14.465 us/op | 9.9135 us/op | 1.46 |
OrderedSet add up to 256 items then delete middle | 55.442 us/op | 41.674 us/op | 1.33 |
transfer serialized Status (84 B) | 1.7120 us/op | 1.3550 us/op | 1.26 |
copy serialized Status (84 B) | 1.3520 us/op | 1.0900 us/op | 1.24 |
transfer serialized SignedVoluntaryExit (112 B) | 1.7950 us/op | 1.4380 us/op | 1.25 |
copy serialized SignedVoluntaryExit (112 B) | 1.4380 us/op | 1.1450 us/op | 1.26 |
transfer serialized ProposerSlashing (416 B) | 2.3900 us/op | 1.5880 us/op | 1.51 |
copy serialized ProposerSlashing (416 B) | 2.2070 us/op | 1.6950 us/op | 1.30 |
transfer serialized Attestation (485 B) | 2.6210 us/op | 2.2330 us/op | 1.17 |
copy serialized Attestation (485 B) | 2.7950 us/op | 1.7460 us/op | 1.60 |
transfer serialized AttesterSlashing (33232 B) | 2.9520 us/op | 2.2280 us/op | 1.32 |
copy serialized AttesterSlashing (33232 B) | 10.148 us/op | 5.2690 us/op | 1.93 |
transfer serialized Small SignedBeaconBlock (128000 B) | 4.1470 us/op | 3.1030 us/op | 1.34 |
copy serialized Small SignedBeaconBlock (128000 B) | 28.923 us/op | 15.270 us/op | 1.89 |
transfer serialized Avg SignedBeaconBlock (200000 B) | 5.2670 us/op | 3.3540 us/op | 1.57 |
copy serialized Avg SignedBeaconBlock (200000 B) | 48.943 us/op | 22.001 us/op | 2.22 |
transfer serialized BlobsSidecar (524380 B) | 7.6010 us/op | 2.8290 us/op | 2.69 |
copy serialized BlobsSidecar (524380 B) | 156.02 us/op | 90.133 us/op | 1.73 |
transfer serialized Big SignedBeaconBlock (1000000 B) | 6.7560 us/op | 2.8710 us/op | 2.35 |
copy serialized Big SignedBeaconBlock (1000000 B) | 304.51 us/op | 376.03 us/op | 0.81 |
pass gossip attestations to forkchoice per slot | 3.6736 ms/op | 3.3436 ms/op | 1.10 |
forkChoice updateHead vc 100000 bc 64 eq 0 | 930.66 us/op | 494.57 us/op | 1.88 |
forkChoice updateHead vc 600000 bc 64 eq 0 | 5.5580 ms/op | 3.0304 ms/op | 1.83 |
forkChoice updateHead vc 1000000 bc 64 eq 0 | 8.8510 ms/op | 5.3565 ms/op | 1.65 |
forkChoice updateHead vc 600000 bc 320 eq 0 | 3.7948 ms/op | 3.4150 ms/op | 1.11 |
forkChoice updateHead vc 600000 bc 1200 eq 0 | 4.1464 ms/op | 3.1414 ms/op | 1.32 |
forkChoice updateHead vc 600000 bc 7200 eq 0 | 4.8867 ms/op | 3.5256 ms/op | 1.39 |
forkChoice updateHead vc 600000 bc 64 eq 1000 | 12.568 ms/op | 10.540 ms/op | 1.19 |
forkChoice updateHead vc 600000 bc 64 eq 10000 | 14.241 ms/op | 10.678 ms/op | 1.33 |
forkChoice updateHead vc 600000 bc 64 eq 300000 | 35.938 ms/op | 14.266 ms/op | 2.52 |
computeDeltas 500000 validators 300 proto nodes | 4.7784 ms/op | 3.4381 ms/op | 1.39 |
computeDeltas 500000 validators 1200 proto nodes | 4.6345 ms/op | 3.4910 ms/op | 1.33 |
computeDeltas 500000 validators 7200 proto nodes | 5.5410 ms/op | 3.5210 ms/op | 1.57 |
computeDeltas 750000 validators 300 proto nodes | 6.4769 ms/op | 5.3521 ms/op | 1.21 |
computeDeltas 750000 validators 1200 proto nodes | 6.0118 ms/op | 5.2243 ms/op | 1.15 |
computeDeltas 750000 validators 7200 proto nodes | 5.8835 ms/op | 5.2320 ms/op | 1.12 |
computeDeltas 1400000 validators 300 proto nodes | 10.721 ms/op | 9.9644 ms/op | 1.08 |
computeDeltas 1400000 validators 1200 proto nodes | 11.171 ms/op | 10.234 ms/op | 1.09 |
computeDeltas 1400000 validators 7200 proto nodes | 11.067 ms/op | 9.9247 ms/op | 1.12 |
computeDeltas 2100000 validators 300 proto nodes | 16.667 ms/op | 14.796 ms/op | 1.13 |
computeDeltas 2100000 validators 1200 proto nodes | 16.786 ms/op | 14.925 ms/op | 1.12 |
computeDeltas 2100000 validators 7200 proto nodes | 15.482 ms/op | 15.038 ms/op | 1.03 |
altair processAttestation - 250000 vs - 7PWei normalcase | 1.9812 ms/op | 1.6529 ms/op | 1.20 |
altair processAttestation - 250000 vs - 7PWei worstcase | 2.6038 ms/op | 2.4641 ms/op | 1.06 |
altair processAttestation - setStatus - 1/6 committees join | 93.148 us/op | 85.695 us/op | 1.09 |
altair processAttestation - setStatus - 1/3 committees join | 193.53 us/op | 175.94 us/op | 1.10 |
altair processAttestation - setStatus - 1/2 committees join | 280.81 us/op | 246.12 us/op | 1.14 |
altair processAttestation - setStatus - 2/3 committees join | 344.37 us/op | 322.23 us/op | 1.07 |
altair processAttestation - setStatus - 4/5 committees join | 515.83 us/op | 463.21 us/op | 1.11 |
altair processAttestation - setStatus - 100% committees join | 611.98 us/op | 553.65 us/op | 1.11 |
altair processBlock - 250000 vs - 7PWei normalcase | 4.4428 ms/op | 5.8809 ms/op | 0.76 |
altair processBlock - 250000 vs - 7PWei normalcase hashState | 25.536 ms/op | 27.415 ms/op | 0.93 |
altair processBlock - 250000 vs - 7PWei worstcase | 37.501 ms/op | 41.616 ms/op | 0.90 |
altair processBlock - 250000 vs - 7PWei worstcase hashState | 73.734 ms/op | 79.494 ms/op | 0.93 |
phase0 processBlock - 250000 vs - 7PWei normalcase | 2.6156 ms/op | 2.4316 ms/op | 1.08 |
phase0 processBlock - 250000 vs - 7PWei worstcase | 26.199 ms/op | 27.611 ms/op | 0.95 |
altair processEth1Data - 250000 vs - 7PWei normalcase | 314.66 us/op | 320.18 us/op | 0.98 |
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 | 6.5000 us/op | 5.6910 us/op | 1.14 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 | 30.492 us/op | 29.398 us/op | 1.04 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 | 10.537 us/op | 8.5860 us/op | 1.23 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 | 8.3470 us/op | 7.0830 us/op | 1.18 |
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 | 127.03 us/op | 100.87 us/op | 1.26 |
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 | 907.12 us/op | 1.0228 ms/op | 0.89 |
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 | 1.8104 ms/op | 1.6368 ms/op | 1.11 |
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 | 1.3963 ms/op | 1.6454 ms/op | 0.85 |
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 | 2.5611 ms/op | 2.4681 ms/op | 1.04 |
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 | 2.4334 ms/op | 1.7613 ms/op | 1.38 |
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 | 3.9504 ms/op | 3.8018 ms/op | 1.04 |
Tree 40 250000 create | 230.47 ms/op | 228.09 ms/op | 1.01 |
Tree 40 250000 get(125000) | 153.18 ns/op | 142.38 ns/op | 1.08 |
Tree 40 250000 set(125000) | 736.13 ns/op | 627.34 ns/op | 1.17 |
Tree 40 250000 toArray() | 20.984 ms/op | 14.998 ms/op | 1.40 |
Tree 40 250000 iterate all - toArray() + loop | 21.087 ms/op | 15.945 ms/op | 1.32 |
Tree 40 250000 iterate all - get(i) | 58.337 ms/op | 49.983 ms/op | 1.17 |
MutableVector 250000 create | 9.4864 ms/op | 11.064 ms/op | 0.86 |
MutableVector 250000 get(125000) | 6.4240 ns/op | 6.3740 ns/op | 1.01 |
MutableVector 250000 set(125000) | 211.51 ns/op | 217.13 ns/op | 0.97 |
MutableVector 250000 toArray() | 3.6143 ms/op | 3.5427 ms/op | 1.02 |
MutableVector 250000 iterate all - toArray() + loop | 3.6888 ms/op | 3.4951 ms/op | 1.06 |
MutableVector 250000 iterate all - get(i) | 1.6583 ms/op | 1.6985 ms/op | 0.98 |
Array 250000 create | 3.2883 ms/op | 2.8887 ms/op | 1.14 |
Array 250000 clone - spread | 1.4777 ms/op | 1.3743 ms/op | 1.08 |
Array 250000 get(125000) | 0.40300 ns/op | 0.40900 ns/op | 0.99 |
Array 250000 set(125000) | 0.43100 ns/op | 0.42800 ns/op | 1.01 |
Array 250000 iterate all - loop | 98.931 us/op | 89.651 us/op | 1.10 |
effectiveBalanceIncrements clone Uint8Array 300000 | 60.156 us/op | 26.515 us/op | 2.27 |
effectiveBalanceIncrements clone MutableVector 300000 | 138.00 ns/op | 123.00 ns/op | 1.12 |
effectiveBalanceIncrements rw all Uint8Array 300000 | 220.16 us/op | 196.84 us/op | 1.12 |
effectiveBalanceIncrements rw all MutableVector 300000 | 179.90 ms/op | 62.722 ms/op | 2.87 |
phase0 afterProcessEpoch - 250000 vs - 7PWei | 91.102 ms/op | 87.177 ms/op | 1.05 |
Array.fill - length 1000000 | 3.6910 ms/op | 3.4441 ms/op | 1.07 |
Array push - length 1000000 | 27.914 ms/op | 18.367 ms/op | 1.52 |
Array.get | 0.31088 ns/op | 0.28066 ns/op | 1.11 |
Uint8Array.get | 0.48642 ns/op | 0.43959 ns/op | 1.11 |
phase0 beforeProcessEpoch - 250000 vs - 7PWei | 20.655 ms/op | 15.168 ms/op | 1.36 |
altair processEpoch - mainnet_e81889 | 500.07 ms/op | 346.10 ms/op | 1.44 |
mainnet_e81889 - altair beforeProcessEpoch | 25.720 ms/op | 17.265 ms/op | 1.49 |
mainnet_e81889 - altair processJustificationAndFinalization | 25.995 us/op | 11.454 us/op | 2.27 |
mainnet_e81889 - altair processInactivityUpdates | 8.3916 ms/op | 5.0866 ms/op | 1.65 |
mainnet_e81889 - altair processRewardsAndPenalties | 62.551 ms/op | 60.912 ms/op | 1.03 |
mainnet_e81889 - altair processRegistryUpdates | 5.1530 us/op | 3.2180 us/op | 1.60 |
mainnet_e81889 - altair processSlashings | 1.1470 us/op | 585.00 ns/op | 1.96 |
mainnet_e81889 - altair processEth1DataReset | 1.0300 us/op | 480.00 ns/op | 2.15 |
mainnet_e81889 - altair processEffectiveBalanceUpdates | 2.0542 ms/op | 3.1764 ms/op | 0.65 |
mainnet_e81889 - altair processSlashingsReset | 7.3630 us/op | 4.3570 us/op | 1.69 |
mainnet_e81889 - altair processRandaoMixesReset | 13.888 us/op | 5.4290 us/op | 2.56 |
mainnet_e81889 - altair processHistoricalRootsUpdate | 1.6020 us/op | 492.00 ns/op | 3.26 |
mainnet_e81889 - altair processParticipationFlagUpdates | 5.7680 us/op | 2.9420 us/op | 1.96 |
mainnet_e81889 - altair processSyncCommitteeUpdates | 1.2920 us/op | 748.00 ns/op | 1.73 |
mainnet_e81889 - altair afterProcessEpoch | 123.61 ms/op | 89.415 ms/op | 1.38 |
capella processEpoch - mainnet_e217614 | 1.9264 s/op | 1.3418 s/op | 1.44 |
mainnet_e217614 - capella beforeProcessEpoch | 113.07 ms/op | 68.482 ms/op | 1.65 |
mainnet_e217614 - capella processJustificationAndFinalization | 34.350 us/op | 25.147 us/op | 1.37 |
mainnet_e217614 - capella processInactivityUpdates | 27.000 ms/op | 16.988 ms/op | 1.59 |
mainnet_e217614 - capella processRewardsAndPenalties | 343.62 ms/op | 275.70 ms/op | 1.25 |
mainnet_e217614 - capella processRegistryUpdates | 27.140 us/op | 19.349 us/op | 1.40 |
mainnet_e217614 - capella processSlashings | 1.1020 us/op | 734.00 ns/op | 1.50 |
mainnet_e217614 - capella processEth1DataReset | 1.0240 us/op | 461.00 ns/op | 2.22 |
mainnet_e217614 - capella processEffectiveBalanceUpdates | 17.720 ms/op | 11.053 ms/op | 1.60 |
mainnet_e217614 - capella processSlashingsReset | 7.5090 us/op | 3.6140 us/op | 2.08 |
mainnet_e217614 - capella processRandaoMixesReset | 11.069 us/op | 6.0020 us/op | 1.84 |
mainnet_e217614 - capella processHistoricalRootsUpdate | 1.1800 us/op | 500.00 ns/op | 2.36 |
mainnet_e217614 - capella processParticipationFlagUpdates | 6.6270 us/op | 2.0120 us/op | 3.29 |
mainnet_e217614 - capella afterProcessEpoch | 354.62 ms/op | 261.22 ms/op | 1.36 |
phase0 processEpoch - mainnet_e58758 | 559.79 ms/op | 449.91 ms/op | 1.24 |
mainnet_e58758 - phase0 beforeProcessEpoch | 136.98 ms/op | 88.564 ms/op | 1.55 |
mainnet_e58758 - phase0 processJustificationAndFinalization | 37.596 us/op | 20.950 us/op | 1.79 |
mainnet_e58758 - phase0 processRewardsAndPenalties | 45.339 ms/op | 45.873 ms/op | 0.99 |
mainnet_e58758 - phase0 processRegistryUpdates | 18.959 us/op | 10.962 us/op | 1.73 |
mainnet_e58758 - phase0 processSlashings | 1.1400 us/op | 611.00 ns/op | 1.87 |
mainnet_e58758 - phase0 processEth1DataReset | 955.00 ns/op | 460.00 ns/op | 2.08 |
mainnet_e58758 - phase0 processEffectiveBalanceUpdates | 2.8069 ms/op | 1.7084 ms/op | 1.64 |
mainnet_e58758 - phase0 processSlashingsReset | 9.5880 us/op | 4.7710 us/op | 2.01 |
mainnet_e58758 - phase0 processRandaoMixesReset | 12.055 us/op | 6.1130 us/op | 1.97 |
mainnet_e58758 - phase0 processHistoricalRootsUpdate | 1.1510 us/op | 562.00 ns/op | 2.05 |
mainnet_e58758 - phase0 processParticipationRecordUpdates | 9.9640 us/op | 4.9110 us/op | 2.03 |
mainnet_e58758 - phase0 afterProcessEpoch | 139.71 ms/op | 77.313 ms/op | 1.81 |
phase0 processEffectiveBalanceUpdates - 250000 normalcase | 2.0941 ms/op | 994.44 us/op | 2.11 |
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 | 6.6217 ms/op | 1.9386 ms/op | 3.42 |
altair processInactivityUpdates - 250000 normalcase | 27.179 ms/op | 23.435 ms/op | 1.16 |
altair processInactivityUpdates - 250000 worstcase | 26.317 ms/op | 24.803 ms/op | 1.06 |
phase0 processRegistryUpdates - 250000 normalcase | 15.052 us/op | 10.585 us/op | 1.42 |
phase0 processRegistryUpdates - 250000 badcase_full_deposits | 482.75 us/op | 461.74 us/op | 1.05 |
phase0 processRegistryUpdates - 250000 worstcase 0.5 | 218.04 ms/op | 134.55 ms/op | 1.62 |
altair processRewardsAndPenalties - 250000 normalcase | 71.495 ms/op | 53.374 ms/op | 1.34 |
altair processRewardsAndPenalties - 250000 worstcase | 61.429 ms/op | 44.955 ms/op | 1.37 |
phase0 getAttestationDeltas - 250000 normalcase | 14.839 ms/op | 8.3305 ms/op | 1.78 |
phase0 getAttestationDeltas - 250000 worstcase | 10.670 ms/op | 7.9066 ms/op | 1.35 |
phase0 processSlashings - 250000 worstcase | 152.41 us/op | 119.41 us/op | 1.28 |
altair processSyncCommitteeUpdates - 250000 | 177.78 ms/op | 119.07 ms/op | 1.49 |
BeaconState.hashTreeRoot - No change | 571.00 ns/op | 281.00 ns/op | 2.03 |
BeaconState.hashTreeRoot - 1 full validator | 154.21 us/op | 110.25 us/op | 1.40 |
BeaconState.hashTreeRoot - 32 full validator | 1.8004 ms/op | 1.2451 ms/op | 1.45 |
BeaconState.hashTreeRoot - 512 full validator | 22.927 ms/op | 12.362 ms/op | 1.85 |
BeaconState.hashTreeRoot - 1 validator.effectiveBalance | 212.81 us/op | 159.99 us/op | 1.33 |
BeaconState.hashTreeRoot - 32 validator.effectiveBalance | 2.4317 ms/op | 2.0705 ms/op | 1.17 |
BeaconState.hashTreeRoot - 512 validator.effectiveBalance | 43.736 ms/op | 26.715 ms/op | 1.64 |
BeaconState.hashTreeRoot - 1 balances | 185.73 us/op | 117.40 us/op | 1.58 |
BeaconState.hashTreeRoot - 32 balances | 1.5181 ms/op | 1.0930 ms/op | 1.39 |
BeaconState.hashTreeRoot - 512 balances | 13.366 ms/op | 11.584 ms/op | 1.15 |
BeaconState.hashTreeRoot - 250000 balances | 258.98 ms/op | 174.55 ms/op | 1.48 |
aggregationBits - 2048 els - zipIndexesInBitList | 65.578 us/op | 26.496 us/op | 2.48 |
byteArrayEquals 32 | 63.805 ns/op | 53.886 ns/op | 1.18 |
Buffer.compare 32 | 20.673 ns/op | 17.442 ns/op | 1.19 |
byteArrayEquals 1024 | 1.9135 us/op | 1.5889 us/op | 1.20 |
Buffer.compare 1024 | 32.493 ns/op | 24.859 ns/op | 1.31 |
byteArrayEquals 16384 | 28.541 us/op | 25.791 us/op | 1.11 |
Buffer.compare 16384 | 225.70 ns/op | 194.21 ns/op | 1.16 |
byteArrayEquals 123687377 | 209.95 ms/op | 193.89 ms/op | 1.08 |
Buffer.compare 123687377 | 8.7010 ms/op | 7.4678 ms/op | 1.17 |
byteArrayEquals 32 - diff last byte | 57.554 ns/op | 52.580 ns/op | 1.09 |
Buffer.compare 32 - diff last byte | 17.810 ns/op | 17.305 ns/op | 1.03 |
byteArrayEquals 1024 - diff last byte | 1.6350 us/op | 1.5817 us/op | 1.03 |
Buffer.compare 1024 - diff last byte | 26.304 ns/op | 28.389 ns/op | 0.93 |
byteArrayEquals 16384 - diff last byte | 25.416 us/op | 25.572 us/op | 0.99 |
Buffer.compare 16384 - diff last byte | 200.85 ns/op | 195.42 ns/op | 1.03 |
byteArrayEquals 123687377 - diff last byte | 196.08 ms/op | 190.97 ms/op | 1.03 |
Buffer.compare 123687377 - diff last byte | 6.9985 ms/op | 7.6044 ms/op | 0.92 |
byteArrayEquals 32 - random bytes | 5.1360 ns/op | 5.2530 ns/op | 0.98 |
Buffer.compare 32 - random bytes | 17.490 ns/op | 17.274 ns/op | 1.01 |
byteArrayEquals 1024 - random bytes | 5.1660 ns/op | 5.3000 ns/op | 0.97 |
Buffer.compare 1024 - random bytes | 17.481 ns/op | 17.402 ns/op | 1.00 |
byteArrayEquals 16384 - random bytes | 5.3380 ns/op | 5.2650 ns/op | 1.01 |
Buffer.compare 16384 - random bytes | 17.494 ns/op | 17.348 ns/op | 1.01 |
byteArrayEquals 123687377 - random bytes | 6.5100 ns/op | 7.2600 ns/op | 0.90 |
Buffer.compare 123687377 - random bytes | 19.190 ns/op | 20.240 ns/op | 0.95 |
regular array get 100000 times | 33.216 us/op | 38.469 us/op | 0.86 |
wrappedArray get 100000 times | 33.327 us/op | 34.085 us/op | 0.98 |
arrayWithProxy get 100000 times | 13.898 ms/op | 14.605 ms/op | 0.95 |
ssz.Root.equals | 46.422 ns/op | 47.005 ns/op | 0.99 |
byteArrayEquals | 46.026 ns/op | 46.756 ns/op | 0.98 |
Buffer.compare | 10.565 ns/op | 10.767 ns/op | 0.98 |
shuffle list - 16384 els | 6.5522 ms/op | 6.8002 ms/op | 0.96 |
shuffle list - 250000 els | 93.867 ms/op | 98.404 ms/op | 0.95 |
processSlot - 1 slots | 15.139 us/op | 15.780 us/op | 0.96 |
processSlot - 32 slots | 2.8415 ms/op | 3.2069 ms/op | 0.89 |
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei | 43.049 ms/op | 40.630 ms/op | 1.06 |
getCommitteeAssignments - req 1 vs - 250000 vc | 2.1706 ms/op | 2.1849 ms/op | 0.99 |
getCommitteeAssignments - req 100 vs - 250000 vc | 4.1774 ms/op | 4.2057 ms/op | 0.99 |
getCommitteeAssignments - req 1000 vs - 250000 vc | 4.4945 ms/op | 4.5374 ms/op | 0.99 |
findModifiedValidators - 10000 modified validators | 260.17 ms/op | 284.26 ms/op | 0.92 |
findModifiedValidators - 1000 modified validators | 182.02 ms/op | 168.77 ms/op | 1.08 |
findModifiedValidators - 100 modified validators | 148.95 ms/op | 161.82 ms/op | 0.92 |
findModifiedValidators - 10 modified validators | 153.81 ms/op | 140.89 ms/op | 1.09 |
findModifiedValidators - 1 modified validators | 154.88 ms/op | 164.25 ms/op | 0.94 |
findModifiedValidators - no difference | 180.16 ms/op | 159.79 ms/op | 1.13 |
compare ViewDUs | 3.6560 s/op | 3.3003 s/op | 1.11 |
compare each validator Uint8Array | 1.5138 s/op | 1.2210 s/op | 1.24 |
compare ViewDU to Uint8Array | 1.3798 s/op | 1.2418 s/op | 1.11 |
migrate state 1000000 validators, 24 modified, 0 new | 714.21 ms/op | 719.62 ms/op | 0.99 |
migrate state 1000000 validators, 1700 modified, 1000 new | 998.95 ms/op | 1.4369 s/op | 0.70 |
migrate state 1000000 validators, 3400 modified, 2000 new | 1.1076 s/op | 1.8521 s/op | 0.60 |
migrate state 1500000 validators, 24 modified, 0 new | 672.75 ms/op | 836.43 ms/op | 0.80 |
migrate state 1500000 validators, 1700 modified, 1000 new | 907.80 ms/op | 1.2643 s/op | 0.72 |
migrate state 1500000 validators, 3400 modified, 2000 new | 1.1695 s/op | 1.7341 s/op | 0.67 |
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei | 5.6300 ns/op | 6.3900 ns/op | 0.88 |
state getBlockRootAtSlot - 250000 vs - 7PWei | 634.51 ns/op | 1.2330 us/op | 0.51 |
computeProposers - vc 250000 | 7.2851 ms/op | 13.227 ms/op | 0.55 |
computeEpochShuffling - vc 250000 | 102.57 ms/op | 109.85 ms/op | 0.93 |
getNextSyncCommittee - vc 250000 | 134.42 ms/op | 188.23 ms/op | 0.71 |
computeSigningRoot for AttestationData | 21.090 us/op | 29.467 us/op | 0.72 |
hash AttestationData serialized data then Buffer.toString(base64) | 1.6584 us/op | 1.9382 us/op | 0.86 |
toHexString serialized data | 983.81 ns/op | 2.0622 us/op | 0.48 |
Buffer.toString(base64) | 204.80 ns/op | 236.27 ns/op | 0.87 |
by benchmarkbot/action
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be really helpful, I found myself adding DEBUG=discv5:*
a few times before to debug peering issues.
🎉 This PR is included in v1.21.0 🎉 |
Motivation
Description