概要
下記の良記事とやってる内容はほぼ同じですが、pip で少しだけ手順を簡略化。
違いとしては
- CUDA のインストールは、ubuntuの場合
apt
でやる - dlib のコンパイルは
pip
でやる - gcc-8 を使う (cuDNN8 が gcc-9 以上に対応してなかったため)
依存パッケージのインストール
まずは CUDA などをインストールする。Ubuntuでは
sudo apt install nvidia-cuda-toolkit cmake gcc-8
次に、cuDNN をインストールする。apt
で導入できないので、公式サイトから入手する。上で入れた nvidia-cuda-toolkit のバージョンを確認し、それに対応した deb パッケージをダウンロードしてインストールする。例:
sudo dpkg -i libcudnn8_8.0.5.39-1+cuda10.1_amd64.deb libcudnn8-dev_8.0.5.39-1+cuda10.1_amd64.deb
(Ubuntu以外では別の方法に適宜変えてください。)
dlib のコンパイルとインストール
Python の pip
でやる。
CC=gcc-8 python3 -m pip install --verbose --force-reinstall --no-binary :all: dlib
(verbose は無くても良いけど、ログ確認用に一応付けた。)
確認
python を起動して以下を入力する。
>>> import dlib
>>> dlib.DLIB_USE_CUDA
True
が返るはずだが、もし何か失敗して cuda が無効なら False
が返る。
余談
- Ubuntu の libdlib-dev とかと両方入れたらどうなるかは確認してない
- メインで使っている Arch Linux 向けの手順も書こうと思ってたけど、既に python-dlib-cuda パッケージがあった