目次
cpuminer2.60で追加された --cpu-affinity
一つ前の記事で書いたbitzeny用cpuminer2.6.0
これには --cpu-affinity
というオプションが追加されています。
これは何かといいますと、CPUの利用しない・利用するコアを指定する事ができるオプションです。
ちゃんと指定すれば採掘効率があがる!?
自分もだからなんだ、ぐらいに最初は思っていたのですが、なんとなく調べていると気になる記事が同じCPUマイニングのmoneroでありました。
簡単に言うと、HyperThreadingのコアを避けるとマイニング効率あがったよ!という内容でした。
HTを避ける指定とは
上の記事ではIntelの場合で、ということでしたが、「スレッド数を物理コア数と同じ」にして、--cpu-affinity
オプションで「一つ飛ばしでCPUコアを利用する」設定で良さそうです。
--cpu-affinity
の指定方法
まずは、2進数で利用する論理コアは1,利用しないコアは0で指定します。
4コア8スレッドなら10101010 といった指定です。これを10進数に変えて指定します。
2進数から10進数への変換は下記ツールがわかりやすいです。(入力して変換ボタンを押す)
https://hogehoge.tk/tool/number.html
例えば、4コア8スレッドのi7ですと、10101010 = 85 になるので、 minerd -a yescrpt -t4 --cpu-affinity 85 -o ...
といった指定になります。
実際に早くなるの??
ここまで書いていたのですが、正直私のCPU(i7 870)では早くなりませんでした!
つけない時と比べて0.1Kh程度減少…
一方、いのびあ(twitter @hk1v)さんが他のCPUで検証して、無事早くなったというツイートがありました!
引用OK貰ったので下記貼り付けます。
初代i7は厳しいですが、それ以降なら一定の効果がありそうです!
i7やi9を使ってる皆さんは是非とも試してみてくださいね。