Bitcoin Forum

Bitcoin => Bitcoin Technical Support => Topic started by: Noob_Is_Relative on August 13, 2024, 09:59:26 PM



Title: Bitcoin Core < Settings < Options ?
Post by: Noob_Is_Relative on August 13, 2024, 09:59:26 PM
Generally, regardless of the program, one does a settings config. after install. So I am working my
way through Core v22.0 Settings < Options:

1. What is the function of the database cache in a non-pruned node? Given plenty of non-volatile memory space, is there an ideal value?
2. Ditto for "Number of script threads verifications."


Title: Re: Bitcoin Core < Settings < Options ?
Post by: BitMaxz on August 13, 2024, 10:54:31 PM
Are you talking about dbcache? The default value for dbcache is 100mb but it should depend on your memory RAM size and I use it to speed up the syncing process on the Bitcoin core whether it is a pruned or non-pruned node.

Plus why use v22.0 that's old version of Bitcoin core the current recent one is 27.1 you should download the latest one if you don't want to experience some syncing issues.


Title: Re: Bitcoin Core < Settings < Options ?
Post by: ranochigo on August 13, 2024, 11:35:44 PM
1. What is the function of the database cache in a non-pruned node? Given plenty of non-volatile memory space, is there an ideal value?
During the initial block download, Bitcoin Core validates all of the blocks and builds the chainstate as it synchronizes. There are a lot of operations within the chainstate as the blocks are being synchronized and hence they're constantly being added and removed. Hence, dbcache will cache the chainstate to ensure speedy access of it in the memory and hence it allows the client to synchronize faster.

The ideal value is less than your ram, ensure that you're leaving enough ram for your OS and other processes. I personally go for 4gb when I've got an 8gb computer.
2. Ditto for "Number of script threads verifications."
Don't have to change the value. Bitcoin Core automatically uses as many threads as your CPU have, minus one.


Title: Re: Bitcoin Core < Settings < Options ?
Post by: nc50lc on August 14, 2024, 05:44:06 AM
2. Ditto for "Number of script threads verifications."
That config's actual label is "Script Verification Parallelization" which is mainly used when parallel script validation is required like when a new block is included.
This hits hard a node in IBD during its script verification of newest block heights that aren't part of "assumedvalid" blocks.

Default is good enough for most systems.
But if you think that your machine can't handle it, (e.g.: Whole PC is lagging starting 85~90% of IBD),
you can set it to a negative value to leave one plus that much threads.


Title: Re: Bitcoin Core < Settings < Options ?
Post by: LoyceV on August 14, 2024, 09:17:31 AM
1. What is the function of the database cache in a non-pruned node?
Simply put: it reduces disk reads and writes. If you have loads of RAM the OS can handle read-cache, but the OS won't cache writes the way Bitcoin Core does when dbcache is large enough (larger than chainstate, currently about 12 GB).

Quote
Given plenty of non-volatile memory space, is there an ideal value?
This has nothing to do with non-volatile memory. How did you even come up with that?