New 0.17.1rc1 client syncs much faster than 0.15.2!

So I had 5 bad blocks on my hard drive and needed to do a rebuild of my BTG full node.

For better performance, I’ve configured my nodes to keep indexes and chainstate on my SSD (C:), but to put the actual blocks on the hard drive (D:).

I was pleasantly surprised at how quick the full sync was. Here’s the beginning of the sync:

2019-09-27T01:31:54Z Bitcoin Gold version v0.17.1rc1 (release build)

(I’m running with full debug logs enabled because I’m helping test the Release Candidate version, but that line will show up even with minimal debug logs…)

So, start time about 1:30 Zulu time (UTC).

Here’s the completion (I’ve clipped out the irrelevant info for posting here):

2019-09-27T10:34:01Z UpdateTip: height=600815 date='2019-09-27T10:03:36Z'
2019-09-27T10:34:01Z UpdateTip: height=600816 date='2019-09-27T10:20:19Z'
2019-09-27T10:34:01Z UpdateTip: height=600817 date='2019-09-27T10:32:45Z'

The first two blocks here were still “catching up” with the live chain, and the last one, block height 600817 found at 10:32, was in place on my machine at 10:34, before the next live block was found.

So that was just 9 hours after starting! 1:30 to 10:30. In my time zone, that’s 21:30 to 6:30. Here’s my network activity during that time period:

The peak hour picked up 25 GB - that’s about 71 Mbps. (I have a 100 Mbps Verizon FiOS line.) The BTG network is well-seeded, so other nodes were able to feed my machine the data pretty much as fast as my machine could ask for it - the limitation, for most of the time, was the speed at which my machine could validate the blocks. I’m running an older Intel Core i7 3770 on my dekstop (circa 2012; I bought it in a refurb desktop), so it’s not the fastest processor. (Also, I was running several Python simulations concurrently, each consuming about 12% of my CPU.)

The point is this: the BTG Core Wallet / Full Node client is quite a bit more efficient than it was before. My syncs last year tended to take several days on this same machine; I’m not sure how much of the improvement comes from my HD/SSD split config, and how much from improvements in the node’s performance, but it’s certainly a big improvement.

My machine finished downloading the blockchain about 6:30, and almost immediately, someone else’s full node(s) were asking mine for blocks! That’s right, not only was I synced up in 9 hours, I also became a full first-class member of the BTG network, helping other nodes stand up. Here’s a chart of just my upload bandwidth:

It’s also a great feeling to know that my machine is now an active part of strengthening the resilience of the BTG network.

Link to the Downloads page, if you want to try it:

Or the source:

Reminder: this is still Release Candidate. Feel free to drop & replace for a generic full node install on your computer, but don’t use it to replace a node being used as a back end for any services without carefully reading the announcement and release notes and testing your config/environment.

1 Like

Note: I did do a few hacks to increase the performance, like that drive split. Just ask if you want more details.

Thanks to these nodes, and others, who sent me tons of block data: