Windows PCでEthereumを採掘する

難易度が上がって採算性が落ちてきているEtherの採掘ですが、ご自宅にあるパソコンや中古パーツを利用して、ラストスパート・マイニングとまいりましょう。

大切なのはグラフィックボード選びです。一般に同価格帯であればAMD製チップのものが効率的と言われています。ウェブに情報が蓄積されていますので、投資する前によく調べましょう。

今回は自宅でホビー用に使っている、ほどほど性能のよいパソコンを使い倒す作戦です。i7-6700KにRadeon R9 380の2枚盛りです。グラフィックボードに全力でETHを掘らせながらCPU内蔵GPUでゲームをし、余ったCPUパワーでアルトコインも掘らせます。

なおこのRadeonはいつもご奉仕品のオーバークロッカー、扱いにくいメモリ2GBのGV-R938WF2OC-2GDです。さてまずBIOSです。グラフィックボードを載せても内蔵GPUをオンのままにします。使っているのはGIGABYTEのマザーボードですが、注意すべきは2ヶ所です。まず[Peripherals(周辺機器)]の[Initial Display Output]を[IGFX]にしておきます。それから[Chipset]の[Internal Graphics]も[Enabled]にして、モニタはRadeonにはつなぎません。

そして次が今回の肝です。パソコンは無慈悲にWindows 10になっていたとしても、Radeonのデバイスドライバは一世代前のものを使ってください。

具体的には最新の16版はだめです。リグが動いても掘れていません。その前の15版でもものによってはリグがフリーズします。とっかえひっかえ動く版を探した結果がこれ。

x NG  AMD Radeon Software Crimson Edition Display Driver version 16.15.2211
x NG  AMD Catalyst Windows 32/64-bit Display Driver 15.301.1101

o OK  AMD Radeon Software Crimson Edition 15.12

マストなドライバはこれ。15.300.1025.1001

どんなにリグの設定を追い込んでもドライバが働かなければだめです。特に最新版は一見して軽快に採掘動作しますが、まともに掘れていませんのでお気をつけください。

マシンの基本が整ったら、マイニングツールを設定していきます。ソフトウェアを2本用意し、プールを1つ以上選びます。マイニングにはethminer-0.9.41-genoil-1.0.8を、プロキシにはDwarfpoolも推奨のStratum Proxy v0.0.5を使います(リンク先ページを中ほどまでスクロールして[Windows]のボタンクリックでダウンロードです)。

プールはDwarfpoolでもnanopoolでも同じ構成が使えますが、今回はEthermineをメインに据えます。以下はeth-proxy.confで変更が必要な部分の抜粋です。

# Host and port for your workers
HOST = "127.0.0.1"
PORT = 8080

# Coin address where money goes
WALLET = "0xC8a30bB0050c0f9D68314Ee1b6FE6F4f8673b934"
# ( SET YOUR_WALLET_ADDRESS !!!)

# It's useful for individually monitoring and statistic
ENABLE_WORKER_ID = True

# On a Pool you have option to monitor your workers via email.
# If WORKER_ID is enabled, you can monitor every worker/rig separately.
MONITORING = True
MONITORING_EMAIL = "eth@nonkimono.com"
# ( SET YOUR_EMAIL_ADDRESS !!!)

# Main pool
POOL_HOST = "asia1.ethermine.org"
POOL_PORT = 4444

# Failover pool
POOL_FAILOVER_ENABLE = True

POOL_HOST_FAILOVER1 = "us2.ethermine.org"
POOL_PORT_FAILOVER1 = 4444

POOL_HOST_FAILOVER2 = "asia1.nanopool.org"
POOL_PORT_FAILOVER2 = 9999

POOL_HOST_FAILOVER3 = "eth-asia.dwarfpool.com"
POOL_PORT_FAILOVER3 = 8008

ご自身のウォレットやメールアドレスに書き換えるのをお忘れなく :-p

なおFAILOVERには上記例のように他業者のプールも指定できますので、メインプールのフェイルにきちんと備えることができます。

プロキシの設定が済んだら、eth-proxyとethminerの順に起動させて採掘がはじまります。この構成の場合は起動バッチは以下のとおりです。パスはご自身のお好みで通してください。

cd "C:\Program Files\eth-proxy"
start /min eth-proxy.exe

setx GPU_FORCE_64BIT_PTR 0
setx GPU_MAX_HEAP_SIZE 100
setx GPU_USE_SYNC_OBJECTS 1
setx GPU_MAX_ALLOC_PERCENT 100
setx GPU_SINGLE_ALLOC_PERCENT 100

timeout /t 30

