Ubuntu 16.04LTSにNVIDIAドライバ(nvidia-390)とCUDA 9.1を入れた時のメモ
cuda-toolkitを入れる前に立ちはだかる壁,その名もNVIDIAドライバのインストール. 過去に,いろいろな方法で入れ直したりと,試行錯誤した記憶があったので,調べつつ進めました.
CUDA Toolkit 9.1 Download | NVIDIA Developer
によると
Before installing the CUDA Toolkit on Linux, please ensure that you have the latest NVIDIA driver R390 installed. The latest NVIDIA R390 driver is available at: www.nvidia.com/drivers
とあります.しかし www.nvidia.com/drivers にアクセスして入手した.runファイルは,うまくいかないと評判です (私も試して、ダメでした。特にNVIDIA-Linux-x86_64-390.48.runがダメらしい)
そこで,今回はppaから入れる方法を取ります. まずあらかじめ,次の手順をやっておきます.
デバイス等の確認
$ lspci | grep -i nvidia
(GPUの数だけ表示されればOK)
ドライバ等確認
$ dpkg -l | grep nvidia $ dpkg -l | grep cuda
入っていたら,アンインストールします
$ sudo apt-get remove nvidia* $ sudo apt-get remove cuda* $ sudo apt autoremove
ここで再起動.ログイン画面になったら Ctrl+Alt+F1 で,CUI画面に入ります
X Serverを止める
$ sudo service lightdm stop $ pkill Xorg
ppaレポジトリを足し,nvidia-390を入れる
$ sudo add-apt-repository ppa:graphics-drivers/ppa $ sudo apt update $ sudo apt-get install nvidia-390
再起動します
確認
$ dmesg | grep nvidia $ dpkg -l | grep nvidia
後者で、ii nvidia-390 390.48-0ubuntu0~gpu16.04.3
という行が出てきてくれました。やれやれ。
$ nvidia-smi
やったね。
おまけ:cuda-toolkitのインストール
を,多いに参考にさせていただき,CUDA 9.1を入れました. デベロッパーサイトから,Linux>x86_64>Ubuntu>16.04と進み,Installer Typeは "deb(network)" を選びました. 他の方法だと,パッチが色々出ていて面倒そうだったので.
実際やったことは,上記と同じですが
sudo dpkg -i cuda-repo-ubuntu1604_9.1.*_amd64.deb (私の場合, *は85-1) sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub sudo apt-get update sudo apt-get install cuda
です.速い.きっとrunfileをダウンロードする時間より速いです.
.bashrcのパス設定も上記ブログの通りに行い,nvcc が実行できることを確認.
参考URL
- Ubuntu, NVIDIAディスプレイドライバで困ったときに使うコマンド - Qiita
- Ubuntu16.04でNVIDIAドライバをインストールする方法(CUIが表示されない場合の対処法あり) - Qiita
- [https://devtalk.nvidia.com/default/topic/1031213/linux/problem-installing-nvidia-390-42-driver-on-ubuntu-16-04/
- CUDA 9.1とcuDNN 7.1をUbuntu 16.04LTSにインストールする - Qiita
- Ubuntu 16.04にnVidia GPUドライバーとCUDAをインストールする (.runファイルがうまくいった方のブログです。nvidia-384はうまくいくのかな?)