mining
BitZeny
cpuminer

Ryzen Threadripper 16 コアで BitZeny(yescrypt) をマイニングする(2017/12/23 時点 14.7 khash/s)

Screen Shot 2017-12-07 at 16.27.38.png

漢なら 16 コア CPU でマイニングし, 冬の暖房がわりにしたいですね!

最近流行りの BitZeny のマイニングを Ryzen Threadripper 16 コア(1950X)でしてみましょう!

http://bitzeny.org/
http://bitzeny.cswiki.jp/

ぜにぃ姫の人気に嫉妬です!

Wallet を用意する.

とりあえずは Web ウォレットを使いました.

https://bitzeny.jp

miner をコンパイルする

Ubuntu 16.04.3 で cpuminer https://github.com/bitzeny/cpuminer をコンパイルしました.

autoconf, libcurl4-XXX-dev あたりを入れてから autogen.sh しないと, ./configure で CURL が見つからないとかエラーが出ますのでご注意ください.

ご参考

BitZenyのMinerをUbuntuでビルドして採掘する
https://qiita.com/s_ktmr/items/f46c0d814a340407cf06

Ubuntu 標準 gcc(gcc 5.4)では, Ryzen でも -march=native で問題なくコンパイルできました.
(古いコンパイラや Ryzen 未対応 clang だと Ryzen 向けにコンパイルできないときがあるのでご注意ください)

マイニングプール

とりあえず手っ取り早く試したかったので, 登録がいらない lycheebit を使いました.

http://lycheebit.com/

BitZeny はマイナーが 10 クライアントしかないくて悲しい...
(2017/12/06 時点)

lycheebit で, 半日くらい回して 19.6 ZNY 入手できました(2017/12/06 時点でおよそ 500 円相当). ただ, このときはこれはたまたまうまく見つかっただけでした(lycheebit だと, 日によってはまったく獲得できないときもある).

最近はプールも増えてきたので, 登録制プールのほうが採掘しやすそうです.

性能

デフォルト設定で 32 threads, 10.7 khash/s でした.
16 threads で 11.0 khash/s あたりで, 19~24 threads で 13.5 ~ 14.0 khash/s でした. 物理コア数 x 1.2 ~ 1.5 くらいが最適のようです.

AVX を切る

さらに, Ryzen threadripper の場合は, AVX を使わないほうが性能が出ました(14.7 ~ 15.0 khash/s).

AVX を無効にするには, ./configure--disable-assembly とします(CFLAGS 最適化オプションも -O2 と普通の最適化レベルにしました)

システムトータル(電源ケーブルにワットチェッカーを差して計測. 1950X + DDR4-2666 64 GB mem + X399 マザー + 1070 Ti(画面表示用のみ. nvidia-smi で見ると 6W ほど消費) + SSD 1 枚)で 283 W でした. CryptoNight ではシステムトータル 180 W だったので 100 W ほど消費電力が高いですね.

アイドル時は 70 W ほどでした.

Powertune する

GPU でマイニングする場合, powertune 必須なので, CPU でも powertune し電力効率を上げてみたいと思います.

Linux で CPU の電力制御はいくつかやり方はあるようですが,
今回は Ubuntu 16.04 で cpufreq-infocpufreq-set を使って CPU 周波数を設定しました.

bash シェルスクリプトで以下のようにして各コアの CPU 周波数を設定します.

#!/bin/bash

for i in $(seq 0 31); do
   sudo cpufreq-set -u 2.8GHz -c $i
done

1950X では, 標準構成の BIOS 設定では 3.4GHz, 2.8GHz, 2.2GHz が選択できました(詳細は cpufreq-info 参照).

23 threads, no AVX の構成で以下となりました.

CPU freq khash/s watt khash/s per watt
3.4 GHz(default) 14.7 283 0.0517
2.8 GHz 11.99 153 0.0783
2.2 GHz(lowest) 9.59 142 0.0675

2.8 GHz の時が一番電力効率がよいですね! 3.4 GHz 283 W と比べて 130 W 低いです. 130W の削減は, 30 円/khw として月 2808 円, 1日 93.6 円の節電となります!

TODO

  • コア(thread)の数や, スケジューリング(governor)を調整してみる.
  • メモリ速度をチューニングしてみる
  • 優秀な若人が, BitZeny マイニングを極めることで, Ryzen 用に yescrypt アルゴリズムの最適化がおこなわれるスキームを確立したい.