概要
UbuntuでのDeep Learning環境構築が、
OSやNVIDIA driverのバージョンアップにより簡単にできるようになってきたため
2022/01 時点での状況でのインストール方法を備忘録的に記載します。
過去にも、 RTX 3000 シリーズや CUDA 10 系のインストール方法の記事を記載しています。
処理中にフリーズした場合は、こちらの記事も参照ください.
本記事の記載内容で、RTX 3000シリーズでも動作することは確認できております。
https://qiita.com/k_ikasumipowder/items/e711186c329b36f53833
https://qiita.com/k_ikasumipowder/items/5e88ec45f958c35e05ed
上記は、過去のCUDAバージョンや他のCUDAバージョン等のインストール時に有用なため、別記事として作成して、残しております。
初期設定
主要なライブラリのインストールを行います。
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -y vim csh flex gfortran g++ \
cmake xorg-dev patch zlib1g-dev libbz2-dev \
libboost-all-dev openssh-server libcairo2 \
libcairo2-dev libeigen3-dev lsb-core \
lsb-base net-tools network-manager \
git xclip gdebi-core libffi-dev \
make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm \
libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev
# 必要な場合
sudo apt install -y python-openssl
sudo apt update
sudo apt upgrade
任意 pyenv のインストール
Python のバージョンを切り替える際に、 pyenv を利用したい方はここでインストールを行います。
不要な方は、デフォルトのPythonのバージョンを確認しておきましょう
インストールしない方は、以降の手順での、 python
を python3
、 pip
を pip3
に置き換える必要があります。
$ python3 -V
Python 3.10.6
pyenv install 手順
※最近 PATH を通す内容が変わったので気をつけます。
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
# ~/.bashrc にPATHを通す (最近内容が変わりました。 2021/05 あたり?)
echo '#.pyenv setting' >> ~/.bashrc
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init --path)"' >> ~/.bashrc
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bashrc
source ~/.bashrc
必要なPythonバージョンをインストール
あまりにも新しいバージョンは、主要なライブラリが対応していないため、少し古いものがおすすめです。
$ pyenv install 3.11.1
$ pyenv global 3.11.1
$ pyenv rehash
$ python -V
Python 3.11.1
nvidia-driver, CUDA 等のインストール
# PATH を通す
echo 'export PATH="/usr/local/cuda/bin:$PATH"' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/extras/CUPTI/lib64' >> ~/.bashrc
# NVIDIA package リポジトリを追加
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /"
sudo apt-get update
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
sudo apt install -y ./nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
sudo apt-get update
wget https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/libnvinfer7_7.1.3-1+cuda11.0_amd64.deb
sudo apt install -y ./libnvinfer7_7.1.3-1+cuda11.0_amd64.deb
sudo apt-get update
# CUDA 11.0 系のライブラリをインストール
# CUDA 11.3 や CUDA 11.4 をインストールしたい場合、ここで指定します。
sudo apt-get install -y --no-install-recommends \
cuda-11-8 \
libcudnn8=8.6.0.163-1+cuda11.8 \
libcudnn8-dev=8.6.0.163-1+cuda11.8
# 再起動を行い、再起動後に nvidia-smi を実行します。
nvidia-smi
sudo apt-get install -y --no-install-recommends \
libnvinfer8 \
libnvinfer-dev \
libnvinfer-plugin8
以前に比べて短い手順で install できるようになりました。