Ubuntu22.04にDeepの環境を作成したくなり,検索したときのメモ
Ubuntu 22.04 LTS
NVIDIA Driver 535
CUDA 12.1
cuDNN 8.9.7
Anaconda Navigator 2023.09
VSCode 1.86.0
の環境構築の手順メモです.
なお,Ubuntu 22.04 は ESXi 8.0U2 環境下に
☑ Minimum installation
☑ Download updates while installing Ubuntu
❑ Install third-party software for graphics and WiFi hardware and additional media formats
にてインストール済みです.
ESXi関係のハマりそうな設定のメモ
☑Secure Boot -> OFF
ESXi GPU passthuru
hypervisor.cpuid.v0=FALSE
pciPassthru.use64bitMMIO=TRUE
pciPassthru.64bitMMIOSizeGB=128NVIDIA Graphicsインストール前 (Nouveau)の無効化
disabled nouveau (PCI passthuruをする前に設定)
cat <<EOF | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
blacklist nouveau
options nouveau modeset=0
EOF# blacklist-nouveau の作成
sudo update-initramfs -u
0 準備前のおまじない
$ sudo apt update
$ sudo apt upgrade
#もともと入っているドライバの削除
$ sudo apt-get --purge remove nvidia-*
$ sudo apt-get --purge remove cuda-*
#nouveau exsists?
$ lsmod | grep -i nouveau
$ sudo nano /etc/modprobe.d/blacklist-nouveau.conf
blacklist nouveau
options nouveau modeset=0
# Save(Ctrl+S) Close(Ctrl+X)
$ sudo update-initramfs -u
1 NVIDIA Driver
$ ubuntu-drivers devices
...
driver : nvidia-driver-535 - distro non-free
...
$ sudo apt install nvidia-driver-535
[Y/n] -> Y
$ reboot
$ nvidia-smi
2 CUDA 12.1
PyTorch の latest version(2024.02現在) に合わせて敢えて 12.1 を選択
#Runfile
$ wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run
$ sudo sh cuda_12.1.1_530.30.02_linux.run
Continue -> accept -> CUDA Toolkit 12.1[X] = Install
#include pass
$ export PATH="/usr/local/cuda/bin:$PATH"
$ export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"
#確認
$ nvcc -V
nvcc: NVIDIA (R) Cuda Compiler driver....が表示されたらインストール成功
Command 'nvcc' not found......は失敗(パスが通っていない)
3 cuDNN 8.9.7
Download cuDNN v8.9.7 (December 5th, 2023), for CUDA 12.x
Local Installer for Ubuntu22.04 x86_64 (Deb)
cudnn-local-repo-ubuntu2204-8.9.7.29_1.0-1_amd64.deb をダウンロード(要NVIDIAアカウント)
$ sudo dpkg -i <ダウンロードしたcudnnのパス>
#keyring.gpg を /usr/share/keyrings/ にコピー
$ sudo cp /var/cudnn-local-repo-ubuntu2204-8.9.7.29/cudnn-local-XXXXXXXX-keyring.gpg /usr/share/keyrings/
$ sudo apt-get update
#[libcudnn8_8.9.7.29-1+cuda12.2] の部分は /var/cudnn-local-repo* の中 .deb ファイルの [_amd64.deb] を除いた文字列
#+cuda12.2 は installed version: 12.1 と違いますがとりあえず気にしない
$ sudo apt-get install libcudnn8=8.9.7.29-1+cuda12.2
$ sudo apt-get install libcudnn8-dev=8.9.7.29-1+cuda12.2
#インストールの確認 libcudnn8 と libcudnn8-dev が表示されれば成功
$ dpkg -l | grep cudnn
cuDNNのダウンロード先には 対応するcuda の varsion は 12.Xとひとくくりになっているが,ファイル名を見る限りでは下記のようになっている
cuDNN 8.9.0-3 -> cuda12.1
cuDNN 8.9.4-7 -> cuda12.2
上記には気にしないと書いてはみたものの,気になるようならversion をあわせておいたほうが無難かも.
4 ANACONDA Navigator
https://www.anaconda.com/download#downloads
Linux Python 3.11 (2024.1現在)
64-Bit (x86) Installer (1015.6MB) をダウンロード
$ bash <ダウンロードした anacondaファイルのパス>
#--Enter--, --More-- が何度も登場するので space key で行送り
#Do you accept the lisence terms? [yes/no]
>>> yes
---
Press ENTER to confirm the location
>>> Enter key を押す -> インストールが始まる
#done installation finished の表示を確認しておく
You can undo this by running 'conda init --reverse $SHELL'? [yes|no]
>>> no
#pass を通す
$ export PATH=~/anaconda3/bin:$PATH
#.bashrcを更新
$ source ~/.bashrc
#インストール確認
$ conda -V
$ conda info
#conda: command not found -> インストール失敗(パスが通ってない)
5 ANACONDA Navigator ショートカットの作成
Anaconda Navigatorはショートカットが自動作成されない
terminal -> anaconda-navigator
(pass が通っていない場合は source ~/bin...../anaconda-navigator
/home//bin/anaconda-navigator を Run as a Program
などで起動するがどれも面倒で忘れてしまいそう
ショートカット作成
$ sudo nano /usr/share/applications/anaconda-navigator.desktop
# anaconda-navigator.desktop の内容
# <username> は自身の環境に合わせて修正
[Desktop Entry]
Version=1.0
Name=Anaconda-Navigator
Exec=/home/<username>/anaconda3/bin/anaconda-navigator
Icon=/home/<username>/anaconda3/lib/python3.11/site-packages/anaconda_navigator/app/icons/Icon1024.png
Terminal=false
Type=Application
# Save(Ctrl+S) Close (Ctrl+X)
# /usr/share/applications の中に anaconda-navigator.desktop ができる
# この時点で show applications 内にショートカットができている
# Desktop shortcut の作成
# <username> は自身の環境に合わせて修正
cp /usr/share/applications/anaconda-navigator.desktop /home/<usename>/Desktop/
# デスクトップ上にコピー > 右クリック > Allow Launching で有効に
6 VSCode 1.86.0
snap package を利用 (一番簡単だとおもう)
Or Ubuntu software にもありますね
$ sudo snap install --classic code
# anaconda navigator から起動する予定なのでショートカットの作成は必要なし
# Anaconda Navigator -> enviroment -> terminal では仮想環境が起動しない(Windows版とは違う)
# -> VSCode 内のterminal を使うことにする
7 GPU温度表示 - indicator-sensors
$ sudo apt-add-repository ppa:alexmurray/indicator-sensors
# press [ENTER]
$ sudo apt-get update
$ sudo apt-get install indicator-sensors
#起動
indicator-sensors
#エラーがでますが起動はしています(右上のtaskbar に "No active sensors"が現れているはず
Preferences...
☑Start automatically on login
Sensor Icon Label Enabled
#> nvidia などの表記を探して > をクリックして展開
必要な項目のEnabledに☑
Plugins -> ATIConfig これは Radeon系なので今回は必要なし
その他
VSCode から python 呼び出し時に (base)(xxxx) のような二重起動が発生してしまう場合
$ conda config --set auto_activate_base false
にて base の起動を止める
Reference