Closed BenWestgate closed 3 months ago
With a 32GB USB & 16GB RAM and quad core CPU perform two races to July 1 2023 on clearnet.
report if significant performance difference
then repeat with 4GB laptop and same USB
report if significant performance difference
The prune "buffer" can be adjusted as a function of memory available if there is an opposite affect of the change on the smaller RAM. (potentially likely)
Closing this issue because using the entire disk space to reduce prunes is a planned feature for Bitcoin Core some day. As well as because AssumeUTXO will make sync performance less critical to usability.
After that performance upgrade, we can test if it's safe and faster to leave less than 10GiB free. This is pennies in front of steamroller.
Currently the sync performance of 32 GB USB sticks are most affected by the prune setting.
Currently 10GB is left free, Leaving only enough free to hold the assume_chain_state value may sync faster due to less frequent flushing due to pruning.
Compare performance on a 16GB Memory PC between -prune= USB_size - (10+assume_chain_state_size) -prune= USB_size - (assume_chain_state_size)
If the time savings is -20% or more remove the 10 GB buffer.
Then do the same comparison on a 4GB laptop as leaving some space free on the USB can improve the speed of flushes. If it does, A compromise 5 GB free might be used or the offset value determined by system RAM relative to chainstate and/or assume_chainstate size.