株価分析に機械学習を応用したかったのでCUDAのインストールを試みたのですが、いきなり失敗、再起動したら黒画面でフリーズ!調べてみると、UbuntuでCUDAの設定トラブルが結構出てきたので、クリーンインストールすることにしました。
Step 1: BIOSチェック
Step 2: リカバリモードで再起動 (新規インストールでは不要)
Step 3: NVIDIAライブラリを削除
$ sudo apt-get remove --purge '^nvidia-.*'
$ sudo apt-get remove --purge '^libnvidia-.*'
$ sudo apt-get remove --purge '^cuda-.*'
Step 4: 再起動
$ sudo ubuntu-drivers devices
[sudo] password for maron:
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001CBAsv00001028sd0000087Dbc03sc02i00
vendor : NVIDIA Corporation
model : GP107GLM [Quadro P2000 Mobile]
driver : nvidia-driver-510 - distro non-free recommended
driver : nvidia-driver-390 - distro non-free
driver : nvidia-driver-470-server - distro non-free
driver : nvidia-driver-418-server - distro non-free
driver : nvidia-driver-510-server - distro non-free
driver : nvidia-driver-450-server - distro non-free
driver : nvidia-driver-470 - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
Step 6: NVIDIA GPUドライバをインストール
$ sudo apt install --no-install-recommends nvidia-driver-510
$ sudo apt install nvidia-prime
$ sudo apt install nvidia-cuda-toolkit
Step 7: 再起動
Step 8: インストールの確認
ブートが成功したら、GPUの業態確認
(失敗した場合は、Step 2に戻ってリカバリモードで再起動後、NVIDIAライブラリを削除)
$ prime-select query
nvidia
$ nvidia-smi
Sun Jun 5 15:27:56 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 510.73.05 Driver Version: 510.73.05 CUDA Version: 11.6 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Quadro P2000 Off | 00000000:01:00.0 Off | N/A |
| N/A 68C P0 N/A / N/A | 765MiB / 4096MiB | 6% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 3826 G /usr/lib/xorg/Xorg 500MiB |
| 0 N/A N/A 4633 G ...ome-remote-desktop-daemon 1MiB |
| 0 N/A N/A 4684 G /usr/bin/gnome-shell 118MiB |
+-----------------------------------------------------------------------------+
最後に、NVIDIA GPU、CUDAトラブルで検索すると色々なケースが出てくるので一概にこれという解決方法はないようです。カーネルモジュールとかドライバとか結構OS低レベルでハマることが多いので、Linuxにあまり興味がない人はWindowsもしくはMac上で環境構築したほうが無難かもしれません。
ちなみに、本ブログで紹介する自作システムは、特別な注意書きがない限りクロスプラットフォームで動作します。