-
Notifications
You must be signed in to change notification settings - Fork 219
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: lazily evaluate for new random_x template (#6170)
Description --- - Changed the merge mining proxy to evaluate RandomX block template changes lazily, similar to the strategy employed for the SHA3 miner. Evaluating this often is very expensive, especially during busy network times with a highly volatile mempool. - Removed _new template_ spam from logging - Fixed a bug where the command-line network argument `igor` specified for the merge mining proxy was not recognized in the network-aware 'DomainSeparatedConsensusHasher' - Updated the merge mining proxy `config.toml` to be in line with core Motivation and Context --- - With recent stress tests on `nextnet` that lasted multiple hours, RandomX mining virtually ground to a halt during the stress test, whereas SHAR3 mining was able to continue. - One merge mining proxy that was monitored for 45 min went up to 4.5 GB in memory usage. During that time the connected base node only advanced one block, while the merge mining proxy requested 428 new block templates from the base node, all of them unique. This could account for ~1 GB in memory usage as block templates are discarded after 20 minutes. How Has This Been Tested? --- - System-level testing during low network activity (_on `igor`_) - System-level stress testing: - coin split stress test (_on `igor`_) - one-side stealth transaction stress test (_on `igor`_) What process can a PR reviewer use to test or verify this change? --- Code walk-through, system-level testing <!-- Checklist --> <!-- 1. Is the title of your PR in the form that would make nice release notes? The title, excluding the conventional commit tag, will be included exactly as is in the CHANGELOG, so please think about it carefully. --> Breaking Changes --- - [x] None - [ ] Requires data directory on base node to be deleted - [ ] Requires hard fork - [ ] Other - Please specify <!-- Does this include a breaking change? If so, include this line as a footer --> <!-- BREAKING CHANGE: Description what the user should do, e.g. delete a database, resync the chain --> --------- Co-authored-by: SW van Heerden <swvheerden@gmail.com>
- Loading branch information
1 parent
acf1fc4
commit d220643
Showing
31 changed files
with
444 additions
and
255 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.