時代に追いつくMining Log

マイニングが流行ってから一足遅れて世界に飛び込んだ人の日々の記録と成長を記録していきます

chiaマイニングに対するファーストアタックとその結果

初めに

まずは、前回の記事をきっかけに3年ぶりにこのブログを再開した理由ですが、chiaマイニングを少し興味を持ちまして、興味が出たなら触ってみるという話でして、まあ忘れないように記録したかったという理由もあります。単純にnextcloudの構築に丸3日かかったことに対して記事の無さに苛立ちを覚えたというのもありますが。
ということで、chiaマイニングです。とりあえずは家に転がっていた機材で必要性能チェックと試算、それに対する結果を記録していこうと思います。

chiaマイニングとは何か・plotにおける特徴とburstとの違いなど

端的に言えば、hddマイニングです。今まで流行っていたGPUマイニングは演算の計算式がこちらに飛んできて、計算結果を相手に返すというロジックに対して、hddマイニングは容量の足りる範囲で演算結果を事前に計算して記録しておきます。そして向こうから飛んで来たものに当該する結果を保持していた場合結果を返答します。昔はburstコインという通貨が同じロジックを採用していました。3年前にマイニングを触っていた層なら馴染みがあるでしょう。
では、burstとのマイナーサイドの大きな違いをひとつ。それは演算時のtempファイルを別ディレクトリに作成できるという点です。これに関しては非常にplotファイルの作成が捗ります。burstの頃はplotファイルを作成するディレクトリに直接演算結果を書き込んでいたので、書き込み速度が限界に達していたことが多かったのですが、今回NVMeなどにtempファイルを置き、演算結果を最終的にhddに動かすという事が出来ます。というか自動でやってくれます。burst時代は手動かスクリプトを組んでました。まあただ、これが理由でtemp側の記憶媒体の寿命はマジで馬鹿みたいに削れます。NANDチップに書き込むという点で発熱もやばいですし、元々hddに比べて耐用年数は低めの物なので仕方はないですが、それにしても異常な速度です。
では、次はchiaコインの環境構築とやり方について。

環境構築と初期設定

まずは最初に公式clientをダウンロードします。
今回はwindowsで環境構築をしますが、どうやら海外の記事でwindowsでのplotファイルの作成よりもlinuxで作成した方が10~20%作成時間が短縮できるといった記事を見つけたので、今後linuxに環境を移行しようと思います。その際は自動化のスクリプトをも組んでいく予定です。

ダウンロードリンクはこちら。
Home - Chia Network
上の方のWindowsがリンクになっているので、こちらをクリックしてclientをダウンロード。直接exeが落ちてきます。

起動したらfirewallを開けろと言われるので開けます。
そしたら、今回は新規導入なので、walletを作成します。CREATE A NEW PRIVATE KEYをクリック。24個の英単語が羅列されるので、これを記録しておいてください。公開しない・無くさないに気をつけてください。最悪後から再度確認は出来ますが。

nextを押したらメイン画面に飛びます。もういっかfirewallを開けろって言われますのでokします。

f:id:takaindex:20210521122148p:plain
こちらがメイン画面。多分最初はstatusの項目がSyncingとなっているはずです。公式のやつはchainをローカルに落とし込む必要があるので、その同期の進捗が出てます。これが完了してSyncedになれば終わりです。まあ半日から1日で完了します。ちなみに、これが完了してなくてもplotファイルの作成には取り掛かれるので、まあ放置して定期的に確認すれば大丈夫です。

そしたら早速plotファイルの作成に取り掛かります。

plotファイルの作成

まあまずはplotファイルの作成から。左のPlotsのタブを押して、ADD A PLOTを押します。ここから作成に関する設定をして作成を開始します。設定項目は以下の感じ。
f:id:takaindex:20210521122806p:plain
ちょっとサイズが大きすぎて画面を跨いでしましましたが、必要な場所は写っているのであしからず。

上から
1.plot size
2.number of plot
3.temp directory
4.final directory
この項目を設定します。

1.plot size
これは基本的には101.4GiB(temp:239GiB)で大丈夫です。サイズが上がるとplotファイルの耐用年数が上がるのですが、101.4GiBで7年ちょいは持つらしいので問題なさげです。というか、これ以上大きくすると微妙にhddの容量からオーバーする可能性があるので、これがいいです。

