ページ

2018-03-22

(仮想通貨)780GのCrossFireは不発

Radeon R7 240でMonacoinをマイニングしていると、当然ながらGPUの使用率は100%に近くり、肝心なLinux Mintの画面描画はモッサリと遅くなってしまいます。

mkxminerに「--powertune 90」 のようにちょっとスピードダウンするように指示しても全く効きません。

こちらはがんばってマイニグしている時のGPU使用率です。radeontopというツールでデータは取得しています。

radeonドライバーを使っている時はVRAMの使用量も表示してくれるのですが、amdgpuドライバーを使っている時はそれが表示されません。

radeontopの最新版はバージョン1.0のようですが、もしやちょっと古くて対応できていないのかもしれません。Linux Mint 18.3にインストールしたradeontopのバージョを確認してみようと考えました。

$ sudo radeontop -h
    RadeonTop for R600 and above.

    Usage: radeontop [-ch] [-b bus] [-d file] [-l limit] [-t ticks]

-b --bus 3        Pick card from this PCI bus
-c --color        Enable colors
-d --dump file        Dump data to this file, - for stdout
-l --limit 3        Quit after dumping N lines, default forever
-t --ticks 50        Samples per second (default 120)

-h --help        Show this help
-v --version        Show the version
バージョン情報を確認するために-vオプションを付けて実行してみると・・・
$ sudo radeontop -v
RadeonTop unknown
 unknown?え?
 どういうことなんでしょう・・・・。

今頃気づきましたが、amdgpuドライバーでVRAM容量が表示できないのはKernelが古いことが原因だったようです。Kernel 4.13を使っているのですが、本当に古いのでしょうか?
$ sudo radeontop -c
Kernel too old for VRAM reporting.
Collecting data, please wait....

 そしてこちらはmkxminerのログ情報です。最下行にGPUの情報が出力されるのですが、カードの温度、ファンの回転速度、GPU使用率などが取得できていません。
[13:59:19 - 0 days 00:24:37] Accepted diff 8 share cfd8d815 GPU#0 in 275ms                                            
[13:59:54 - 0 days 00:25:13] Accepted diff 8 share 15e2a5d6 GPU#0 in 277ms                                            
> 3.0MH/s | Temp(C):                | | Fan: | HW: 0 | Rej: 1.2%
mxkminerは古いGPUを正しく認識できていないのではないかと思います。ますますGPUを新しい物に交換したい気持ちが高まりました。


さて、CrossFireでしたね。

AMD 780GというチップセットはGPUを内蔵していまして、CrossFireXという機能も備えており、外付けGPUと強調して動作することができるということです!!

ということは画面描画は780Gの内蔵GPUに任せて、R7 240はマイニング専任という構成ができるのではないかと思い、試してみました。

まずはマザーボードのBIOS設定を変更します。

一番上の「Internal Graphics Mode」を普段はOFFにしているのですが、今回は「UMA+SidePort」に変更しました。UMAはOSのメモリーを奪う設定で、SidePortはマザーボード上に少しばかり用意されている専用VRAMになります。(128MBだったかな)

次に三番目の「Surround View」 をONにします。すると、自動的に一番下の「Init Display First」がPEGとなります。これはPCI Expressスロットに挿入されたビデオカードを画面表示用として最初に初期化する、という意味です。

この設定でLinux Mint 18.3を起動したところ、画面表示は問題ありませんが、radeontopでGPU使用率を確認してみると、780Gの内蔵GPUの使用率がゼロ%でした。Xorgのログを確認してみると「Hybridなんちゃらの有効化で失敗」というエラーメッセージが記録されていました。

780Gの内蔵GPUがamdgpuドライバーに対応していないのが原因なのではと考え、amdgpuドライバーからradeon ドライバーに切り替えてOSを再起動してみたところ、Xorgのログにはエラーが出力されなくなりましたが、Hybridなんちゃらが成功したというログも記録されていません。

試しにマイニングを始めてみたところ、 amdgpuドライバーがOFFになったことでAMDGPU-ProのOpenCLドライバーがDRMドライバーのバージョンが古い、ということでエラーになってしまいました。

ちゃんとRadeon R7 240とい780Gの内蔵GPUは認識されているのですが、使うことはできませんでした。


では、デュアルブート構成になっているWindows10でもCrossFireが働くのかを確認してみたところ、こちらはOSが起動できませんでした。ログオン画面までは表示できるのですが、パスワード入力後のデスクトップ表示の部分でブルースクリーンになってしまいました。

ここまで失敗して気づいたのですが、CrossFireが可能はGPUには組み合わせがあるそうで、AMD 780Gはだいぶ組み合わせに制限があり、Radeon HD 3450、3470の2種類のビデオカードとしかCrossFire構成を取れないようです。


ちょっと残念な結果でした。もう使用機材が古すぎるようです。