-
-
Notifications
You must be signed in to change notification settings - Fork 289
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
fix: fix the validation of the forkchoice spec test #6004
Conversation
|
Benchmark suite | Current: 703dd81 | Previous: 4557276 | Ratio |
---|---|---|---|
forkChoice updateHead vc 600000 bc 64 eq 300000 | 53.228 ms/op | 16.809 ms/op | 3.17 |
Full benchmark results
Benchmark suite | Current: 703dd81 | Previous: 4557276 | Ratio |
---|---|---|---|
getPubkeys - index2pubkey - req 1000 vs - 250000 vc | 580.39 us/op | 545.58 us/op | 1.06 |
getPubkeys - validatorsArr - req 1000 vs - 250000 vc | 79.595 us/op | 101.52 us/op | 0.78 |
BLS verify - blst-native | 1.3101 ms/op | 1.3593 ms/op | 0.96 |
BLS verifyMultipleSignatures 3 - blst-native | 2.8304 ms/op | 2.8184 ms/op | 1.00 |
BLS verifyMultipleSignatures 8 - blst-native | 6.1405 ms/op | 6.1503 ms/op | 1.00 |
BLS verifyMultipleSignatures 32 - blst-native | 22.093 ms/op | 22.575 ms/op | 0.98 |
BLS verifyMultipleSignatures 64 - blst-native | 44.215 ms/op | 44.269 ms/op | 1.00 |
BLS verifyMultipleSignatures 128 - blst-native | 87.127 ms/op | 87.825 ms/op | 0.99 |
BLS deserializing 10000 signatures | 906.46 ms/op | 899.55 ms/op | 1.01 |
BLS deserializing 100000 signatures | 9.5066 s/op | 9.0147 s/op | 1.05 |
BLS verifyMultipleSignatures - same message - 3 - blst-native | 1.5018 ms/op | 1.3219 ms/op | 1.14 |
BLS verifyMultipleSignatures - same message - 8 - blst-native | 1.6299 ms/op | 1.5953 ms/op | 1.02 |
BLS verifyMultipleSignatures - same message - 32 - blst-native | 2.6462 ms/op | 2.3165 ms/op | 1.14 |
BLS verifyMultipleSignatures - same message - 64 - blst-native | 3.6620 ms/op | 3.4291 ms/op | 1.07 |
BLS verifyMultipleSignatures - same message - 128 - blst-native | 5.9257 ms/op | 5.5858 ms/op | 1.06 |
BLS aggregatePubkeys 32 - blst-native | 26.746 us/op | 25.706 us/op | 1.04 |
BLS aggregatePubkeys 128 - blst-native | 105.67 us/op | 100.84 us/op | 1.05 |
getAttestationsForBlock | 38.137 ms/op | 44.003 ms/op | 0.87 |
isKnown best case - 1 super set check | 313.00 ns/op | 431.00 ns/op | 0.73 |
isKnown normal case - 2 super set checks | 288.00 ns/op | 430.00 ns/op | 0.67 |
isKnown worse case - 16 super set checks | 324.00 ns/op | 436.00 ns/op | 0.74 |
CheckpointStateCache - add get delete | 5.3260 us/op | 5.7100 us/op | 0.93 |
validate api signedAggregateAndProof - struct | 2.9471 ms/op | 2.7823 ms/op | 1.06 |
validate gossip signedAggregateAndProof - struct | 2.8170 ms/op | 2.7761 ms/op | 1.01 |
validate gossip attestation - vc 640000 | 1.4574 ms/op | 1.3411 ms/op | 1.09 |
batch validate gossip attestation - vc 640000 - chunk 32 | 170.74 us/op | 155.22 us/op | 1.10 |
batch validate gossip attestation - vc 640000 - chunk 64 | 155.08 us/op | 136.84 us/op | 1.13 |
batch validate gossip attestation - vc 640000 - chunk 128 | 144.55 us/op | 130.62 us/op | 1.11 |
batch validate gossip attestation - vc 640000 - chunk 256 | 139.74 us/op | 123.15 us/op | 1.13 |
pickEth1Vote - no votes | 1.3790 ms/op | 1.0863 ms/op | 1.27 |
pickEth1Vote - max votes | 9.8681 ms/op | 9.5849 ms/op | 1.03 |
pickEth1Vote - Eth1Data hashTreeRoot value x2048 | 20.693 ms/op | 19.333 ms/op | 1.07 |
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 | 23.208 ms/op | 24.367 ms/op | 0.95 |
pickEth1Vote - Eth1Data fastSerialize value x2048 | 702.06 us/op | 548.00 us/op | 1.28 |
pickEth1Vote - Eth1Data fastSerialize tree x2048 | 6.4453 ms/op | 7.1812 ms/op | 0.90 |
bytes32 toHexString | 562.00 ns/op | 456.00 ns/op | 1.23 |
bytes32 Buffer.toString(hex) | 331.00 ns/op | 272.00 ns/op | 1.22 |
bytes32 Buffer.toString(hex) from Uint8Array | 549.00 ns/op | 409.00 ns/op | 1.34 |
bytes32 Buffer.toString(hex) + 0x | 324.00 ns/op | 271.00 ns/op | 1.20 |
Object access 1 prop | 0.18600 ns/op | 0.13700 ns/op | 1.36 |
Map access 1 prop | 0.16800 ns/op | 0.13500 ns/op | 1.24 |
Object get x1000 | 8.9230 ns/op | 6.8080 ns/op | 1.31 |
Map get x1000 | 0.70100 ns/op | 0.50800 ns/op | 1.38 |
Object set x1000 | 57.125 ns/op | 45.894 ns/op | 1.24 |
Map set x1000 | 49.884 ns/op | 36.839 ns/op | 1.35 |
Return object 10000 times | 0.28140 ns/op | 0.22760 ns/op | 1.24 |
Throw Error 10000 times | 4.3294 us/op | 3.6611 us/op | 1.18 |
fastMsgIdFn sha256 / 200 bytes | 3.9470 us/op | 3.2320 us/op | 1.22 |
fastMsgIdFn h32 xxhash / 200 bytes | 337.00 ns/op | 261.00 ns/op | 1.29 |
fastMsgIdFn h64 xxhash / 200 bytes | 411.00 ns/op | 325.00 ns/op | 1.26 |
fastMsgIdFn sha256 / 1000 bytes | 13.664 us/op | 11.101 us/op | 1.23 |
fastMsgIdFn h32 xxhash / 1000 bytes | 490.00 ns/op | 377.00 ns/op | 1.30 |
fastMsgIdFn h64 xxhash / 1000 bytes | 482.00 ns/op | 394.00 ns/op | 1.22 |
fastMsgIdFn sha256 / 10000 bytes | 122.36 us/op | 101.90 us/op | 1.20 |
fastMsgIdFn h32 xxhash / 10000 bytes | 2.2470 us/op | 1.8310 us/op | 1.23 |
fastMsgIdFn h64 xxhash / 10000 bytes | 1.5850 us/op | 1.2530 us/op | 1.26 |
send data - 1000 256B messages | 24.728 ms/op | 17.846 ms/op | 1.39 |
send data - 1000 512B messages | 32.736 ms/op | 25.561 ms/op | 1.28 |
send data - 1000 1024B messages | 48.529 ms/op | 38.356 ms/op | 1.27 |
send data - 1000 1200B messages | 26.066 ms/op | 27.420 ms/op | 0.95 |
send data - 1000 2048B messages | 38.415 ms/op | 30.171 ms/op | 1.27 |
send data - 1000 4096B messages | 42.242 ms/op | 31.886 ms/op | 1.32 |
send data - 1000 16384B messages | 87.352 ms/op | 73.766 ms/op | 1.18 |
send data - 1000 65536B messages | 320.47 ms/op | 271.31 ms/op | 1.18 |
enrSubnets - fastDeserialize 64 bits | 1.3970 us/op | 1.1740 us/op | 1.19 |
enrSubnets - ssz BitVector 64 bits | 495.00 ns/op | 402.00 ns/op | 1.23 |
enrSubnets - fastDeserialize 4 bits | 201.00 ns/op | 160.00 ns/op | 1.26 |
enrSubnets - ssz BitVector 4 bits | 512.00 ns/op | 404.00 ns/op | 1.27 |
prioritizePeers score -10:0 att 32-0.1 sync 2-0 | 124.50 us/op | 100.45 us/op | 1.24 |
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 | 145.44 us/op | 120.69 us/op | 1.21 |
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 | 182.99 us/op | 153.45 us/op | 1.19 |
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 | 339.60 us/op | 278.70 us/op | 1.22 |
prioritizePeers score 0:0 att 64-1 sync 4-1 | 411.67 us/op | 334.56 us/op | 1.23 |
array of 16000 items push then shift | 1.8836 us/op | 1.6129 us/op | 1.17 |
LinkedList of 16000 items push then shift | 11.334 ns/op | 8.6440 ns/op | 1.31 |
array of 16000 items push then pop | 97.294 ns/op | 58.461 ns/op | 1.66 |
LinkedList of 16000 items push then pop | 11.213 ns/op | 8.3750 ns/op | 1.34 |
array of 24000 items push then shift | 3.1509 us/op | 2.2896 us/op | 1.38 |
LinkedList of 24000 items push then shift | 11.321 ns/op | 8.5750 ns/op | 1.32 |
array of 24000 items push then pop | 133.75 ns/op | 92.639 ns/op | 1.44 |
LinkedList of 24000 items push then pop | 9.6100 ns/op | 8.5790 ns/op | 1.12 |
intersect bitArray bitLen 8 | 7.4250 ns/op | 6.7270 ns/op | 1.10 |
intersect array and set length 8 | 62.689 ns/op | 53.438 ns/op | 1.17 |
intersect bitArray bitLen 128 | 34.882 ns/op | 31.742 ns/op | 1.10 |
intersect array and set length 128 | 891.86 ns/op | 739.36 ns/op | 1.21 |
bitArray.getTrueBitIndexes() bitLen 128 | 1.7160 us/op | 1.3890 us/op | 1.24 |
bitArray.getTrueBitIndexes() bitLen 248 | 2.9610 us/op | 2.4310 us/op | 1.22 |
bitArray.getTrueBitIndexes() bitLen 512 | 5.3110 us/op | 4.9540 us/op | 1.07 |
Buffer.concat 32 items | 1.0580 us/op | 1.0320 us/op | 1.03 |
Uint8Array.set 32 items | 2.6320 us/op | 2.2890 us/op | 1.15 |
Set add up to 64 items then delete first | 5.4522 us/op | 4.2666 us/op | 1.28 |
OrderedSet add up to 64 items then delete first | 5.5907 us/op | 5.2962 us/op | 1.06 |
Set add up to 64 items then delete last | 5.6395 us/op | 4.6159 us/op | 1.22 |
OrderedSet add up to 64 items then delete last | 6.8677 us/op | 5.5171 us/op | 1.24 |
Set add up to 64 items then delete middle | 5.2332 us/op | 4.4980 us/op | 1.16 |
OrderedSet add up to 64 items then delete middle | 8.3483 us/op | 6.8375 us/op | 1.22 |
Set add up to 128 items then delete first | 12.367 us/op | 9.0761 us/op | 1.36 |
OrderedSet add up to 128 items then delete first | 15.423 us/op | 11.785 us/op | 1.31 |
Set add up to 128 items then delete last | 10.974 us/op | 8.9286 us/op | 1.23 |
OrderedSet add up to 128 items then delete last | 13.485 us/op | 11.335 us/op | 1.19 |
Set add up to 128 items then delete middle | 10.686 us/op | 8.8130 us/op | 1.21 |
OrderedSet add up to 128 items then delete middle | 20.285 us/op | 16.489 us/op | 1.23 |
Set add up to 256 items then delete first | 25.299 us/op | 18.448 us/op | 1.37 |
OrderedSet add up to 256 items then delete first | 33.735 us/op | 24.469 us/op | 1.38 |
Set add up to 256 items then delete last | 21.478 us/op | 18.170 us/op | 1.18 |
OrderedSet add up to 256 items then delete last | 26.033 us/op | 22.638 us/op | 1.15 |
Set add up to 256 items then delete middle | 23.400 us/op | 17.784 us/op | 1.32 |
OrderedSet add up to 256 items then delete middle | 62.759 us/op | 44.924 us/op | 1.40 |
transfer serialized Status (84 B) | 2.7740 us/op | 1.7370 us/op | 1.60 |
copy serialized Status (84 B) | 2.0310 us/op | 1.4240 us/op | 1.43 |
transfer serialized SignedVoluntaryExit (112 B) | 2.5830 us/op | 1.8670 us/op | 1.38 |
copy serialized SignedVoluntaryExit (112 B) | 2.3320 us/op | 1.4730 us/op | 1.58 |
transfer serialized ProposerSlashing (416 B) | 3.0170 us/op | 1.9700 us/op | 1.53 |
copy serialized ProposerSlashing (416 B) | 3.2860 us/op | 1.7040 us/op | 1.93 |
transfer serialized Attestation (485 B) | 3.6630 us/op | 1.9820 us/op | 1.85 |
copy serialized Attestation (485 B) | 2.8530 us/op | 1.7550 us/op | 1.63 |
transfer serialized AttesterSlashing (33232 B) | 2.4630 us/op | 2.8180 us/op | 0.87 |
copy serialized AttesterSlashing (33232 B) | 7.0690 us/op | 5.7160 us/op | 1.24 |
transfer serialized Small SignedBeaconBlock (128000 B) | 3.5530 us/op | 3.0710 us/op | 1.16 |
copy serialized Small SignedBeaconBlock (128000 B) | 18.218 us/op | 13.066 us/op | 1.39 |
transfer serialized Avg SignedBeaconBlock (200000 B) | 3.8380 us/op | 3.6810 us/op | 1.04 |
copy serialized Avg SignedBeaconBlock (200000 B) | 21.847 us/op | 18.427 us/op | 1.19 |
transfer serialized BlobsSidecar (524380 B) | 6.5960 us/op | 2.8820 us/op | 2.29 |
copy serialized BlobsSidecar (524380 B) | 168.53 us/op | 79.014 us/op | 2.13 |
transfer serialized Big SignedBeaconBlock (1000000 B) | 8.8860 us/op | 3.2100 us/op | 2.77 |
copy serialized Big SignedBeaconBlock (1000000 B) | 281.86 us/op | 181.43 us/op | 1.55 |
pass gossip attestations to forkchoice per slot | 5.0084 ms/op | 3.8243 ms/op | 1.31 |
forkChoice updateHead vc 100000 bc 64 eq 0 | 933.60 us/op | 679.41 us/op | 1.37 |
forkChoice updateHead vc 600000 bc 64 eq 0 | 6.7985 ms/op | 4.3599 ms/op | 1.56 |
forkChoice updateHead vc 1000000 bc 64 eq 0 | 9.6759 ms/op | 7.1520 ms/op | 1.35 |
forkChoice updateHead vc 600000 bc 320 eq 0 | 6.3076 ms/op | 4.8330 ms/op | 1.31 |
forkChoice updateHead vc 600000 bc 1200 eq 0 | 6.5280 ms/op | 4.5139 ms/op | 1.45 |
forkChoice updateHead vc 600000 bc 7200 eq 0 | 8.2835 ms/op | 5.4615 ms/op | 1.52 |
forkChoice updateHead vc 600000 bc 64 eq 1000 | 15.225 ms/op | 11.190 ms/op | 1.36 |
forkChoice updateHead vc 600000 bc 64 eq 10000 | 24.275 ms/op | 12.179 ms/op | 1.99 |
forkChoice updateHead vc 600000 bc 64 eq 300000 | 53.228 ms/op | 16.809 ms/op | 3.17 |
computeDeltas 500000 validators 300 proto nodes | 8.7644 ms/op | 6.4448 ms/op | 1.36 |
computeDeltas 500000 validators 1200 proto nodes | 8.6664 ms/op | 6.4015 ms/op | 1.35 |
computeDeltas 500000 validators 7200 proto nodes | 8.9278 ms/op | 6.4215 ms/op | 1.39 |
computeDeltas 750000 validators 300 proto nodes | 12.861 ms/op | 9.8862 ms/op | 1.30 |
computeDeltas 750000 validators 1200 proto nodes | 11.754 ms/op | 9.9771 ms/op | 1.18 |
computeDeltas 750000 validators 7200 proto nodes | 11.607 ms/op | 9.7485 ms/op | 1.19 |
computeDeltas 1400000 validators 300 proto nodes | 21.873 ms/op | 18.332 ms/op | 1.19 |
computeDeltas 1400000 validators 1200 proto nodes | 21.812 ms/op | 18.129 ms/op | 1.20 |
computeDeltas 1400000 validators 7200 proto nodes | 21.042 ms/op | 18.323 ms/op | 1.15 |
computeDeltas 2100000 validators 300 proto nodes | 29.240 ms/op | 27.144 ms/op | 1.08 |
computeDeltas 2100000 validators 1200 proto nodes | 30.014 ms/op | 27.333 ms/op | 1.10 |
computeDeltas 2100000 validators 7200 proto nodes | 30.703 ms/op | 27.534 ms/op | 1.12 |
computeProposerBoostScoreFromBalances 500000 validators | 4.9189 ms/op | 3.4142 ms/op | 1.44 |
computeProposerBoostScoreFromBalances 750000 validators | 4.0183 ms/op | 3.4969 ms/op | 1.15 |
computeProposerBoostScoreFromBalances 1400000 validators | 4.3943 ms/op | 3.5777 ms/op | 1.23 |
computeProposerBoostScoreFromBalances 2100000 validators | 3.7831 ms/op | 3.6201 ms/op | 1.05 |
altair processAttestation - 250000 vs - 7PWei normalcase | 3.3329 ms/op | 3.8291 ms/op | 0.87 |
altair processAttestation - 250000 vs - 7PWei worstcase | 3.9446 ms/op | 4.6066 ms/op | 0.86 |
altair processAttestation - setStatus - 1/6 committees join | 192.66 us/op | 214.45 us/op | 0.90 |
altair processAttestation - setStatus - 1/3 committees join | 394.94 us/op | 405.19 us/op | 0.97 |
altair processAttestation - setStatus - 1/2 committees join | 496.90 us/op | 507.83 us/op | 0.98 |
altair processAttestation - setStatus - 2/3 committees join | 664.84 us/op | 709.18 us/op | 0.94 |
altair processAttestation - setStatus - 4/5 committees join | 838.14 us/op | 1.0310 ms/op | 0.81 |
altair processAttestation - setStatus - 100% committees join | 1.0523 ms/op | 987.25 us/op | 1.07 |
altair processBlock - 250000 vs - 7PWei normalcase | 8.3446 ms/op | 9.5939 ms/op | 0.87 |
altair processBlock - 250000 vs - 7PWei normalcase hashState | 35.094 ms/op | 34.546 ms/op | 1.02 |
altair processBlock - 250000 vs - 7PWei worstcase | 45.710 ms/op | 40.263 ms/op | 1.14 |
altair processBlock - 250000 vs - 7PWei worstcase hashState | 97.381 ms/op | 93.514 ms/op | 1.04 |
phase0 processBlock - 250000 vs - 7PWei normalcase | 2.6992 ms/op | 3.1401 ms/op | 0.86 |
phase0 processBlock - 250000 vs - 7PWei worstcase | 34.403 ms/op | 36.103 ms/op | 0.95 |
altair processEth1Data - 250000 vs - 7PWei normalcase | 654.47 us/op | 731.21 us/op | 0.90 |
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 | 16.198 us/op | 15.496 us/op | 1.05 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 | 47.495 us/op | 91.022 us/op | 0.52 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 | 21.291 us/op | 27.844 us/op | 0.76 |
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 | 9.1670 us/op | 23.874 us/op | 0.38 |
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 | 155.15 us/op | 228.97 us/op | 0.68 |
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 | 1.5292 ms/op | 1.9407 ms/op | 0.79 |
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 | 1.6794 ms/op | 2.3764 ms/op | 0.71 |
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 | 1.5386 ms/op | 2.1968 ms/op | 0.70 |
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 | 3.9182 ms/op | 5.2628 ms/op | 0.74 |
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 | 2.8599 ms/op | 3.3123 ms/op | 0.86 |
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 | 5.7248 ms/op | 7.8557 ms/op | 0.73 |
Tree 40 250000 create | 390.76 ms/op | 675.91 ms/op | 0.58 |
Tree 40 250000 get(125000) | 222.77 ns/op | 226.50 ns/op | 0.98 |
Tree 40 250000 set(125000) | 1.0444 us/op | 1.9324 us/op | 0.54 |
Tree 40 250000 toArray() | 23.541 ms/op | 25.149 ms/op | 0.94 |
Tree 40 250000 iterate all - toArray() + loop | 23.883 ms/op | 25.142 ms/op | 0.95 |
Tree 40 250000 iterate all - get(i) | 82.368 ms/op | 81.759 ms/op | 1.01 |
MutableVector 250000 create | 16.122 ms/op | 18.743 ms/op | 0.86 |
MutableVector 250000 get(125000) | 7.7200 ns/op | 7.1280 ns/op | 1.08 |
MutableVector 250000 set(125000) | 319.48 ns/op | 307.28 ns/op | 1.04 |
MutableVector 250000 toArray() | 4.4429 ms/op | 3.2662 ms/op | 1.36 |
MutableVector 250000 iterate all - toArray() + loop | 4.7733 ms/op | 3.9164 ms/op | 1.22 |
MutableVector 250000 iterate all - get(i) | 1.7489 ms/op | 1.6039 ms/op | 1.09 |
Array 250000 create | 4.0373 ms/op | 3.0698 ms/op | 1.32 |
Array 250000 clone - spread | 1.2999 ms/op | 1.0865 ms/op | 1.20 |
Array 250000 get(125000) | 0.64400 ns/op | 0.54700 ns/op | 1.18 |
Array 250000 set(125000) | 0.68700 ns/op | 0.62700 ns/op | 1.10 |
Array 250000 iterate all - loop | 98.119 us/op | 86.622 us/op | 1.13 |
effectiveBalanceIncrements clone Uint8Array 300000 | 43.859 us/op | 41.856 us/op | 1.05 |
effectiveBalanceIncrements clone MutableVector 300000 | 332.00 ns/op | 301.00 ns/op | 1.10 |
effectiveBalanceIncrements rw all Uint8Array 300000 | 203.90 us/op | 183.55 us/op | 1.11 |
effectiveBalanceIncrements rw all MutableVector 300000 | 115.62 ms/op | 91.142 ms/op | 1.27 |
phase0 afterProcessEpoch - 250000 vs - 7PWei | 136.40 ms/op | 118.84 ms/op | 1.15 |
phase0 beforeProcessEpoch - 250000 vs - 7PWei | 50.385 ms/op | 44.050 ms/op | 1.14 |
altair processEpoch - mainnet_e81889 | 617.73 ms/op | 517.42 ms/op | 1.19 |
mainnet_e81889 - altair beforeProcessEpoch | 83.719 ms/op | 68.116 ms/op | 1.23 |
mainnet_e81889 - altair processJustificationAndFinalization | 20.876 us/op | 20.645 us/op | 1.01 |
mainnet_e81889 - altair processInactivityUpdates | 10.093 ms/op | 6.4018 ms/op | 1.58 |
mainnet_e81889 - altair processRewardsAndPenalties | 74.744 ms/op | 75.951 ms/op | 0.98 |
mainnet_e81889 - altair processRegistryUpdates | 4.0730 us/op | 3.9190 us/op | 1.04 |
mainnet_e81889 - altair processSlashings | 613.00 ns/op | 727.00 ns/op | 0.84 |
mainnet_e81889 - altair processEth1DataReset | 1.1010 us/op | 631.00 ns/op | 1.74 |
mainnet_e81889 - altair processEffectiveBalanceUpdates | 1.6375 ms/op | 2.3713 ms/op | 0.69 |
mainnet_e81889 - altair processSlashingsReset | 6.3780 us/op | 4.1580 us/op | 1.53 |
mainnet_e81889 - altair processRandaoMixesReset | 6.8650 us/op | 5.8730 us/op | 1.17 |
mainnet_e81889 - altair processHistoricalRootsUpdate | 2.2340 us/op | 1.0450 us/op | 2.14 |
mainnet_e81889 - altair processParticipationFlagUpdates | 5.4400 us/op | 2.3290 us/op | 2.34 |
mainnet_e81889 - altair processSyncCommitteeUpdates | 1.0810 us/op | 841.00 ns/op | 1.29 |
mainnet_e81889 - altair afterProcessEpoch | 147.37 ms/op | 127.46 ms/op | 1.16 |
capella processEpoch - mainnet_e217614 | 1.6715 s/op | 1.4937 s/op | 1.12 |
mainnet_e217614 - capella beforeProcessEpoch | 258.70 ms/op | 242.29 ms/op | 1.07 |
mainnet_e217614 - capella processJustificationAndFinalization | 14.675 us/op | 19.628 us/op | 0.75 |
mainnet_e217614 - capella processInactivityUpdates | 21.094 ms/op | 18.278 ms/op | 1.15 |
mainnet_e217614 - capella processRewardsAndPenalties | 273.19 ms/op | 300.00 ms/op | 0.91 |
mainnet_e217614 - capella processRegistryUpdates | 22.557 us/op | 23.226 us/op | 0.97 |
mainnet_e217614 - capella processSlashings | 624.00 ns/op | 714.00 ns/op | 0.87 |
mainnet_e217614 - capella processEth1DataReset | 556.00 ns/op | 695.00 ns/op | 0.80 |
mainnet_e217614 - capella processEffectiveBalanceUpdates | 4.6315 ms/op | 4.2061 ms/op | 1.10 |
mainnet_e217614 - capella processSlashingsReset | 2.8410 us/op | 3.8040 us/op | 0.75 |
mainnet_e217614 - capella processRandaoMixesReset | 5.7120 us/op | 5.7100 us/op | 1.00 |
mainnet_e217614 - capella processHistoricalRootsUpdate | 609.00 ns/op | 1.0100 us/op | 0.60 |
mainnet_e217614 - capella processParticipationFlagUpdates | 2.5350 us/op | 2.6980 us/op | 0.94 |
mainnet_e217614 - capella afterProcessEpoch | 331.61 ms/op | 306.13 ms/op | 1.08 |
phase0 processEpoch - mainnet_e58758 | 463.00 ms/op | 475.99 ms/op | 0.97 |
mainnet_e58758 - phase0 beforeProcessEpoch | 138.09 ms/op | 139.20 ms/op | 0.99 |
mainnet_e58758 - phase0 processJustificationAndFinalization | 18.757 us/op | 21.667 us/op | 0.87 |
mainnet_e58758 - phase0 processRewardsAndPenalties | 44.018 ms/op | 68.142 ms/op | 0.65 |
mainnet_e58758 - phase0 processRegistryUpdates | 12.923 us/op | 17.284 us/op | 0.75 |
mainnet_e58758 - phase0 processSlashings | 525.00 ns/op | 920.00 ns/op | 0.57 |
mainnet_e58758 - phase0 processEth1DataReset | 546.00 ns/op | 537.00 ns/op | 1.02 |
mainnet_e58758 - phase0 processEffectiveBalanceUpdates | 1.1594 ms/op | 1.6301 ms/op | 0.71 |
mainnet_e58758 - phase0 processSlashingsReset | 4.3390 us/op | 3.4100 us/op | 1.27 |
mainnet_e58758 - phase0 processRandaoMixesReset | 4.8330 us/op | 5.1720 us/op | 0.93 |
mainnet_e58758 - phase0 processHistoricalRootsUpdate | 594.00 ns/op | 433.00 ns/op | 1.37 |
mainnet_e58758 - phase0 processParticipationRecordUpdates | 4.3230 us/op | 4.6830 us/op | 0.92 |
mainnet_e58758 - phase0 afterProcessEpoch | 112.40 ms/op | 105.04 ms/op | 1.07 |
phase0 processEffectiveBalanceUpdates - 250000 normalcase | 1.4078 ms/op | 1.7519 ms/op | 0.80 |
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 | 1.5062 ms/op | 2.0927 ms/op | 0.72 |
altair processInactivityUpdates - 250000 normalcase | 17.612 ms/op | 21.667 ms/op | 0.81 |
altair processInactivityUpdates - 250000 worstcase | 17.900 ms/op | 22.375 ms/op | 0.80 |
phase0 processRegistryUpdates - 250000 normalcase | 9.7360 us/op | 13.459 us/op | 0.72 |
phase0 processRegistryUpdates - 250000 badcase_full_deposits | 379.24 us/op | 456.32 us/op | 0.83 |
phase0 processRegistryUpdates - 250000 worstcase 0.5 | 130.92 ms/op | 144.74 ms/op | 0.90 |
altair processRewardsAndPenalties - 250000 normalcase | 62.311 ms/op | 68.380 ms/op | 0.91 |
altair processRewardsAndPenalties - 250000 worstcase | 63.972 ms/op | 73.054 ms/op | 0.88 |
phase0 getAttestationDeltas - 250000 normalcase | 8.8664 ms/op | 15.816 ms/op | 0.56 |
phase0 getAttestationDeltas - 250000 worstcase | 8.5898 ms/op | 11.068 ms/op | 0.78 |
phase0 processSlashings - 250000 worstcase | 2.5852 ms/op | 2.5403 ms/op | 1.02 |
altair processSyncCommitteeUpdates - 250000 | 163.35 ms/op | 169.05 ms/op | 0.97 |
BeaconState.hashTreeRoot - No change | 358.00 ns/op | 348.00 ns/op | 1.03 |
BeaconState.hashTreeRoot - 1 full validator | 166.51 us/op | 147.94 us/op | 1.13 |
BeaconState.hashTreeRoot - 32 full validator | 1.8751 ms/op | 1.8482 ms/op | 1.01 |
BeaconState.hashTreeRoot - 512 full validator | 17.655 ms/op | 20.155 ms/op | 0.88 |
BeaconState.hashTreeRoot - 1 validator.effectiveBalance | 155.54 us/op | 217.50 us/op | 0.72 |
BeaconState.hashTreeRoot - 32 validator.effectiveBalance | 2.0115 ms/op | 2.7642 ms/op | 0.73 |
BeaconState.hashTreeRoot - 512 validator.effectiveBalance | 24.297 ms/op | 35.408 ms/op | 0.69 |
BeaconState.hashTreeRoot - 1 balances | 158.76 us/op | 208.62 us/op | 0.76 |
BeaconState.hashTreeRoot - 32 balances | 1.1845 ms/op | 1.3903 ms/op | 0.85 |
BeaconState.hashTreeRoot - 512 balances | 11.092 ms/op | 16.268 ms/op | 0.68 |
BeaconState.hashTreeRoot - 250000 balances | 199.22 ms/op | 255.89 ms/op | 0.78 |
aggregationBits - 2048 els - zipIndexesInBitList | 15.100 us/op | 25.848 us/op | 0.58 |
regular array get 100000 times | 33.518 us/op | 49.023 us/op | 0.68 |
wrappedArray get 100000 times | 34.133 us/op | 38.921 us/op | 0.88 |
arrayWithProxy get 100000 times | 15.568 ms/op | 18.107 ms/op | 0.86 |
ssz.Root.equals | 202.00 ns/op | 277.00 ns/op | 0.73 |
byteArrayEquals | 205.00 ns/op | 272.00 ns/op | 0.75 |
shuffle list - 16384 els | 7.2735 ms/op | 8.6399 ms/op | 0.84 |
shuffle list - 250000 els | 107.73 ms/op | 117.21 ms/op | 0.92 |
processSlot - 1 slots | 16.410 us/op | 23.569 us/op | 0.70 |
processSlot - 32 slots | 2.8702 ms/op | 4.1427 ms/op | 0.69 |
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei | 53.583 ms/op | 63.949 ms/op | 0.84 |
getCommitteeAssignments - req 1 vs - 250000 vc | 2.5508 ms/op | 2.8208 ms/op | 0.90 |
getCommitteeAssignments - req 100 vs - 250000 vc | 3.8799 ms/op | 4.2311 ms/op | 0.92 |
getCommitteeAssignments - req 1000 vs - 250000 vc | 4.1975 ms/op | 4.3349 ms/op | 0.97 |
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei | 4.6200 ns/op | 5.0400 ns/op | 0.92 |
state getBlockRootAtSlot - 250000 vs - 7PWei | 530.61 ns/op | 656.74 ns/op | 0.81 |
computeProposers - vc 250000 | 9.3298 ms/op | 9.4683 ms/op | 0.99 |
computeEpochShuffling - vc 250000 | 113.18 ms/op | 116.36 ms/op | 0.97 |
getNextSyncCommittee - vc 250000 | 157.98 ms/op | 162.46 ms/op | 0.97 |
computeSigningRoot for AttestationData | 21.551 us/op | 33.969 us/op | 0.63 |
hash AttestationData serialized data then Buffer.toString(base64) | 2.6080 us/op | 2.4910 us/op | 1.05 |
toHexString serialized data | 1.2372 us/op | 1.2678 us/op | 0.98 |
Buffer.toString(base64) | 238.19 ns/op | 245.18 ns/op | 0.97 |
by benchmarkbot/action
@@ -180,7 +180,7 @@ const forkChoiceTest = | |||
}); | |||
if (!isValid) throw Error("Expect error since this is a negative test"); | |||
} catch (e) { | |||
if (isValid) throw e; | |||
if (isValid || (e as Error).message === "Expect error since this is a negative test") throw e; |
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.
it's better to have this string as a constant or make a specific error code for this but I think this is good to go
614884f
to
65c41ad
Compare
🎉 This PR is included in v1.12.0 🎉 |
for the negative forkchoice tests (testing invalid cases), the tests pass even if they don't throw error because in the final catch the
Expect error since this is a negative test
gets ignored.this PR fixes the ignore.
(this is needed in new version of spec tests but a separate PR is done to see if any old spec tests are being wrongly validated and need fixing)