You are viewing a single comment's thread from:

RE: Gridcoin Community Hangout #071

in #gridcoin6 years ago (edited)

I have continued dwelling into the synchronization speeds trying to improve the performance. One big part is the time it takes to load the contracts from 1 year back after a reorganize. If we instead keep a stack of the known contracts and pop them on reorg we can greatly reduce the impact.

Time (s) vs. Blocks (k).png

The bottom, purple line contains this change and it is not nearly as affected by the reorgs starting at 900k. Total import time for that particular data set is now under an hour.

Time to import 1050000 blocks (h) (2).png

Most of these changes haven't been merged yet and some might not even be doable in production, but at least we have a good understanding of the synchronization bottlenecks.

Oh, and this affects regular network synchronization as well, not just block import. I just happen to have a good data set with both good and bad sections so it's suited for import tests. I think with all these changes we should be able to sync the entire chain over the network in around 2 hours or less.