2.number of plot
同時に何個作成するか、作成時の処理に割くスペックの設定欄です。
plot countは何個101.4GiBのファイルを作成するかという事。今回は転がっていた1TBのhddを使っているのでとりあえず9個としています。ただ、実際は1個だけ作って中止しています。
下の折りたたまれているAdvanced optionを開きます。その中をちょっと弄ります。
その前に一応今回使ったPCのスペックを

CPU:AMD Ryzen 3900X(12Core/24thread)
RAM:32GB
SSD:500GB
HDD:1TB
MB:X570 Aqua
Power:1200W
GPU:GTX 1080Ti *2(SLI)


今回自分はメインPCの余っているリソースで作成したので、RAMは余裕を見て10G割きました。ただ、やってみてこんなに要らなさそうでした。実際は1840MBぐらいしか使っていませんでした。並行して作成する場合、1plotあたり1.8GBぐらいを目安にしておくといいかもです。
number of threadsは作成に割くCPUのthread数です。今回はタスクマネージャーを見ながら10threadは余っていたのでその量を割きました。ただ、これも作ってる際は10thread使ってはいたのですが、各thread30%ほどしか使っていなかったので、1plotあたり3〜4threadでいいのかもしれません。
残り2つはそのまんまで大丈夫です。まあ名前を覚えやすいように変えてもいいかも。

3.Select Temporary Directory
tempファイルを保存する場所を指定します。ここに関しては読み書きが早い場所を指定することをお勧めしますが、寿命が犠牲になります。今回は時間をかけてもいいということでhddを割り当てているDドライブを設定しましたが、結論から言うと12時間かかりました。マジでアホなんじゃないかという感じ。

4.Select Final Directory
最終的にファイルを保存する場所を指定します。これは最後のプロセスで一気にデータを動かすため、読み書きはさほど問題ではなさそうです。とにかく容量が必要ですが。自分は外付けでhddを1TB付けているので、そのディレクトリの直下を指定しました。Fドライブですね。

とりあえず項目の指定が完了したらCREATE PLOTを押します。そうすると画面が移行してplotファイルの作成が始まります。

plot作成が終わると

f:id:takaindex:20210521130519j:plain
こんな感じになります。終われば自動的にマイニングを始めてくれます。とりあえずplotファイルを作成できたので良しとします。

ちょっと考察と今後についての方針決め

じゃあ、今回のことを踏まえてどうしようって言う話。
Final directoryはさほど作成時間に影響ないとして、temp directoryをメインに焦点を置いていきます。
chiaの公式blog曰く
「ガチのプロが101.4GiBのファイルを1つ4時間ちょいで作成、普通のプロが5時間ちょいで、一般人は9~12時間で作成出来ます」
といっています。
Chia plotting basics

今回12時間かかったので、hddでの作成は理論値最大でかかるということらしい。今後の調整は9時間を目安にしていこうと思います。
じゃあどうするかっていう話。
とりあえずNVMeを買う予定です。メインPCの容量もちょうど足りなくなってきたので、それのついでで買おうかと。plotファイル作成用PCの作成ですが、1thread性能もある程度必要で、thread数もある程度必要、かつ安価なものってなるとryzenもいいのですが、intelのskylake時代のものが型落ちになってきていていい感じかもしれません。ちょっと相場を調べてみて決めようと思います。ryzen初期型は対応マザーボードがなぁって感じ。
モリーはとりあえず4〜8程度積んでおけばよさそうかも。使ってて足りなくなったら増設しようと思います。


今後についてですが、とりあえずplotファイルの作成高速化と、転がっている1TBを全部埋めて、HPOOLという非公式chiapoolに投げ込みます。んで収益をみて収支計算をして、損益分岐点を見極めてみて、実際に投資するかどうか考えます。環境を整えるのも大変なのでちょっと時間はかかると思いますが、1ヶ月程度を目安に試算を完了しようと思います。

とりあえず1台分のPC部品は余っているのですが、これ2台分必要なのでもう1台の構成を考えて買ってこないとなぁって感じです。
何かしら進捗があればまた書き進めていこうと思います。
それではまた。