Bitcoin Core has been designed to synchronise/verify as fast as possible. This is usually desirable, though, on systems where other applications require a reasonable amount of CPU time (ex. desktop systems) the CPU usage maximisation of Bitcoin Core may be intrusive.
This PR adds two RPC calls:
setscriptthreadsenabled
allows to disable/re-enable the script verification threads during runtime.scriptthreadsinfo
show information about the script verification threads (enabled/disabled and num threads)
This would be a base requirement for a “cpu throttle” feature in the GUI allowing one to temporary “throttle” verification (and therefore make the system usable for other tasks while syncing in the background)
The concept-draft for long-term resource profile: https://gist.github.com/jonasschnelli/a3eb47147069b99d7c63d7da997b4225
ToDo:
- Add tests
- Release notes