-
-
Notifications
You must be signed in to change notification settings - Fork 410
feat: include commit hash in network lodestar version #8605
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
Conversation
Summary of ChangesHello @nflaig, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request enhances the network's reported version information by including the full version string, which is expected to contain the commit hash. This modification provides more precise identification of the running software, significantly aiding in debugging and troubleshooting, especially in dynamic development or testing environments where multiple builds might share the same semantic version. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
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.
LGTM!!! 🚀
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.
Code Review
This pull request updates the network version string to include the commit hash, which is a useful enhancement for debugging purposes, particularly with pre-releases. The implementation is straightforward and correct. I have one minor suggestion to update a code comment to reflect the change, ensuring the code remains clear and maintainable. Overall, this is a good improvement.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## unstable #8605 +/- ##
============================================
- Coverage 51.96% 51.96% -0.01%
============================================
Files 848 848
Lines 65928 65928
Branches 4813 4813
============================================
- Hits 34261 34258 -3
- Misses 31599 31602 +3
Partials 68 68 🚀 New features to boost your workflow:
|
|
| Benchmark suite | Current: 3cdbda1 | Previous: f3703b7 | Ratio |
|---|---|---|---|
| altair processBlock - 250000 vs - 7PWei normalcase | 11.111 ms/op | 3.0300 ms/op | 3.67 |
| Array.fill - length 1000000 | 9.1608 ms/op | 2.5324 ms/op | 3.62 |
Full benchmark results
| Benchmark suite | Current: 3cdbda1 | Previous: f3703b7 | Ratio |
|---|---|---|---|
| getPubkeys - index2pubkey - req 1000 vs - 250000 vc | 1.4351 ms/op | 901.67 us/op | 1.59 |
| getPubkeys - validatorsArr - req 1000 vs - 250000 vc | 50.743 us/op | 36.130 us/op | 1.40 |
| BLS verify - blst | 1.0523 ms/op | 862.60 us/op | 1.22 |
| BLS verifyMultipleSignatures 3 - blst | 1.5346 ms/op | 1.4402 ms/op | 1.07 |
| BLS verifyMultipleSignatures 8 - blst | 2.1292 ms/op | 2.4778 ms/op | 0.86 |
| BLS verifyMultipleSignatures 32 - blst | 6.2596 ms/op | 6.1227 ms/op | 1.02 |
| BLS verifyMultipleSignatures 64 - blst | 11.589 ms/op | 11.643 ms/op | 1.00 |
| BLS verifyMultipleSignatures 128 - blst | 19.312 ms/op | 18.124 ms/op | 1.07 |
| BLS deserializing 10000 signatures | 775.15 ms/op | 653.88 ms/op | 1.19 |
| BLS deserializing 100000 signatures | 7.9526 s/op | 6.8138 s/op | 1.17 |
| BLS verifyMultipleSignatures - same message - 3 - blst | 1.0011 ms/op | 982.03 us/op | 1.02 |
| BLS verifyMultipleSignatures - same message - 8 - blst | 1.2689 ms/op | 1.0637 ms/op | 1.19 |
| BLS verifyMultipleSignatures - same message - 32 - blst | 2.1174 ms/op | 1.7412 ms/op | 1.22 |
| BLS verifyMultipleSignatures - same message - 64 - blst | 2.7833 ms/op | 2.5743 ms/op | 1.08 |
| BLS verifyMultipleSignatures - same message - 128 - blst | 4.7444 ms/op | 4.1811 ms/op | 1.13 |
| BLS aggregatePubkeys 32 - blst | 20.783 us/op | 18.259 us/op | 1.14 |
| BLS aggregatePubkeys 128 - blst | 73.904 us/op | 64.280 us/op | 1.15 |
| notSeenSlots=1 numMissedVotes=1 numBadVotes=10 | 62.237 ms/op | 58.240 ms/op | 1.07 |
| notSeenSlots=1 numMissedVotes=0 numBadVotes=4 | 55.391 ms/op | 57.893 ms/op | 0.96 |
| notSeenSlots=2 numMissedVotes=1 numBadVotes=10 | 45.792 ms/op | 43.115 ms/op | 1.06 |
| getSlashingsAndExits - default max | 82.703 us/op | 105.87 us/op | 0.78 |
| getSlashingsAndExits - 2k | 374.25 us/op | 524.64 us/op | 0.71 |
| isKnown best case - 1 super set check | 233.00 ns/op | 428.00 ns/op | 0.54 |
| isKnown normal case - 2 super set checks | 212.00 ns/op | 425.00 ns/op | 0.50 |
| isKnown worse case - 16 super set checks | 210.00 ns/op | 423.00 ns/op | 0.50 |
| InMemoryCheckpointStateCache - add get delete | 2.5020 us/op | 2.6500 us/op | 0.94 |
| validate api signedAggregateAndProof - struct | 1.6694 ms/op | 1.6811 ms/op | 0.99 |
| validate gossip signedAggregateAndProof - struct | 1.5083 ms/op | 1.7316 ms/op | 0.87 |
| batch validate gossip attestation - vc 640000 - chunk 32 | 122.77 us/op | 136.99 us/op | 0.90 |
| batch validate gossip attestation - vc 640000 - chunk 64 | 115.22 us/op | 125.89 us/op | 0.92 |
| batch validate gossip attestation - vc 640000 - chunk 128 | 107.56 us/op | 124.79 us/op | 0.86 |
| batch validate gossip attestation - vc 640000 - chunk 256 | 106.13 us/op | 130.62 us/op | 0.81 |
| pickEth1Vote - no votes | 1.0303 ms/op | 801.77 us/op | 1.29 |
| pickEth1Vote - max votes | 6.2997 ms/op | 10.991 ms/op | 0.57 |
| pickEth1Vote - Eth1Data hashTreeRoot value x2048 | 12.785 ms/op | 14.259 ms/op | 0.90 |
| pickEth1Vote - Eth1Data hashTreeRoot tree x2048 | 18.403 ms/op | 24.475 ms/op | 0.75 |
| pickEth1Vote - Eth1Data fastSerialize value x2048 | 456.55 us/op | 369.26 us/op | 1.24 |
| pickEth1Vote - Eth1Data fastSerialize tree x2048 | 2.3000 ms/op | 2.3115 ms/op | 1.00 |
| bytes32 toHexString | 377.00 ns/op | 548.00 ns/op | 0.69 |
| bytes32 Buffer.toString(hex) | 281.00 ns/op | 544.00 ns/op | 0.52 |
| bytes32 Buffer.toString(hex) from Uint8Array | 343.00 ns/op | 806.00 ns/op | 0.43 |
| bytes32 Buffer.toString(hex) + 0x | 284.00 ns/op | 655.00 ns/op | 0.43 |
| Object access 1 prop | 0.12600 ns/op | 0.44700 ns/op | 0.28 |
| Map access 1 prop | 0.12600 ns/op | 0.40500 ns/op | 0.31 |
| Object get x1000 | 6.0890 ns/op | 5.2220 ns/op | 1.17 |
| Map get x1000 | 6.3870 ns/op | 6.0420 ns/op | 1.06 |
| Object set x1000 | 29.822 ns/op | 23.946 ns/op | 1.25 |
| Map set x1000 | 20.676 ns/op | 29.447 ns/op | 0.70 |
| Return object 10000 times | 0.30180 ns/op | 0.40840 ns/op | 0.74 |
| Throw Error 10000 times | 4.5210 us/op | 5.8825 us/op | 0.77 |
| toHex | 158.20 ns/op | 109.03 ns/op | 1.45 |
| Buffer.from | 133.95 ns/op | 97.648 ns/op | 1.37 |
| shared Buffer | 87.013 ns/op | 70.333 ns/op | 1.24 |
| fastMsgIdFn sha256 / 200 bytes | 2.3760 us/op | 3.6340 us/op | 0.65 |
| fastMsgIdFn h32 xxhash / 200 bytes | 204.00 ns/op | 616.00 ns/op | 0.33 |
| fastMsgIdFn h64 xxhash / 200 bytes | 267.00 ns/op | 536.00 ns/op | 0.50 |
| fastMsgIdFn sha256 / 1000 bytes | 7.2290 us/op | 5.9770 us/op | 1.21 |
| fastMsgIdFn h32 xxhash / 1000 bytes | 335.00 ns/op | 544.00 ns/op | 0.62 |
| fastMsgIdFn h64 xxhash / 1000 bytes | 335.00 ns/op | 680.00 ns/op | 0.49 |
| fastMsgIdFn sha256 / 10000 bytes | 65.818 us/op | 50.955 us/op | 1.29 |
| fastMsgIdFn h32 xxhash / 10000 bytes | 1.8510 us/op | 1.9990 us/op | 0.93 |
| fastMsgIdFn h64 xxhash / 10000 bytes | 1.1960 us/op | 1.4070 us/op | 0.85 |
| 100 bytes - compress - snappyjs | 1.7352 us/op | 2.4030 us/op | 0.72 |
| 100 bytes - compress - snappy | 1.2625 us/op | 1.2272 us/op | 1.03 |
| 100 bytes - compress - #snappy | 1.7464 us/op | 1.2661 us/op | 1.38 |
| 200 bytes - compress - snappyjs | 2.3021 us/op | 1.9856 us/op | 1.16 |
| 200 bytes - compress - snappy | 1.2486 us/op | 982.98 ns/op | 1.27 |
| 200 bytes - compress - #snappy | 1.8336 us/op | 2.2405 us/op | 0.82 |
| 300 bytes - compress - snappyjs | 2.3813 us/op | 2.2903 us/op | 1.04 |
| 300 bytes - compress - snappy | 1.4192 us/op | 1.2678 us/op | 1.12 |
| 300 bytes - compress - #snappy | 2.7537 us/op | 3.4372 us/op | 0.80 |
| 400 bytes - compress - snappyjs | 2.6817 us/op | 2.8545 us/op | 0.94 |
| 400 bytes - compress - snappy | 1.3000 us/op | 1.2042 us/op | 1.08 |
| 400 bytes - compress - #snappy | 2.7617 us/op | 2.1810 us/op | 1.27 |
| 500 bytes - compress - snappyjs | 3.3079 us/op | 3.1968 us/op | 1.03 |
| 500 bytes - compress - snappy | 1.3694 us/op | 1.3529 us/op | 1.01 |
| 500 bytes - compress - #snappy | 3.2110 us/op | 3.3396 us/op | 0.96 |
| 1000 bytes - compress - snappyjs | 4.9370 us/op | 4.2979 us/op | 1.15 |
| 1000 bytes - compress - snappy | 1.5974 us/op | 1.5782 us/op | 1.01 |
| 1000 bytes - compress - #snappy | 4.4218 us/op | 4.8088 us/op | 0.92 |
| 10000 bytes - compress - snappyjs | 30.484 us/op | 30.061 us/op | 1.01 |
| 10000 bytes - compress - snappy | 26.415 us/op | 24.891 us/op | 1.06 |
| 10000 bytes - compress - #snappy | 30.575 us/op | 26.223 us/op | 1.17 |
| 100 bytes - uncompress - snappyjs | 1.1660 us/op | 1.0679 us/op | 1.09 |
| 100 bytes - uncompress - snappy | 1.0754 us/op | 869.59 ns/op | 1.24 |
| 100 bytes - uncompress - #snappy | 943.48 ns/op | 702.28 ns/op | 1.34 |
| 200 bytes - uncompress - snappyjs | 1.2806 us/op | 804.69 ns/op | 1.59 |
| 200 bytes - uncompress - snappy | 1.3524 us/op | 903.44 ns/op | 1.50 |
| 200 bytes - uncompress - #snappy | 886.07 ns/op | 1.2105 us/op | 0.73 |
| 300 bytes - uncompress - snappyjs | 1.1600 us/op | 1.2637 us/op | 0.92 |
| 300 bytes - uncompress - snappy | 1.1420 us/op | 974.43 ns/op | 1.17 |
| 300 bytes - uncompress - #snappy | 1.1292 us/op | 1.3228 us/op | 0.85 |
| 400 bytes - uncompress - snappyjs | 1.3015 us/op | 2.3044 us/op | 0.56 |
| 400 bytes - uncompress - snappy | 1.1097 us/op | 986.12 ns/op | 1.13 |
| 400 bytes - uncompress - #snappy | 1.8562 us/op | 1.7765 us/op | 1.04 |
| 500 bytes - uncompress - snappyjs | 2.1997 us/op | 1.8582 us/op | 1.18 |
| 500 bytes - uncompress - snappy | 1.2186 us/op | 1.3788 us/op | 0.88 |
| 500 bytes - uncompress - #snappy | 1.2953 us/op | 1.1571 us/op | 1.12 |
| 1000 bytes - uncompress - snappyjs | 1.8742 us/op | 2.3041 us/op | 0.81 |
| 1000 bytes - uncompress - snappy | 1.5913 us/op | 1.5170 us/op | 1.05 |
| 1000 bytes - uncompress - #snappy | 2.4157 us/op | 1.8653 us/op | 1.30 |
| 10000 bytes - uncompress - snappyjs | 15.129 us/op | 13.244 us/op | 1.14 |
| 10000 bytes - uncompress - snappy | 34.328 us/op | 54.816 us/op | 0.63 |
| 10000 bytes - uncompress - #snappy | 14.354 us/op | 14.396 us/op | 1.00 |
| send data - 1000 256B messages | 19.685 ms/op | 15.113 ms/op | 1.30 |
| send data - 1000 512B messages | 21.605 ms/op | 20.886 ms/op | 1.03 |
| send data - 1000 1024B messages | 30.995 ms/op | 31.538 ms/op | 0.98 |
| send data - 1000 1200B messages | 33.897 ms/op | 30.201 ms/op | 1.12 |
| send data - 1000 2048B messages | 32.080 ms/op | 31.017 ms/op | 1.03 |
| send data - 1000 4096B messages | 32.461 ms/op | 33.387 ms/op | 0.97 |
| send data - 1000 16384B messages | 52.034 ms/op | 40.218 ms/op | 1.29 |
| send data - 1000 65536B messages | 125.24 ms/op | 108.28 ms/op | 1.16 |
| enrSubnets - fastDeserialize 64 bits | 926.00 ns/op | 984.00 ns/op | 0.94 |
| enrSubnets - ssz BitVector 64 bits | 331.00 ns/op | 500.00 ns/op | 0.66 |
| enrSubnets - fastDeserialize 4 bits | 143.00 ns/op | 323.00 ns/op | 0.44 |
| enrSubnets - ssz BitVector 4 bits | 334.00 ns/op | 501.00 ns/op | 0.67 |
| prioritizePeers score -10:0 att 32-0.1 sync 2-0 | 245.86 us/op | 203.84 us/op | 1.21 |
| prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 | 278.83 us/op | 254.70 us/op | 1.09 |
| prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 | 416.62 us/op | 391.04 us/op | 1.07 |
| prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 | 767.85 us/op | 714.43 us/op | 1.07 |
| prioritizePeers score 0:0 att 64-1 sync 4-1 | 931.41 us/op | 878.12 us/op | 1.06 |
| array of 16000 items push then shift | 1.6630 us/op | 1.3059 us/op | 1.27 |
| LinkedList of 16000 items push then shift | 8.0320 ns/op | 6.9360 ns/op | 1.16 |
| array of 16000 items push then pop | 80.701 ns/op | 74.267 ns/op | 1.09 |
| LinkedList of 16000 items push then pop | 8.0560 ns/op | 6.2380 ns/op | 1.29 |
| array of 24000 items push then shift | 2.4925 us/op | 1.9132 us/op | 1.30 |
| LinkedList of 24000 items push then shift | 7.8590 ns/op | 6.5030 ns/op | 1.21 |
| array of 24000 items push then pop | 110.99 ns/op | 98.867 ns/op | 1.12 |
| LinkedList of 24000 items push then pop | 8.1880 ns/op | 6.5130 ns/op | 1.26 |
| intersect bitArray bitLen 8 | 6.5110 ns/op | 5.5200 ns/op | 1.18 |
| intersect array and set length 8 | 40.661 ns/op | 33.084 ns/op | 1.23 |
| intersect bitArray bitLen 128 | 30.692 ns/op | 26.515 ns/op | 1.16 |
| intersect array and set length 128 | 652.21 ns/op | 577.52 ns/op | 1.13 |
| bitArray.getTrueBitIndexes() bitLen 128 | 1.1580 us/op | 1.2110 us/op | 0.96 |
| bitArray.getTrueBitIndexes() bitLen 248 | 1.8340 us/op | 2.0020 us/op | 0.92 |
| bitArray.getTrueBitIndexes() bitLen 512 | 3.7800 us/op | 3.8500 us/op | 0.98 |
| Full columns - reconstruct all 6 blobs | 122.53 us/op | 68.934 us/op | 1.78 |
| Full columns - reconstruct half of the blobs out of 6 | 49.826 us/op | 35.578 us/op | 1.40 |
| Full columns - reconstruct single blob out of 6 | 22.159 us/op | 16.546 us/op | 1.34 |
| Half columns - reconstruct all 6 blobs | 301.30 ms/op | 239.62 ms/op | 1.26 |
| Half columns - reconstruct half of the blobs out of 6 | 149.22 ms/op | 121.90 ms/op | 1.22 |
| Half columns - reconstruct single blob out of 6 | 57.562 ms/op | 45.662 ms/op | 1.26 |
| Full columns - reconstruct all 10 blobs | 169.93 us/op | 83.433 us/op | 2.04 |
| Full columns - reconstruct half of the blobs out of 10 | 82.921 us/op | 42.396 us/op | 1.96 |
| Full columns - reconstruct single blob out of 10 | 22.664 us/op | 12.725 us/op | 1.78 |
| Half columns - reconstruct all 10 blobs | 482.25 ms/op | 406.96 ms/op | 1.19 |
| Half columns - reconstruct half of the blobs out of 10 | 241.20 ms/op | 218.83 ms/op | 1.10 |
| Half columns - reconstruct single blob out of 10 | 53.205 ms/op | 50.212 ms/op | 1.06 |
| Full columns - reconstruct all 20 blobs | 335.42 us/op | 263.70 us/op | 1.27 |
| Full columns - reconstruct half of the blobs out of 20 | 175.81 us/op | 152.37 us/op | 1.15 |
| Full columns - reconstruct single blob out of 20 | 24.181 us/op | 19.596 us/op | 1.23 |
| Half columns - reconstruct all 20 blobs | 980.56 ms/op | 809.19 ms/op | 1.21 |
| Half columns - reconstruct half of the blobs out of 20 | 508.84 ms/op | 408.91 ms/op | 1.24 |
| Half columns - reconstruct single blob out of 20 | 67.045 ms/op | 46.019 ms/op | 1.46 |
| Buffer.concat 32 items | 718.00 ns/op | 762.00 ns/op | 0.94 |
| Uint8Array.set 32 items | 1.7360 us/op | 1.2020 us/op | 1.44 |
| Buffer.copy | 2.9600 us/op | 2.1780 us/op | 1.36 |
| Uint8Array.set - with subarray | 3.7880 us/op | 1.6900 us/op | 2.24 |
| Uint8Array.set - without subarray | 1.6880 us/op | 1.0950 us/op | 1.54 |
| getUint32 - dataview | 211.00 ns/op | 375.00 ns/op | 0.56 |
| getUint32 - manual | 137.00 ns/op | 345.00 ns/op | 0.40 |
| Set add up to 64 items then delete first | 3.1837 us/op | 1.7975 us/op | 1.77 |
| OrderedSet add up to 64 items then delete first | 4.9660 us/op | 2.8270 us/op | 1.76 |
| Set add up to 64 items then delete last | 2.8349 us/op | 1.9013 us/op | 1.49 |
| OrderedSet add up to 64 items then delete last | 5.0484 us/op | 3.2519 us/op | 1.55 |
| Set add up to 64 items then delete middle | 3.3289 us/op | 1.8990 us/op | 1.75 |
| OrderedSet add up to 64 items then delete middle | 6.7950 us/op | 5.3853 us/op | 1.26 |
| Set add up to 128 items then delete first | 7.0757 us/op | 5.1623 us/op | 1.37 |
| OrderedSet add up to 128 items then delete first | 11.361 us/op | 7.5455 us/op | 1.51 |
| Set add up to 128 items then delete last | 6.5947 us/op | 4.6689 us/op | 1.41 |
| OrderedSet add up to 128 items then delete last | 10.635 us/op | 6.6826 us/op | 1.59 |
| Set add up to 128 items then delete middle | 6.7378 us/op | 4.2396 us/op | 1.59 |
| OrderedSet add up to 128 items then delete middle | 17.733 us/op | 12.589 us/op | 1.41 |
| Set add up to 256 items then delete first | 13.664 us/op | 7.9180 us/op | 1.73 |
| OrderedSet add up to 256 items then delete first | 22.708 us/op | 12.551 us/op | 1.81 |
| Set add up to 256 items then delete last | 14.072 us/op | 8.2841 us/op | 1.70 |
| OrderedSet add up to 256 items then delete last | 20.181 us/op | 16.210 us/op | 1.24 |
| Set add up to 256 items then delete middle | 12.949 us/op | 10.157 us/op | 1.27 |
| OrderedSet add up to 256 items then delete middle | 50.975 us/op | 38.465 us/op | 1.33 |
| transfer serialized Status (84 B) | 2.5610 us/op | 2.2480 us/op | 1.14 |
| copy serialized Status (84 B) | 1.7220 us/op | 1.3350 us/op | 1.29 |
| transfer serialized SignedVoluntaryExit (112 B) | 2.5760 us/op | 2.2100 us/op | 1.17 |
| copy serialized SignedVoluntaryExit (112 B) | 1.4450 us/op | 1.5170 us/op | 0.95 |
| transfer serialized ProposerSlashing (416 B) | 2.6470 us/op | 3.2790 us/op | 0.81 |
| copy serialized ProposerSlashing (416 B) | 2.2170 us/op | 1.5130 us/op | 1.47 |
| transfer serialized Attestation (485 B) | 3.5110 us/op | 2.2070 us/op | 1.59 |
| copy serialized Attestation (485 B) | 2.1260 us/op | 1.4540 us/op | 1.46 |
| transfer serialized AttesterSlashing (33232 B) | 2.8290 us/op | 2.3170 us/op | 1.22 |
| copy serialized AttesterSlashing (33232 B) | 6.1330 us/op | 3.7000 us/op | 1.66 |
| transfer serialized Small SignedBeaconBlock (128000 B) | 4.4650 us/op | 3.7660 us/op | 1.19 |
| copy serialized Small SignedBeaconBlock (128000 B) | 14.859 us/op | 7.7830 us/op | 1.91 |
| transfer serialized Avg SignedBeaconBlock (200000 B) | 4.3100 us/op | 3.5030 us/op | 1.23 |
| copy serialized Avg SignedBeaconBlock (200000 B) | 23.233 us/op | 11.177 us/op | 2.08 |
| transfer serialized BlobsSidecar (524380 B) | 5.2380 us/op | 5.5860 us/op | 0.94 |
| copy serialized BlobsSidecar (524380 B) | 77.070 us/op | 61.362 us/op | 1.26 |
| transfer serialized Big SignedBeaconBlock (1000000 B) | 6.0820 us/op | 5.5810 us/op | 1.09 |
| copy serialized Big SignedBeaconBlock (1000000 B) | 149.17 us/op | 166.28 us/op | 0.90 |
| pass gossip attestations to forkchoice per slot | 2.9098 ms/op | 2.3494 ms/op | 1.24 |
| forkChoice updateHead vc 100000 bc 64 eq 0 | 496.91 us/op | 385.98 us/op | 1.29 |
| forkChoice updateHead vc 600000 bc 64 eq 0 | 3.0068 ms/op | 2.2841 ms/op | 1.32 |
| forkChoice updateHead vc 1000000 bc 64 eq 0 | 4.9889 ms/op | 3.8393 ms/op | 1.30 |
| forkChoice updateHead vc 600000 bc 320 eq 0 | 3.0901 ms/op | 2.2914 ms/op | 1.35 |
| forkChoice updateHead vc 600000 bc 1200 eq 0 | 3.1216 ms/op | 2.3570 ms/op | 1.32 |
| forkChoice updateHead vc 600000 bc 7200 eq 0 | 3.2772 ms/op | 2.5970 ms/op | 1.26 |
| forkChoice updateHead vc 600000 bc 64 eq 1000 | 2.9548 ms/op | 2.4355 ms/op | 1.21 |
| forkChoice updateHead vc 600000 bc 64 eq 10000 | 3.2615 ms/op | 2.5046 ms/op | 1.30 |
| forkChoice updateHead vc 600000 bc 64 eq 300000 | 10.479 ms/op | 8.0665 ms/op | 1.30 |
| computeDeltas 1400000 validators 0% inactive | 14.500 ms/op | 11.079 ms/op | 1.31 |
| computeDeltas 1400000 validators 10% inactive | 13.309 ms/op | 11.499 ms/op | 1.16 |
| computeDeltas 1400000 validators 20% inactive | 12.576 ms/op | 9.4590 ms/op | 1.33 |
| computeDeltas 1400000 validators 50% inactive | 9.3975 ms/op | 7.3416 ms/op | 1.28 |
| computeDeltas 2100000 validators 0% inactive | 22.149 ms/op | 16.520 ms/op | 1.34 |
| computeDeltas 2100000 validators 10% inactive | 20.571 ms/op | 16.399 ms/op | 1.25 |
| computeDeltas 2100000 validators 20% inactive | 18.597 ms/op | 16.611 ms/op | 1.12 |
| computeDeltas 2100000 validators 50% inactive | 14.129 ms/op | 11.277 ms/op | 1.25 |
| altair processAttestation - 250000 vs - 7PWei normalcase | 3.7283 ms/op | 1.6533 ms/op | 2.26 |
| altair processAttestation - 250000 vs - 7PWei worstcase | 4.2997 ms/op | 2.3873 ms/op | 1.80 |
| altair processAttestation - setStatus - 1/6 committees join | 157.99 us/op | 100.64 us/op | 1.57 |
| altair processAttestation - setStatus - 1/3 committees join | 295.17 us/op | 174.17 us/op | 1.69 |
| altair processAttestation - setStatus - 1/2 committees join | 388.16 us/op | 263.19 us/op | 1.47 |
| altair processAttestation - setStatus - 2/3 committees join | 540.33 us/op | 327.94 us/op | 1.65 |
| altair processAttestation - setStatus - 4/5 committees join | 824.32 us/op | 492.39 us/op | 1.67 |
| altair processAttestation - setStatus - 100% committees join | 936.84 us/op | 589.99 us/op | 1.59 |
| altair processBlock - 250000 vs - 7PWei normalcase | 11.111 ms/op | 3.0300 ms/op | 3.67 |
| altair processBlock - 250000 vs - 7PWei normalcase hashState | 34.039 ms/op | 24.526 ms/op | 1.39 |
| altair processBlock - 250000 vs - 7PWei worstcase | 45.374 ms/op | 29.835 ms/op | 1.52 |
| altair processBlock - 250000 vs - 7PWei worstcase hashState | 92.759 ms/op | 81.441 ms/op | 1.14 |
| phase0 processBlock - 250000 vs - 7PWei normalcase | 2.2952 ms/op | 1.8824 ms/op | 1.22 |
| phase0 processBlock - 250000 vs - 7PWei worstcase | 31.479 ms/op | 26.299 ms/op | 1.20 |
| altair processEth1Data - 250000 vs - 7PWei normalcase | 406.13 us/op | 295.27 us/op | 1.38 |
| getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 | 8.6650 us/op | 5.4440 us/op | 1.59 |
| getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 | 66.615 us/op | 34.065 us/op | 1.96 |
| getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 | 17.060 us/op | 9.2900 us/op | 1.84 |
| getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 | 9.6510 us/op | 4.0980 us/op | 2.36 |
| getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 | 237.09 us/op | 142.31 us/op | 1.67 |
| getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 | 2.2087 ms/op | 1.3403 ms/op | 1.65 |
| getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 | 3.0623 ms/op | 1.6586 ms/op | 1.85 |
| getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 | 2.9815 ms/op | 1.6484 ms/op | 1.81 |
| getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 | 7.5469 ms/op | 3.6209 ms/op | 2.08 |
| getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 | 2.9303 ms/op | 1.8030 ms/op | 1.63 |
| getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 | 6.5948 ms/op | 3.7056 ms/op | 1.78 |
| Tree 40 250000 create | 681.32 ms/op | 360.37 ms/op | 1.89 |
| Tree 40 250000 get(125000) | 150.50 ns/op | 115.57 ns/op | 1.30 |
| Tree 40 250000 set(125000) | 1.8121 us/op | 1.2723 us/op | 1.42 |
| Tree 40 250000 toArray() | 24.262 ms/op | 9.8690 ms/op | 2.46 |
| Tree 40 250000 iterate all - toArray() + loop | 27.747 ms/op | 9.9103 ms/op | 2.80 |
| Tree 40 250000 iterate all - get(i) | 67.339 ms/op | 40.883 ms/op | 1.65 |
| Array 250000 create | 4.6582 ms/op | 2.3950 ms/op | 1.95 |
| Array 250000 clone - spread | 1.7182 ms/op | 646.72 us/op | 2.66 |
| Array 250000 get(125000) | 0.45300 ns/op | 0.57200 ns/op | 0.79 |
| Array 250000 set(125000) | 0.47600 ns/op | 0.57600 ns/op | 0.83 |
| Array 250000 iterate all - loop | 92.475 us/op | 74.573 us/op | 1.24 |
| phase0 afterProcessEpoch - 250000 vs - 7PWei | 46.729 ms/op | 37.537 ms/op | 1.24 |
| Array.fill - length 1000000 | 9.1608 ms/op | 2.5324 ms/op | 3.62 |
| Array push - length 1000000 | 24.827 ms/op | 9.3622 ms/op | 2.65 |
| Array.get | 0.33903 ns/op | 0.25145 ns/op | 1.35 |
| Uint8Array.get | 0.47836 ns/op | 0.32707 ns/op | 1.46 |
| phase0 beforeProcessEpoch - 250000 vs - 7PWei | 22.939 ms/op | 14.731 ms/op | 1.56 |
| altair processEpoch - mainnet_e81889 | 340.32 ms/op | 273.49 ms/op | 1.24 |
| mainnet_e81889 - altair beforeProcessEpoch | 19.440 ms/op | 15.585 ms/op | 1.25 |
| mainnet_e81889 - altair processJustificationAndFinalization | 6.2520 us/op | 4.6350 us/op | 1.35 |
| mainnet_e81889 - altair processInactivityUpdates | 6.0176 ms/op | 3.4202 ms/op | 1.76 |
| mainnet_e81889 - altair processRewardsAndPenalties | 63.524 ms/op | 32.129 ms/op | 1.98 |
| mainnet_e81889 - altair processRegistryUpdates | 1.2180 us/op | 844.00 ns/op | 1.44 |
| mainnet_e81889 - altair processSlashings | 270.00 ns/op | 394.00 ns/op | 0.69 |
| mainnet_e81889 - altair processEth1DataReset | 303.00 ns/op | 390.00 ns/op | 0.78 |
| mainnet_e81889 - altair processEffectiveBalanceUpdates | 1.9169 ms/op | 1.0176 ms/op | 1.88 |
| mainnet_e81889 - altair processSlashingsReset | 1.4990 us/op | 991.00 ns/op | 1.51 |
| mainnet_e81889 - altair processRandaoMixesReset | 1.4380 us/op | 1.3850 us/op | 1.04 |
| mainnet_e81889 - altair processHistoricalRootsUpdate | 251.00 ns/op | 393.00 ns/op | 0.64 |
| mainnet_e81889 - altair processParticipationFlagUpdates | 839.00 ns/op | 673.00 ns/op | 1.25 |
| mainnet_e81889 - altair processSyncCommitteeUpdates | 260.00 ns/op | 359.00 ns/op | 0.72 |
| mainnet_e81889 - altair afterProcessEpoch | 47.685 ms/op | 39.700 ms/op | 1.20 |
| capella processEpoch - mainnet_e217614 | 1.0148 s/op | 797.48 ms/op | 1.27 |
| mainnet_e217614 - capella beforeProcessEpoch | 61.004 ms/op | 60.581 ms/op | 1.01 |
| mainnet_e217614 - capella processJustificationAndFinalization | 5.4280 us/op | 4.8390 us/op | 1.12 |
| mainnet_e217614 - capella processInactivityUpdates | 15.470 ms/op | 12.766 ms/op | 1.21 |
| mainnet_e217614 - capella processRewardsAndPenalties | 198.73 ms/op | 195.81 ms/op | 1.01 |
| mainnet_e217614 - capella processRegistryUpdates | 7.3680 us/op | 5.3390 us/op | 1.38 |
| mainnet_e217614 - capella processSlashings | 195.00 ns/op | 388.00 ns/op | 0.50 |
| mainnet_e217614 - capella processEth1DataReset | 191.00 ns/op | 386.00 ns/op | 0.49 |
| mainnet_e217614 - capella processEffectiveBalanceUpdates | 4.2619 ms/op | 3.2541 ms/op | 1.31 |
| mainnet_e217614 - capella processSlashingsReset | 969.00 ns/op | 1.0170 us/op | 0.95 |
| mainnet_e217614 - capella processRandaoMixesReset | 1.2760 us/op | 1.2000 us/op | 1.06 |
| mainnet_e217614 - capella processHistoricalRootsUpdate | 205.00 ns/op | 401.00 ns/op | 0.51 |
| mainnet_e217614 - capella processParticipationFlagUpdates | 612.00 ns/op | 727.00 ns/op | 0.84 |
| mainnet_e217614 - capella afterProcessEpoch | 119.27 ms/op | 104.70 ms/op | 1.14 |
| phase0 processEpoch - mainnet_e58758 | 316.81 ms/op | 294.14 ms/op | 1.08 |
| mainnet_e58758 - phase0 beforeProcessEpoch | 88.944 ms/op | 88.118 ms/op | 1.01 |
| mainnet_e58758 - phase0 processJustificationAndFinalization | 6.6280 us/op | 4.7620 us/op | 1.39 |
| mainnet_e58758 - phase0 processRewardsAndPenalties | 42.393 ms/op | 39.259 ms/op | 1.08 |
| mainnet_e58758 - phase0 processRegistryUpdates | 3.2410 us/op | 3.3250 us/op | 0.97 |
| mainnet_e58758 - phase0 processSlashings | 235.00 ns/op | 388.00 ns/op | 0.61 |
| mainnet_e58758 - phase0 processEth1DataReset | 188.00 ns/op | 390.00 ns/op | 0.48 |
| mainnet_e58758 - phase0 processEffectiveBalanceUpdates | 1.5662 ms/op | 959.74 us/op | 1.63 |
| mainnet_e58758 - phase0 processSlashingsReset | 1.0410 us/op | 996.00 ns/op | 1.05 |
| mainnet_e58758 - phase0 processRandaoMixesReset | 1.6220 us/op | 1.3150 us/op | 1.23 |
| mainnet_e58758 - phase0 processHistoricalRootsUpdate | 188.00 ns/op | 385.00 ns/op | 0.49 |
| mainnet_e58758 - phase0 processParticipationRecordUpdates | 911.00 ns/op | 1.2030 us/op | 0.76 |
| mainnet_e58758 - phase0 afterProcessEpoch | 36.558 ms/op | 33.268 ms/op | 1.10 |
| phase0 processEffectiveBalanceUpdates - 250000 normalcase | 1.8199 ms/op | 1.0971 ms/op | 1.66 |
| phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 | 2.0768 ms/op | 2.5359 ms/op | 0.82 |
| altair processInactivityUpdates - 250000 normalcase | 20.988 ms/op | 17.541 ms/op | 1.20 |
| altair processInactivityUpdates - 250000 worstcase | 20.398 ms/op | 20.582 ms/op | 0.99 |
| phase0 processRegistryUpdates - 250000 normalcase | 12.136 us/op | 4.9590 us/op | 2.45 |
| phase0 processRegistryUpdates - 250000 badcase_full_deposits | 422.92 us/op | 295.90 us/op | 1.43 |
| phase0 processRegistryUpdates - 250000 worstcase 0.5 | 127.31 ms/op | 109.02 ms/op | 1.17 |
| altair processRewardsAndPenalties - 250000 normalcase | 32.891 ms/op | 30.249 ms/op | 1.09 |
| altair processRewardsAndPenalties - 250000 worstcase | 34.400 ms/op | 29.174 ms/op | 1.18 |
| phase0 getAttestationDeltas - 250000 normalcase | 7.0452 ms/op | 5.6750 ms/op | 1.24 |
| phase0 getAttestationDeltas - 250000 worstcase | 5.8689 ms/op | 5.0731 ms/op | 1.16 |
| phase0 processSlashings - 250000 worstcase | 112.82 us/op | 96.902 us/op | 1.16 |
| altair processSyncCommitteeUpdates - 250000 | 11.269 ms/op | 9.8072 ms/op | 1.15 |
| BeaconState.hashTreeRoot - No change | 231.00 ns/op | 427.00 ns/op | 0.54 |
| BeaconState.hashTreeRoot - 1 full validator | 74.074 us/op | 62.653 us/op | 1.18 |
| BeaconState.hashTreeRoot - 32 full validator | 882.19 us/op | 1.1367 ms/op | 0.78 |
| BeaconState.hashTreeRoot - 512 full validator | 9.9535 ms/op | 7.6869 ms/op | 1.29 |
| BeaconState.hashTreeRoot - 1 validator.effectiveBalance | 109.96 us/op | 76.074 us/op | 1.45 |
| BeaconState.hashTreeRoot - 32 validator.effectiveBalance | 2.2797 ms/op | 1.3278 ms/op | 1.72 |
| BeaconState.hashTreeRoot - 512 validator.effectiveBalance | 25.740 ms/op | 14.985 ms/op | 1.72 |
| BeaconState.hashTreeRoot - 1 balances | 111.10 us/op | 65.598 us/op | 1.69 |
| BeaconState.hashTreeRoot - 32 balances | 802.46 us/op | 675.34 us/op | 1.19 |
| BeaconState.hashTreeRoot - 512 balances | 8.0947 ms/op | 5.6417 ms/op | 1.43 |
| BeaconState.hashTreeRoot - 250000 balances | 176.14 ms/op | 163.70 ms/op | 1.08 |
| aggregationBits - 2048 els - zipIndexesInBitList | 21.357 us/op | 18.987 us/op | 1.12 |
| byteArrayEquals 32 | 53.941 ns/op | 45.960 ns/op | 1.17 |
| Buffer.compare 32 | 17.271 ns/op | 14.670 ns/op | 1.18 |
| byteArrayEquals 1024 | 1.5740 us/op | 1.2087 us/op | 1.30 |
| Buffer.compare 1024 | 25.130 ns/op | 21.312 ns/op | 1.18 |
| byteArrayEquals 16384 | 24.887 us/op | 19.242 us/op | 1.29 |
| Buffer.compare 16384 | 198.66 ns/op | 186.99 ns/op | 1.06 |
| byteArrayEquals 123687377 | 192.27 ms/op | 148.02 ms/op | 1.30 |
| Buffer.compare 123687377 | 6.9498 ms/op | 5.5233 ms/op | 1.26 |
| byteArrayEquals 32 - diff last byte | 52.734 ns/op | 40.459 ns/op | 1.30 |
| Buffer.compare 32 - diff last byte | 17.043 ns/op | 14.326 ns/op | 1.19 |
| byteArrayEquals 1024 - diff last byte | 1.5986 us/op | 1.1509 us/op | 1.39 |
| Buffer.compare 1024 - diff last byte | 24.963 ns/op | 21.092 ns/op | 1.18 |
| byteArrayEquals 16384 - diff last byte | 25.282 us/op | 18.223 us/op | 1.39 |
| Buffer.compare 16384 - diff last byte | 187.55 ns/op | 183.23 ns/op | 1.02 |
| byteArrayEquals 123687377 - diff last byte | 195.33 ms/op | 145.23 ms/op | 1.34 |
| Buffer.compare 123687377 - diff last byte | 9.3771 ms/op | 4.1624 ms/op | 2.25 |
| byteArrayEquals 32 - random bytes | 5.2650 ns/op | 4.8470 ns/op | 1.09 |
| Buffer.compare 32 - random bytes | 17.695 ns/op | 16.727 ns/op | 1.06 |
| byteArrayEquals 1024 - random bytes | 5.3100 ns/op | 4.8270 ns/op | 1.10 |
| Buffer.compare 1024 - random bytes | 17.534 ns/op | 17.252 ns/op | 1.02 |
| byteArrayEquals 16384 - random bytes | 5.4800 ns/op | 4.7860 ns/op | 1.15 |
| Buffer.compare 16384 - random bytes | 17.574 ns/op | 17.217 ns/op | 1.02 |
| byteArrayEquals 123687377 - random bytes | 7.3000 ns/op | 7.6500 ns/op | 0.95 |
| Buffer.compare 123687377 - random bytes | 21.060 ns/op | 20.000 ns/op | 1.05 |
| regular array get 100000 times | 34.059 us/op | 30.441 us/op | 1.12 |
| wrappedArray get 100000 times | 34.579 us/op | 29.013 us/op | 1.19 |
| arrayWithProxy get 100000 times | 14.805 ms/op | 8.5857 ms/op | 1.72 |
| ssz.Root.equals | 48.356 ns/op | 41.706 ns/op | 1.16 |
| byteArrayEquals | 47.563 ns/op | 40.854 ns/op | 1.16 |
| Buffer.compare | 11.011 ns/op | 8.4220 ns/op | 1.31 |
| processSlot - 1 slots | 10.794 us/op | 8.4480 us/op | 1.28 |
| processSlot - 32 slots | 2.3455 ms/op | 3.0565 ms/op | 0.77 |
| getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei | 3.5429 ms/op | 3.0840 ms/op | 1.15 |
| getCommitteeAssignments - req 1 vs - 250000 vc | 2.2153 ms/op | 1.7814 ms/op | 1.24 |
| getCommitteeAssignments - req 100 vs - 250000 vc | 4.5397 ms/op | 3.4997 ms/op | 1.30 |
| getCommitteeAssignments - req 1000 vs - 250000 vc | 4.6317 ms/op | 3.7321 ms/op | 1.24 |
| findModifiedValidators - 10000 modified validators | 823.52 ms/op | 754.67 ms/op | 1.09 |
| findModifiedValidators - 1000 modified validators | 798.00 ms/op | 646.92 ms/op | 1.23 |
| findModifiedValidators - 100 modified validators | 325.80 ms/op | 156.88 ms/op | 2.08 |
| findModifiedValidators - 10 modified validators | 171.02 ms/op | 122.38 ms/op | 1.40 |
| findModifiedValidators - 1 modified validators | 213.28 ms/op | 174.39 ms/op | 1.22 |
| findModifiedValidators - no difference | 266.30 ms/op | 150.03 ms/op | 1.77 |
| compare ViewDUs | 7.1229 s/op | 6.1052 s/op | 1.17 |
| compare each validator Uint8Array | 1.6978 s/op | 1.5277 s/op | 1.11 |
| compare ViewDU to Uint8Array | 1.2836 s/op | 744.29 ms/op | 1.72 |
| migrate state 1000000 validators, 24 modified, 0 new | 836.43 ms/op | 828.32 ms/op | 1.01 |
| migrate state 1000000 validators, 1700 modified, 1000 new | 1.3421 s/op | 1.0424 s/op | 1.29 |
| migrate state 1000000 validators, 3400 modified, 2000 new | 1.4440 s/op | 1.2620 s/op | 1.14 |
| migrate state 1500000 validators, 24 modified, 0 new | 994.15 ms/op | 774.21 ms/op | 1.28 |
| migrate state 1500000 validators, 1700 modified, 1000 new | 1.2957 s/op | 1.1810 s/op | 1.10 |
| migrate state 1500000 validators, 3400 modified, 2000 new | 1.6310 s/op | 1.3433 s/op | 1.21 |
| RootCache.getBlockRootAtSlot - 250000 vs - 7PWei | 4.2500 ns/op | 6.0400 ns/op | 0.70 |
| state getBlockRootAtSlot - 250000 vs - 7PWei | 722.33 ns/op | 336.68 ns/op | 2.15 |
| naive computeProposerIndex 100000 validators | 61.620 ms/op | 44.963 ms/op | 1.37 |
| computeProposerIndex 100000 validators | 1.6020 ms/op | 1.3610 ms/op | 1.18 |
| naiveGetNextSyncCommitteeIndices 1000 validators | 8.8121 s/op | 6.3704 s/op | 1.38 |
| getNextSyncCommitteeIndices 1000 validators | 140.72 ms/op | 100.69 ms/op | 1.40 |
| naiveGetNextSyncCommitteeIndices 10000 validators | 9.1720 s/op | 6.2979 s/op | 1.46 |
| getNextSyncCommitteeIndices 10000 validators | 123.75 ms/op | 102.63 ms/op | 1.21 |
| naiveGetNextSyncCommitteeIndices 100000 validators | 10.833 s/op | 6.5856 s/op | 1.64 |
| getNextSyncCommitteeIndices 100000 validators | 123.15 ms/op | 104.18 ms/op | 1.18 |
| naive computeShuffledIndex 100000 validators | 25.477 s/op | 19.633 s/op | 1.30 |
| cached computeShuffledIndex 100000 validators | 582.35 ms/op | 469.26 ms/op | 1.24 |
| naive computeShuffledIndex 2000000 validators | 525.80 s/op | 415.56 s/op | 1.27 |
| cached computeShuffledIndex 2000000 validators | 51.374 s/op | 24.515 s/op | 2.10 |
| computeProposers - vc 250000 | 612.42 us/op | 537.72 us/op | 1.14 |
| computeEpochShuffling - vc 250000 | 43.455 ms/op | 39.171 ms/op | 1.11 |
| getNextSyncCommittee - vc 250000 | 11.601 ms/op | 10.033 ms/op | 1.16 |
| computeSigningRoot for AttestationData | 20.743 us/op | 20.314 us/op | 1.02 |
| hash AttestationData serialized data then Buffer.toString(base64) | 1.6739 us/op | 1.1743 us/op | 1.43 |
| toHexString serialized data | 1.3175 us/op | 1.3254 us/op | 0.99 |
| Buffer.toString(base64) | 152.75 ns/op | 113.17 ns/op | 1.35 |
| nodejs block root to RootHex using toHex | 167.67 ns/op | 113.16 ns/op | 1.48 |
| nodejs block root to RootHex using toRootHex | 97.860 ns/op | 74.422 ns/op | 1.31 |
| nodejs fromHex(blob) | 121.14 us/op | 109.05 us/op | 1.11 |
| nodejs fromHexInto(blob) | 836.97 us/op | 706.42 us/op | 1.18 |
| nodejs block root to RootHex using the deprecated toHexString | 225.42 ns/op | 187.78 ns/op | 1.20 |
| browser block root to RootHex using toHex | 189.36 ns/op | 159.23 ns/op | 1.19 |
| browser block root to RootHex using toRootHex | 168.91 ns/op | 158.08 ns/op | 1.07 |
| browser fromHex(blob) | 806.00 us/op | 679.01 us/op | 1.19 |
| browser fromHexInto(blob) | 835.72 us/op | 714.04 us/op | 1.17 |
| browser block root to RootHex using the deprecated toHexString | 843.80 ns/op | 785.97 ns/op | 1.07 |
by benchmarkbot/action
|
🎉 This PR is included in v1.36.0 🎉 |
We are already including the version (eg.
lodestar/v1.36.0), there doesn't seem to be much of a benefit in terms of security to not include the commit hash as well and it helps debugging especially in early devnets or release candidates as there the version number is the same while it might run a different commit.We do have the
--privateflag to avoid including any information about the client on p2p.