Analyzing the hardware requirements to be an Ethereum full validated node II

Final story

Original site: https://www.comunidadblockchain.com/analyzing-the-hardware-requirements-to-be-an-ethereum-full-validated-node-ii/

After the first review about what we need, in terms of hardward, to run an Ethereum client in order to be a full validated node, I have summarized all my tests and calculated some ratios that can help you to estimate your requirements.

Test environment (you can skip it if you are not interested how I built the test environment)

Processor: Intel(R) Core(TM) i7–2600 CPU @ 3.40GHz

RAM: 4x RAM 4096 MB DDR3

Disk: 2x SSD SATA 240 GB

Monitoring tools: collectd, InfluxDB and Grafana

Metrics (most relevants): IO throughput, CPU usage and blocks per minute

Ethereum client: parity --no-warp --cache-size=4096 --db-compaction=ssd --scale-verifiers --num-verifiers=2

In order to limit machine resources I have applied CGroups to different executions of Parity.

Results

Test 1, 2 and 4 have limited disk throughput. Test 3 has limited CPU

As we can see, the most relevant resource for synchronization’s speed is disk throughput. CPU also has an impact but in a different order of magnitude.

A rule of thumb I have extracted empirically from the previous results is that the ratio between blocks / minute and Avg MB/s IO write goes from 21 (21MB/s) to close to 16 (35.6MB/s and 68MB/s):

It provides us with an estimation about how much time a machine will expend to sync a full validated node:

Last block height: 6677669

Processor: Intel(R) Core(TM) i7–2600 CPU @ 3.40GHz

AVG blocks/minute with a disk providing 48 MB/s of random writes: 48*16=768

Theoretical time to sync: 6677669/768 /60 /24 = 6.04 days

You can adjust it if your CPU is not the same. For example, if you only have 1/8 of the capacity of the previous CPU, adjust the AVG blocks/minute as follow:

768 - 1/(1/8)*9 = 696 block/minute

And it will take 6.66 days to sync.

Conclusions

  • I still cannot say what is the minimum hardware. The tests were not conclusive
  • However, the data shown here gives us an estimation
  • I will update the bottom part of this story with hardware that I know it can run a full validated node

Tested hardware

Warning: The disk space needed may vary if you are looking it long after I’ve written it down.


Processor: Intel(R) Core(TM) i7–2600 CPU @ 3.40GHz
RAM: 4x RAM 4096 MB DDR3
Disk: 2x SSD SATA 240 GB

PRICE: 32.54 EUR / month (https://www.hetzner.com/)