ChiaのPlottingは多大な時間がかかりますが、どのような組み合わせでPlottingするのがコスト的にも優れているのでしょうか?
参考になれば。
記事作成日:2021年9月7日
はじめに
まずはじめに、
chiaのPlottingに使用している私のPCスペックですが、
2019年に購入した、ハイ~ミドルスペックな構成です。
iiyama LEVEL-M039-i7KF-TOVI
CPU:Intel Core i7-9700K
RAM:16GB
ChipSet:Intel Z390 (=NVMe PCI3.0)
madMAx(chia-plotter)で当初推奨されていたようなバケモンスペックではありません。
そういったデータはここにはない事をご留意ください。
申し訳ございません。
一般的にこれくらいか、
これよりやや下のPCスペックの方が多いとは思いますので、
なにかの参考になれば幸いです。
使用ツール
使用したのは下記の2ツールのみです。
1. 公式ツール
公式ツールだと、GUI上の操作では1つずつしか作成できないため、
下のような記述をしたバッチファイルを作成します。
set chiatemp=L:\lucky_temp
set chiaplot=I:\lucky_storagecd C:\Users\xxx\AppData\Local\chia–blockchain\app–1.2.5\resources\app.asar.unpacked\daemon
for /l %%n in (0,0,0) do (chia.exe plots create –k 32 –b 3390 –r 2 –u 128 –t %chiatmep% –d %chiaplot% –n 1)
これを単純に3回実施した平均時間計測のほか、
バッチファイルを2つ同時に実行することで、2並列動作を行います。
3つ同時なら3並列です。
それらの1プロット辺りの平均時間計測を行いました。
2. chia-plotter(通称:madMAx)
公式の方でもオススメしている爆速ツール。
もともとは、莫大なメモリ上にテンポラリデータすべてを格納して、
爆速でプロットを作成するようなツールでしたが、
CPUやテンポラリの使い方が秀逸で、
今やそこまでメモリを積んでいなくても恩恵が得られるツールとなっています。
そしてさらに、
今やWindows用GUI(Plot Manager)があるので、めちゃくちゃ設定が簡単です。
↓からダウンロードできます。
(madMAx43v3r/chia-plotter build for windows v0.1.5 の PlotManager.zip)
使い方の記事はこちら
結果
調査したドライブ:
Buffalo HD-LDS8.0U3-BA 8TB (USB3.0)
SEAGATE ST8000DM004 8TB (SATA HDD)
Crucial CT1000MX500SSD1JP 1TB(SATA SSD)
Samsung 970 EVO Plus 1TB (NVMe SSD)
Windows10上で計測した結果です。
項目 | 作成時間(h) | 1プロットあたり(h) | Plot数/日 |
USB3.0 HDD | 36 | 36 | 0.7 |
SATA HDD | 12 | 12 | 2.0 |
SATA SSD | 6.0 | 6.0 | 4.0 |
SATA SSD2並列 | 7.7 | 3.8 | 6.2 |
SATA SSD3並列 | 10 | 3.3 | 7.2 |
SATA SSD4並列 | 12 | 3.0 | 8.0 |
PCI3.0 NVMe | 4.5 | 4.5 | 5.3 |
PCI3.0 NVMe 2並列 | 5.5 | 2.8 | 8.7 |
PCI3.0 NVMe 3並列 | 6.8 | 2.3 | 10.6 |
PCI3.0 NVMe 4並列 | 7.5 | 1.9 | 12.8 |
madMAx NVMe | 1.2 | 1.2 | 20.0 |
madMAx SATA SSD | 2.4 | 2.4 | 10.0 |
madMAx NVMe+SATASSD (Temp1:NVMe, Temp2:SATASSD) |
1.8 | 1.8 | 13.3 |
madMAx SATASSD+NVMe (Temp1:SATASSD, Temp2:NVMe) |
1.1 | 1.1 | 21.8 |
※1プロットはk32(約100GiB)
ためしに全てをUSB HDD上で行うと、1プロットに36時間もかかりました。
1TBとかの超小規模で本当に小銭稼ぎで良いならこれでも良いかもしれませんが、さすがに苦痛です。
また、SATA HDDでも1プロットに12時間もかかりました。
chiaのファーミングでよく使われるのは、6TBや8TBのHDDを複数積んだもの。
6TBなら54Plot、8TBなら73Plotを格納できますので、
1週間くらいで満杯にするのに1日に10プロット以上は作成したいです。
となると、SATA SSDでもなんとかなりますが、
1TB以上のNVMeを使用するのが快適。
そして、
公式ツールだと、4並列実行で24時間で約13プロット作成にとどまりますが、
madMAxを使えばさらに爆速で、約20プロットの作成が可能です。
Temp1:SATA SSD, Temp2:NVMeで使うと、約22プロットまで高速化されました。
SATA SSD単体でも、約10プロット作成可能という優秀なツール。
(なお、CPUはいずれもほぼ100%くらいに張り付きます)
またメモリ128GBが9万円ほどするのに対し、
高耐久なNVMe、例えばSamsung 970 EVO Plus 1TBなら2万円以下で手に入りますので、
1000プロットくらいを耕す程度であれば、
コスト的にも助かるのではないでしょうか。
(そもそも自分のPCは128GBのメモリを搭載できない)
ただ、中古で売ることを考えればメモリはそう値崩れしないので、
それ以上の大規模プロット作成ならハイエンドPCで128GB以上のメモリを積んでしまえという印象です。
結論:NVMeとmadMAx使えば公式並列よりも爆速
(SATA SSDでもmadMAxでそこそこ幸せになれる)
さいごに
もともと、madMAxはメモリを128GB以上積んで、
メモリ上にtempデータを作ることで高速化するような名目でしたが、
そこそこのPCでも十分にその恩恵が得られることが分かりました。
大容量メモリでの運用は、速度よりもストレージ劣化を防ぐ恩恵のほうが大きくなっているかもしれません。
(そのためにウン万円のメモリを買うかどうかは迷うところ)
ただ現在k32で700プロットほど作成し、
私の使用しているNVMe(Samsung 970 EVO Plus 1TB)の総書込量が650TBを超えましたが、
まだ健康状態が100%です(公称TBWは600TB)。
SSDの方(CT1000MX500SSD1JP)は500TBを超え、
さすがに49%まで下がりました(公称TBWは360TB)
TBWを超えても元気よく働いてくれていますが、
突然壊れるんでしょうか。逆に心配になってきました。。。
参考になれば幸いでございます。
そいではまたー