cd "C:\Program Files\ethminer-0.9.41-genoil-1.0.8"
start /min ethminer.exe --farm-recheck 200 -F http://127.0.0.1:8080/RIG_NAME -G --opencl-platform 1 --cl-local-work 256 --cl-global-work 16384

都合3基のGPUですが、deviceID[0]が内蔵GPUのIntel HD Graphics 530で、[1][2]が2枚積みしたR9 380になります。–opencl-platform 1を指示するだけでRadeon2基が唸りを上げます。–opencl-device 1 –opencl-device 2 -t 2 などは不要です。

ethminer-0.9.41-genoil-1.0.8はコンソールが見やすい
ローカルプロキシを通すのがスムーズな採掘の定石

Intel HD Graphics 530が手持無沙汰ですので、ドラゴンクエストXオンラインで遊んでみます。ドラクエXベンチーマークを疾走させても、裏でぶん回っているRadeonのhashrateにはピクリとも影響しません。

またethminer -GではCPUもほとんど使いませんので、MinerGateでMinorなコインを掘らせてみます(MinerGateへのリンクはアフィリエイトです)。コンソールタイプのリグを動かすように先ほどの起動バッチに付け加えてもいいでしょう。

cd "C:\Program Files\MinerGate-cli"
start /min minergate-cli.exe -user altcoins@nonkimono.com -bcn 3 -xmr 3

-bcnなどコイン略称直後の数字がスレッド数です。i7-6700Kは8スレッドですから、この例では3+3の6スレッドで、つまり全体の75パーセントの馬力をMinerGateに回すことになります。MinerGateは他より低優先で働くので、採掘状態でもドラクエXが遊べます。

マイニングしながらでも快適に遊べます
6700KをもってもCPUでは大して掘れないアルトコイン
試しにMinerGateを停止した直後の図。ethminer -GだけならCPU負荷は1%足らず

これでCPUもGPUも全身全力疾走のマシン活用ができました。温度と騒音と電源が恐ろしい状況です。それでは今日もHappy mining !

2016年5月15日追記:

ethminer.exe --farm-recheck 200 -F http://127.0.0.1:8080/RIG_NAME -G --opencl-platform 1 --cl-local-work 256 --cl-global-work 16384
AMD Accelerated Parallel Processingの表示が見られます

ethminerの起動オプションですが、今回の構成ではplatform 0が内蔵GPUでplatform 1がPCIeスロットのGPU2基になります。–opencl-deviceや-tでボードやスレッドを指示しなくても、上記のキャプチャのとおりGPUを認識しています。

グラフ最初の2時間はAMDのLatest Driverで悪戦苦闘中。掘れていません

Ethermineに接続して20時間以上マイニングをしてみました。2x R9 380でおよそ40MH/sが平均して出ています。しかしながら0.4ETH/a day程度ですので、そうそう稼げるものでもなさそうです。

2016年5月16日追記:

採掘するパソコン内にウォレットがなくてもかまいません。有効なウォレットのアドレスさえ持っていればプールマイニングは可能です。

暗号通貨情報の宝庫であるCryptoCompareに、プールマイニングの方法がコンパクトにまとめられた良記事があります。その記事How to connect to an Ethereum mining pool?からの引用です。

The reason you need a wallet or address is to tell the pool where to pay your money! You don’t need to sync the blockchain – the mining pool provider will do this for you!

(抄訳)採掘したマネーの支払先になるあなたのウォレットアドレスをプールに指示してください。ブロックチェーンの同期はプールプロバイダのほうで行いますので不要です。

2016年5月22日追記:

PCIeスロットのビデオカードと並行してIntel HD Graphicsにも同時にマイニングさせることは可能です。DAGを共有するとerrorになりますので、genoil ethminer forkの–dag-dir(-R)オプションでDAGディレクトリを分けます。

start /affinity 2 eth-proxy.exe
start /affinity 4 ethminer.exe --farm-recheck 500 -R C:\Users\USER_NAME\AppData\Local\Ethash\IHDG -F http://127.0.0.1:8080/RIG_NAME0 -G --opencl-platform 0
start /affinity 8 ethminer.exe --farm-recheck 200 -F http://127.0.0.1:8080/RIG_NAME1 -G --opencl-platform 1 --cl-local-work 256 --cl-global-work 16384 

内蔵GPU側の–farm-recheckは長めにしないとhashrateが出ませんでした。

Intel HD Graphics 530の働きぶりは2MH/s程度でした。ワットチェッカーで約40Wアップする電気料金を考えるとドラクエXで遊ぶのとどちらが生産的か悩むところです。