OpenCL
ubuntu16.04
amdgpu

Ubuntu 16.04.3 + AMDGPU-Pro で X11 headless な OpenCL 環境を構築する

More than 1 year has passed since last update.

漢なら AMD GPU + amdgpu-pro で OpenCL 計算環境作りたいですよね!

しかし AMD GPU だと, デフォルトの X11 Desktop 環境では一度 graphical window manager でログインしないと OpenCL が動かないので ssh コンソールログインで OpenCL 計算できなくてつらい...
(NVIDIA GPU だと動くのですがね)

そこで X11 headless 環境を作って画面を出さなくても OpenCL がつかえるようにしましょう!

OpenGL も利用するなら x11vnc + VirtualGL あたりを使うのが良さそうですが, 今回は OpenGL は必要ないので, マイニングでの設定環境を参考にします.

How To Build a 6 GPU Zcash Headless Mining Rig on Ubuntu 16.04 Using Claymore

https://blockoperations.com/build-6-gpu-zcash-headless-mining-rig-ubuntu-16-04-using-claymore/

前提条件

  • Ubuntu Desktop 版 16.04.3 最新がインストールされているものとします(23 Oct, 2017 では kernel 4.10.0-37).
  • amdgpu-pro ドライバ 17.40 beta(blockchain/compute 用, http://support.amd.com/en-us/kb-articles/Pages/AMDGPU-Pro-Beta-Mining-Driver-for-Linux-Release-Notes.aspx 23 Oct, 2017 時点) を --compute でインストールしているものとします.
  • headless 運用時は AMD GPU にはディスプレイケーブルは繋いでいないものとします(もしくは, CPU 内蔵 GPU でマザーボードの HDMI にディスプレイケーブル挿しているとか)

grub

KMS あたりがからんでいるようで grub をグラフィカルにすると問題がありそうなので, テキストモードで grub が起動するようにします.

$ sudo vi /etc/defaults/grub
GRUB_CMDLINE_LINUX_DEFAULT=""

GRUB_TERMINAL=console
$ sudo update-grub

group

自身のユーザアカウントを video に所属させます.

$ sudo usermod -a -G video $LOGNAME

これでリブートすれば ssh コンソールログインからでも OpenCL を利用できます(clinfo でデバイスを確認)

X11 dummy は不要のようです.
(もしかしたら grub の変更は不要で, video グループにユーザアカウントを追加だけでいいのかもしれません)

Happy OpenCL programming!

TODO

  • amdgpu-pro ドライバだと GPU の powertune ができませんが, 17.40 blockchain driver でもそうなのか確認する
  • ROCm 環境も試す.