-
Notifications
You must be signed in to change notification settings - Fork 38.7k
Initial Block Download optimisations #5099
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
cf739b6 to
410dbef
Compare
|
There are probably some commits in here that can be removed. I've kept it fairly granular so that some of the changes are easily optional. The big change is the commit called "Track partial download progress...", and I've recently updated this so that it now changes the window size per node based upon the bandwidth each note is achieving. @laanwj Is it worth tagging members of the core development team in a comment to draw their attention to this? |
|
@rebroad Possibly. But it could be that this list of change is too intimidating for one pull, and it may be better to trickle the changes instead of having one umbrella "Headersfirst8 improvements". |
e56b9a7 to
7ba63dd
Compare
ebb170f to
854367d
Compare
|
tumbleweed |
854367d to
86de964
Compare
2c6c439 to
585e89c
Compare
… disconnect logic for stalls.
585e89c to
ee457ac
Compare
|
I don't know what travis is talking about - it seems to be running an old version that isn't present in the current branch. |
ee457ac to
e50e834
Compare
e50e834 to
96e8bf5
Compare
…cond. This speeds up IDB.
96e8bf5 to
e2b98a9
Compare
|
Needs rebase. |
I've been developing these improvements in parallel with headersfirst8.
It's now been optimised for use with early to late block chain so adapts to the block sizes and also the bandwidth of each node to make optimal use of the connections available.
The sipa disconnect code has been disabled as it usually disconnected the most important node (with my changes), but it will still display when the logic would have executed.
Please do test and compare download times with before this test and I'm sure you'll see improvements.
It's not yet optimised for use with earlier blocks (which were small enough to download in batches of 500 each), but that will be coming shortly. Raising the pull request so that people can view and comment on some of the changes.