Pebble Coding

ソフトウェアエンジニアによるIT技術、数学の備忘録

macOS で grin のCPUマイニングを試みる

macOS grin-miner でCPUマイニングを試したときの手順メモです。
結果的にハッシュパワーが足りずマイニングはできませんでした。

ビルド

grin 本体とgrin-minerをクローンしてビルドします。

$ git clone https://github.com/mimblewimble/grin.git
$ cargo build --release
$ git clone https://github.com/mimblewimble/grin-miner.git
$ cargo build --release

事前に最新版のrustコンパイラをbrewでインストールしておきます。
brew で古いllvm がインストールされているとビルドに失敗するのでアンインストールしておきます。
あとgit submoduleしろよと言われたるので言われた通りgit submoduleします。

~/.bash_profileに以下を追加します。

export PATH=$PATH:/develop/grin/target/release

ウォレットの生成

マイニングするにはウォレットが必要なので、ウォレットを作成します。
ウォレットにはパスワードを設定する必要があります。
ウォレット作成時にリカバリーフレーズが表示されるのでメモしておきます。

$ grin wallet init
Please enter a password for your new wallet
Password: 
Confirm Password: 
20190119 18:21:20.801 WARN grin_wallet::types - Generating wallet seed file at: /Users/pebble8888/.grin/main/wallet_data/wallet.seed
Your recovery phrase is:

...

Please back-up these words in a non-digital format.
Command 'init' completed successfully

ノードにマイナーがアクセスできるようにする

~/.grin/main/grin-server.toml

設定ファイルの以下がfalseになっているのでfalseに書き換えます。
enable_stratum_server = true

起動

grinノードとマイナーを起動し、マイナーがウォレットへアクセスできるようにします。

$ cd develop/grin-miner
$ grin  
$ ./target/release/grin-miner  
$ grin wallet listen  
Password: 
20190119 19:32:53.544 WARN grin_wallet::controller - Starting HTTP Foreign listener API server at 127.0.0.1:3415.
20190119 19:32:53.544 WARN grin_wallet::controller - HTTP Foreign listener started.

f:id:pebble8888:20190119195037p:plainf:id:pebble8888:20190119195057p:plain

残念ながら、まったくマイニングできておりません。
まあMacBookPro2018じゃダメだわな。(Moneroのときとほぼ同じ)

Solutions found, Accepted の数値は0から上がりますが、Blocks found の値が0から上がらず報酬も得られません。
画面がBIOS画面のようで、新しいプロジェクトっぽくていいですね。
QT使うより全然いいです。

How to mine Grin · mimblewimble/docs Wiki · GitHub

f:id:pebble8888:20190119195447p:plain

grin の特徴