Introduction
先日メインで使っていたミニ PC がクラッシュし、余ったパーツを流用して自作 PC を組みました。
ショックが大きかった(現在返品対応中)ですが、GPU を導入してローカルでも機械学習を回せるようになったので Pytorch で GPU 環境を構築しました。
まずNVIDIAドライバ
をインストールして reboot、ロック解除すると...
画面遷移が...
されない!
ブラックアウト!
似たような状況でお急ぎの方のために結論を書きますが、CUDA Toolkit
だけインストールしてみてください!
※NVIDIA と GPU 関連はトラブルをよく耳にするのであくまで私のケースの対処法です。
本記事が少しでも読者様の学びに繋がれば幸いです!
「いいね」をしていただけると今後の励みになるので、是非お願いします!
環境
Ubuntu22.04
GeForce RTX 3060
手順
ブラックアウトした場合、落ち着いてCtrl + Alt + F3(F6)
でテキストモードに入りましょう。
ユーザー名とパスワードを入力すると CLI が使用できます。
原因のNVIDIAドライバ
は一旦消しちゃいましょう。
sudo apt-get purge nvidia-*
reboot(私の場合はテキストモードに戻されました)するかロック画面に戻ります。
sudo service display-manager restart
私はこれで画面遷移しましたが、ブラックアウトが戻らなければ、nouveau
周りを疑いましょう。
幾つか記事を見ていると、NVIDIAドライバ
インストールの流れでブラックリストに入れていました。
blacklist.conf
でnouveau
を消せば回復すると思います。
sudo vim /etc/modprobe.d/blacklist.conf
sudo vim /etc/modules-load.d/blacklist.conf
画面が戻ったら下記リンクからCUDA Toolkit
をインストールします。
自分の環境に合ったものをクリックしていくと、インストール用のコマンドが表示されるので上から順に進めれば OK です。
私は Ubuntu22.04 なので下記のようになります。
Installer Type は deb (local)を選びましょう。(3GB くらいあります)
最新(12.2)で大丈夫でしたが、2023 年 7 月現在の Pytorch2.0 の Stable 版では CUDA11.7 か 11.8 のため気になる方は合わせても良いと思います。
インターネット状況によりますが、全体で 20 分程度かかります。
インストールし終わったら reboot して確認しましょう。
reboot
nvidia-smi
NVIDIAドライバ
が正常にインストールされています。
CUDA Version
で CUDA インストールも確認できます。
~/.bashrc
にパスを通します。
以下 2 行を追記してください。
sudo vim ~/.bashrc
export PATH=/usr/local/cuda:/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/cuda/lib64:$LD_LIBRARY_PATH
再読込して確認します。
source ~/.bashrc
nvcc -V
ここまで来れば一見落着です。
tensorflow
でもPytorch
でもインストールして機械学習しちゃいましょう!
最後に
閲覧頂きありがとうございました。
試行錯誤していた限りではnvidia-persistenced.service
が悪さしていそうです。
手順をメモしておけば良かったのですが、物理的なクラッシュの次は論理的なクラッシュかと焦っていたため覚え書きで失礼しました。
今回のトラブルシューティングで感じましたが、NVIDIA ドライバ関連の日本語記事が少なく感じました。
英語では割と盛んで私も参考にしましたが、NVIDIA と GPU 関連は様々なトラブルがあり混乱しかねませんので、日本語の記事も充実して欲しく、その一助になればと思います。
Ubuntu にして約 1 年、公私問わずトラブル連発で耐性と低レイヤの知識がかなりついてきました!
ずっと Windows ユーザーで CLI に抵抗しかなかった中、下記の書籍で一通り勉強した知識が後から効いてきています。とてもおすすめです。
最初は疑問符ばかり浮かびましたが、知識を活かせると楽しくなってきますね。ええ...
...次回のトラブルは冬頃がいいなぁ。
本記事がお役に立てば幸いです!
参考 URL