Initial synchronization duration of a vnode

Hi,

The mainnet beacon chain height is 340k blocks.

It takes now more than 1 day to synchronize a new vnode (and more for a fullnode launched with --nodemode relay --relayshards all parameters).

Is there any work in progress to decrease this time?

Thanks,

Hi @inccry, currently we haven’t had a plan for this. Would you please share some ideas?

Hi @Peter,

The disk write usage is crazy while syncing a node, so it seems to be the bottleneck.

For the fullnode I started few days ago, the SSD drive was almost consistently at a write rate of 250MB/s, during maybe a day.

That’s a lot of writes for a final database of few gigabytes :slight_smile:

Sorry, but I think we have misunderstand here @Peter.

Syncing data from beginning is slow because by the time, we have a lot of data to process and write. Specially, fullnode need to write data for all shards and beacon, so it’s slower than validator node(only sync shard and beacon). If we still use db version 1 for this, it may faster than db ver.2(but a little bit, not much, it still take > 24h ). But we consider that db ver.1 with > 180Gb of disk is not a best choice for economy right?

By the way, @hungngo also make profiling to find out the way which we can use to optimize this, and maybe we will need to spend a lot of time to do that(3 - 4 weeks)

2 Likes

Thanks @thaibao.

With dbv2, my fullnode current database size is 12GB. That’s cool because 12GB is a size than can fit partially or fully in RAM.

I’m not sure if it’s possible, but a -dbcache like option (like bitcoind) could be a good way to improve the synchronization time. (If the incognito db is loadable partially in RAM)

Thank @inccry

We will make this opinion as an input for us

2 Likes