アルゴリズムとかオーダーとか

仕事で勉強したことなどをまとめてます

2022年12月Ethereum Mainnetの同期について

先ほどEthereum Mainnetの同期が完了したので、同期に必要なシステム要件と掛かった時間を記録として残す。
なお、同期に必要となる時間はネットワーク状況や、接続したpeerによって大幅に前後することに注意。また、今回同期に用いたマシンは個人利用PCであり、並行して各種プログラムも稼働中であったことを追記しておく。


結果だけ先に記すと、execution layerの同期が完全に完了するまでにおおよそ6日ほど要した。

PCスペック

プロセッサ Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz 3.60 GHz
実装 RAM 32.0 GB
システムの種類 64 ビット オペレーティング システム、x64 ベース プロセッサ

ストレージ: P1 CT1000P1SSD8JP(容量:1000GB 規格サイズ:M.2 (Type2280) インターフェイスPCI-Express Gen3 タイプ:3D NAND)
kakaku.com

node clients

execution layer

Version: 1.10.26-stable
Git Commit: e5eb32acee19cc9fca6a03b10283b7484246b15a
Git Commit Date: 20221103
Architecture: amd64
Go Version: go1.18.5
Operating System: windows

consensus layer

beacon-chain version Prysm/v3.1.2/648ab9f2c249f1d06d0aad4328e8df429ceaf66c. Built at: 2022-10-27 17:03:48+00:00

実行コマンド

execution layer

PS J:\> geth.exe --http --http.api eth,net,engine,admin --authrpc.jwtsecret J:\prysm\jwt.hex --datadir J:\executionlayer\ --graphql --bootnodes enode://d860a01f9722d78051619d1e2351aba3f43f943f6f00718d1b9baa4101932a1f5011f16bb2b1bb35db20d6fe28fa0bf09636d26a87d31de9ec6203eeedb1f666@18.138.108.67:30303

consensus layer

PS J:\prysm> .\prysm.bat beacon-chain --execution-endpoint=http://localhost:8551 --jwt-secret=.\jwt.hex --datadir=J:\consensuslayer\

同期ログ

consensu layerの起動時期のログが取れなかったのでexecution layerの開始時期と同じとする。
なお、同じくPost Mergeに到達した際のログも撮り忘れたので、おおよその時期のログを記載する。なお、execution layerはconsensus layerのブロック同期がPost Mergeを超えるまで同期を開始しないと思われる。(裏では同期してるのかもしれないが、ログに流れないので不明)

開始時期

2022/12/02 10:57


Post Merge同期開始

ログから、2022/12/06 18:00 頃にはPost Mergeに到達したことが分かる。おおよそ4日と8時間でPost Mergeには到達する。

consensus layerのPost Merge block同期完了済みのログ
execution layerの同期開始時のログ

execution layer 同期完了

2022/12/08 01:22 頃に、execution layerの同期も完了した。

Mainnet 同期完了時のストレージ消費量

同期に必要となるStorage容量は以下の通りとなった。

consensu layer: 約150GB
execution layer: 約482GB
合計: 約732GB

consensu layer Storage消費量
execution layer Storage消費量