【第8回】WSL2にUbuntu 22.04 LTSを導入する(cuDNNとNCCLをインストールする)

公開日:2022年5月5日
最終更新日:2022年8月20日

はじめに

MXNetを使うためにUbuntu 22.04 LTSにcuDNNとNCCLをインストールしました。

手順

CUDA toolkitのインストール

まずはCUDA toolkit 11.4をインストールします。

手順は以前PyTorchを動かした時と同じです。
touch-sp.hatenablog.com

警告(エラー?)

以下のような警告(エラー?)が出ます。

/sbin/ldconfig.real: /usr/lib/wsl/lib/libcuda.so.1 is not a symbolic link

対応

PyTorchを動かした時には問題にならなかったのですが、今回は対応しておかないとMXNetが動きませんでした。

sudo ln -s /usr/lib/wsl/lib/libcuda.so.1 /usr/local/cuda/lib64/libcuda.so

この後いったんWSL2を再起動して下さい。


ちなみにこの対応は後から行っても問題ありません。
対応しないままMXNetを動かそうとすると以下のようなエラーが出ました。

Could not load library libcudnn_cnn_infer.so.8. Error: libcuda.so: cannot open shared object file: No such file or directory

cuDNNのインストール

PyTorchを動かすときはcuDNNのインストールは不要でした。

MXNetを動かすときにはインストールが必要です。

NVIDIA公式から「cudnn-local-repo-ubuntu2204-8.5.0.96_1.0-1_amd64.deb」をダウンロードしてからインストールしました。(ダウンロードにはアカウントが必要です)

sudo dpkg -i cudnn-local-repo-ubuntu2204-8.5.0.96_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-ubuntu2204-8.5.0.96/cudnn-local-7ED72349-keyring.gpg /usr/share/keyrings/
sudo apt update
sudo apt install libcudnn8
sudo apt install libcudnn8-dev

NCCLのインストール

MXNetを動かすときにはNCCLも必要になります。

NVIDIA公式通りにインストールしました。

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb
sudo dpkg -i cuda-keyring_1.0-1_all.deb
sudo apt update
sudo apt install libnccl2=2.13.4-1+cuda11.7 libnccl-dev=2.13.4-1+cuda11.7

結果

CUDA toolkit 11.4をインストールしていますがmxnet-cu112が動きました。

動作確認は以下のスクリプトで行っています。
touch-sp.hatenablog.com
touch-sp.hatenablog.com
touch-sp.hatenablog.com

記事一覧

「WSL2にUbuntu 22.04 LTSを導入する」シリーズの記事一覧はこちら