GPU導入

ここではFACE01でGPUのパワーが引き出せるよう設定を行います。
作業はUbuntu20.04をベースに行います。

アイキャッチ画像

機器に搭載されているGPUチップの種類からディスプレイドライバのバージョンや必要なライブラリのバージョンを、複数の選択肢の中から正しく選択する作業手順も併せて記載しました。

記載している情報は私が推奨する作業手順であり、正確な情報は「NVIDIA Accelerated Linux Graphics Driver README and Installation Guide」にあります。ご参照ください。

推奨する導入方法

Ubuntu 20.04でのデバイスドライバ/ライブラリ群導入手順は以下のようになります。なおCUDA Toolkit 12.0 Updateにともない、導入方法も変わっています。

公開鍵の取得とドライバ/ライブラリ群導入

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb

sudo dpkg -i cuda-keyring_1.0-1_all.deb

sudo apt-get update

sudo apt-get -y install cuda-12-0
## cuda-12-0をインストールすることにより、以下のパッケージもインストールされる
# cuda-toolkit-12-0
# nvidia-driver-525
# libcublas-12-0
## cuda-12-0をインストール指定してもlibcudnn8はインストールされない
sudo apt-get install -y libcudnn8
sudo apt-get install -y libcudnn8-dev

## バージョン固定
sudo apt-mark hold cuda-12-0
sudo apt-mark hold cuda-cccl-12-0
sudo apt-mark hold cuda-command-line-tools-12-0
sudo apt-mark hold cuda-compiler-12-0
sudo apt-mark hold cuda-cudart-12-0
sudo apt-mark hold cuda-cudart-dev-12-0
sudo apt-mark hold cuda-cuobjdump-12-0
sudo apt-mark hold cuda-cupti-12-0
sudo apt-mark hold cuda-cupti-dev-12-0
sudo apt-mark hold cuda-cuxxfilt-12-0
sudo apt-mark hold cuda-demo-suite-12-0
sudo apt-mark hold cuda-documentation-12-0
sudo apt-mark hold cuda-driver-dev-12-0
sudo apt-mark hold cuda-drivers
sudo apt-mark hold cuda-drivers-525
sudo apt-mark hold cuda-gdb-12-0
sudo apt-mark hold cuda-libraries-12-0
sudo apt-mark hold cuda-libraries-dev-12-0
sudo apt-mark hold cuda-nsight-12-0
sudo apt-mark hold cuda-nsight-compute-12-0
sudo apt-mark hold cuda-nsight-systems-12-0
sudo apt-mark hold cuda-nvcc-12-0
sudo apt-mark hold cuda-nvdisasm-12-0
sudo apt-mark hold cuda-nvml-dev-12-0
sudo apt-mark hold cuda-nvprof-12-0
sudo apt-mark hold cuda-nvprune-12-0
sudo apt-mark hold cuda-nvrtc-12-0
sudo apt-mark hold cuda-nvrtc-dev-12-0
sudo apt-mark hold cuda-nvtx-12-0
sudo apt-mark hold cuda-nvvp-12-0
sudo apt-mark hold cuda-opencl-12-0
sudo apt-mark hold cuda-opencl-dev-12-0
sudo apt-mark hold cuda-profiler-api-12-0
sudo apt-mark hold cuda-runtime-12-0
sudo apt-mark hold cuda-sanitizer-12-0
sudo apt-mark hold cuda-toolkit-12-0
sudo apt-mark hold cuda-toolkit-12-0-config-common
sudo apt-mark hold cuda-toolkit-12-config-common
sudo apt-mark hold cuda-toolkit-config-common
sudo apt-mark hold cuda-tools-12-0
sudo apt-mark hold cuda-visual-tools-12-0
sudo apt-mark hold dctrl-tools
sudo apt-mark hold default-jre
sudo apt-mark hold default-jre-headless
sudo apt-mark hold dkms
sudo apt-mark hold gds-tools-12-0
sudo apt-mark hold libcublas-12-0
sudo apt-mark hold libcublas-dev-12-0
sudo apt-mark hold libcufft-12-0
sudo apt-mark hold libcufft-dev-12-0
sudo apt-mark hold libcufile-12-0
sudo apt-mark hold libcufile-dev-12-0
sudo apt-mark hold libcurand-12-0
sudo apt-mark hold libcurand-dev-12-0
sudo apt-mark hold libcusolver-12-0
sudo apt-mark hold libcusolver-dev-12-0
sudo apt-mark hold libcusparse-12-0
sudo apt-mark hold libcusparse-dev-12-0
sudo apt-mark hold libegl-mesa0:i386
sudo apt-mark hold libegl1:i386
sudo apt-mark hold libgbm1:i386
sudo apt-mark hold libgles2:i386
sudo apt-mark hold libnpp-12-0
sudo apt-mark hold libnpp-dev-12-0
sudo apt-mark hold libnvidia-cfg1-525
sudo apt-mark hold libnvidia-common-525
sudo apt-mark hold libnvidia-compute-525
sudo apt-mark hold libnvidia-compute-525:i386
sudo apt-mark hold libnvidia-decode-525
sudo apt-mark hold libnvidia-decode-525:i386
sudo apt-mark hold libnvidia-encode-525
sudo apt-mark hold libnvidia-encode-525:i386
sudo apt-mark hold libnvidia-extra-525
sudo apt-mark hold libnvidia-fbc1-525
sudo apt-mark hold libnvidia-fbc1-525:i386
sudo apt-mark hold libnvidia-gl-525
sudo apt-mark hold libnvidia-gl-525:i386
sudo apt-mark hold libnvjitlink-12-0
sudo apt-mark hold libnvjitlink-dev-12-0
sudo apt-mark hold libnvjpeg-12-0
sudo apt-mark hold libnvjpeg-dev-12-0
sudo apt-mark hold libnvvm-samples-12-0
sudo apt-mark hold libopengl0:i386
sudo apt-mark hold libtinfo5
sudo apt-mark hold libwayland-server0:i386
sudo apt-mark hold nsight-compute-2022.4.1
sudo apt-mark hold nsight-systems-2022.4.2
sudo apt-mark hold nvidia-compute-utils-525
sudo apt-mark hold nvidia-dkms-525
sudo apt-mark hold nvidia-driver-525
sudo apt-mark hold nvidia-kernel-common-525
sudo apt-mark hold nvidia-kernel-source-525
sudo apt-mark hold nvidia-modprobe
sudo apt-mark hold nvidia-prime
sudo apt-mark hold nvidia-settings
sudo apt-mark hold nvidia-utils-525
sudo apt-mark hold openjdk-11-jre
sudo apt-mark hold openjdk-11-jre-headless
sudo apt-mark hold screen-resolution-extra
sudo apt-mark hold xserver-xorg-video-nvidia-525
sudo apt-mark hold libcudnn8-dev
sudo apt-mark hold libcudnn8


sudo apt-get install -y g++-8
sudo apt-get update
sudo apt-get upgrade -y

少し前とやり方が変わっています。(CUDA Toolkit 12.0 Update 1 Downloadsを参照ください。)

参考のため少し前のやり方を載せます。

# wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin

# mv cuda-ubuntu2004.pin \
#   /etc/apt/preferences.d/cuda-repository-pin-600

# apt-key adv --fetch-keys \
#   https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub

# add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"

# apt update && apt upgrade -y

# 推奨バージョンの確認
# ubuntu-drivers devices
# ドライバインストール
# ubuntu-drivers autoinstall

導入方法や公開鍵が変わっていますので注意してください。

作業手順の理解

NOTE:
記載されている各種バージョン番号などは当時のものです。適宜現在のバージョン番号などとお読み替え下さい。

必要となるライブラリやディスプレイドライバのバージョンを適切にインストールするには、以下に記載するステップを踏みます。

  1. 以下の情報を確認
    1. GPUカードのアーキテクチャ(microarchitecture)
    2. ディスプレイドライバのバージョン
    3. Compute Capabilityの数値
    4. CUDA Toolkitのバージョン
    5. cuDNNのバージョン
    6. 集めた情報を整理する
  2. 確認した情報をもとに導入
    1. ディスプレイドライバ
    2. CUDA Toolkit
    3. cuBLAS, cuDNN
  3. Pythonライブラリ再インストール

用語

簡単な用語の説明を記載します。正確な情報は上述の通り「NVIDIA Accelerated Linux Graphics Driver README and Installation Guide」をご参照ください。

アーキテクチャ

Nvidia社が出しているGPUの「世代」

アーキテクチャの例

GPU Compute Capability

そのGPUチップの性能を表した数値。「SM バージョン」というバージョン番号で表現されます。このバージョン番号は、GPUハードウェアでサポートされている機能を識別し現在のGPUカードで使用できるハードウェア機能や命令を判断するために使用されます。

Nvidia用ディスプレイドライバ

GPUを使用するためのドライバ

CUDA Toolkit

GPUを汎用目的に使用するために必要なライブラリ

cuDNN, cuBLAS

深層学習用ライブラリ, 行列計算用ライブラリ

情報を確認

アーキテクチャを調べるには

List of Nvidia graphics processing unitsからお使いのGPUカードを検索してください。例えばGeForce 1660tiならば以下の画像のように表示されますので「アーキテクチャ = Turing」と分かります。

アーキテクチャを確認する

ディスプレイドライバのバージョンを知るには

このURLにアクセスして持っているビデオカードやOSの種類を選択して検索ボタンを押すと、どのドライバが良いか結果を出してくれます。ダウンロードタイプは「製品ブランチ」を選んでください。

赤線が引いてある箇所をみると「515.76」であることが分かります。

GPU Compute Capabilityを知るには

GPUs supportedの項のテーブルから検索します。

Compute capabilityのテーブル

たとえばGeForce GTX 1660 Tiなら「7.5」であることが分かります。

CUDA Toolkitのバージョンを知るには

cuDNN Support Matrixを参照してアーキテクチャから調べます。下の図は「Turing」で調べた結果です。CUDA Compute CapabilityはGPU Compute Capabilityのことです。上述したとおり「7.5」なのでここでは複数のバージョンを選べるよということになります。

どれを選ぶかは上述した「ドライバのバージョン」を参考にします。

Table 3. CUDA Toolkit and Corresponding Driver Versionsを参照してください。

2022年10月30日時点のドキュメンテーション

ちなみにこのページは頻繁に更新されリンクも途切れやすくなっています。もしご自身のブックマークがリンク切れになった場合は「CUDA Toolkit Documentation」をキーワードとして検索してください。

リンク切れになった以前のドキュメンテーション
LINUX用ドライバとCUDA Toolkitのバージョン関係

上の図より、ディスプレイドライバ「515.76」に対応するCUDA ToolkitのバージョンはCUDA 11.7であることが分かりました。

cuDNNのバージョンを知るには

上述の「Table 1. Supported NVIDIA Hardware and CUDA Version」からcuDNNのバージョンは「8.6.0」ということが分かります。

Table 1. Supported NVIDIA Hardware and CUDA Version

集めた情報のまとめ

以上の作業から必要となるバージョンはこのようになります。

  • ディスプレイドライバのバージョン
    • 515.76
  • CUDA Toolkitのバージョン
    • 11.7
  • cuDNNのバージョン
    • 8.6.0

これをもとにそれぞれのインストールを行います。

もしインストールをした後で再び問題が発生するならディスプレイドライバのバージョンを下げてみてください。実際私の場合は以下の条件でインストールし直しました。

  • ディスプレイドライバのバージョン
    • 510.85.02
  • CUDA Toolkitのバージョン
    • 11.6
  • cuDNNのバージョン
    • 8.6.0

更新情報

2023年2月13日現在、Ubuntu 20.04のシステムアップデートにより必要となるドライバやライブラリのバージョンが変わりました。結論を先に記載します。

  • nvidia-driver-525
    • 525.85.12-0ubuntu1
  • libcudnn8
    • 8.8.0.121-1+cuda12.0
  • cuda-toolkit-12-0
    • 12.0.1-1
  • libcublas-12-0
    • 12.0.2.224-1

詳細

2. CPU Architecture and OS Requirementsの表と使用しているシステムを確認します。

$ uname -r
5.15.0-60-generic

$ gcc --version
gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


$ ldd --version
ldd (Ubuntu GLIBC 2.31-0ubuntu9.9) 2.31
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
作者 Roland McGrath および Ulrich Drepper。

1. GPU, CUDA Toolkit, and CUDA Driver Requirementsの表のとおりに必要なライブラリなどをインストールします。インストール方法は冒頭に記載したとおりです。

インストールが終わったら下のようにして確認しておくと良いでしょう。

nvidia-smi

Pythonライブラリの再インストール

GPUに対応させるためPythonライブラリの再インストールを行います。

requirements.txtから一括インストールする前にdlibが正しくインストールできるかチェックしてください。dlibが正しくインストールできればGPU関連ライブラリ・ドライバの導入が成功した証明になります。

# Deactivate
deactivate

# Remove venv dirs
rm -rf ~/bin/FACE01/bin
rm -rf ~/bin/FACE01/share
rm -rf ~/bin/FACE01/lib64
rm -rf ~/bin/FACE01/include
rm -rf ~/bin/FACE01/lib

# Remove pip cache dir
rm -rf ~/.cache/pip

# Re-Make virtual environment
python3 -m venv ./

# Activate
. bin/activate

# Upgrade modules pip, setuptools, wheel
pip install -U pip setuptools wheel

dlibのインストールは手動でビルドします。こちらのページをご参照下さい。

dlibが正しくインストールできたかチェックします。

$ cd bin/FACE01

$  ~/bin/FACE01  . bin/activate

(FACE01) 
$  ~/bin/FACE01  python
Python 3.8.10 (default, Jun 22 2022, 20:18:18) 
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dlib
>>> dlib.DLIB_USE_CUDA
True
>>> 

「True」と表示されたらOKです。

dlib.DLIB_USE_CUDAによるチェック

Falseと表示された場合はインストールしたバージョンが正しく動作していません。ディスプレイドライバのバージョンを下げてその場合の正しい組み合わせを試してみてください。

dlibのインストールチェックが正しく終了したら一括インストールを行います。

$ ~/bin/FACE01  pip install -r requirements.txt 
一括インストールの様子
Successfully built GPUtil memory-profiler pyqrcode
Installing collected packages: PySimpleGUI, pyqrcode, mpmath, mojimoji, GPUtil, flatbuffers, urllib3, typing_extensions, tornado, sympy, six, pyparsing, psutil, protobuf, Pillow, numpy, kiwisolver, idna, humanfriendly, fonttools, cycler, charset-normalizer, certifi, attrs, absl-py, snakeviz, requests, python-dateutil, packaging, opencv-python, opencv-contrib-python, nptyping, memory-profiler, contourpy, coloredlogs, onnxruntime, matplotlib, mediapipe
Successfully installed GPUtil-1.4.0 Pillow-9.1.1 PySimpleGUI-4.60.1 absl-py-1.3.0 attrs-22.1.0 certifi-2022.9.24 charset-normalizer-2.0.12 coloredlogs-15.0.1 contourpy-1.0.6 cycler-0.11.0 flatbuffers-22.10.26 fonttools-4.38.0 humanfriendly-10.0 idna-3.4 kiwisolver-1.4.4 matplotlib-3.6.1 mediapipe-0.8.10 memory-profiler-0.60.0 mojimoji-0.0.12 mpmath-1.2.1 nptyping-2.2.0 numpy-1.22.4 onnxruntime-1.12.0 opencv-contrib-python-4.6.0.66 opencv-python-4.6.0.66 packaging-21.3 protobuf-3.20.1 psutil-5.9.1 pyparsing-3.0.9 pyqrcode-1.2.1 python-dateutil-2.8.2 requests-2.28.0 six-1.16.0 snakeviz-2.1.1 sympy-1.11.1 tornado-6.2 typing_extensions-4.2.0 urllib3-1.26.9
(FACE01) 

上のように表示されたら一括インストール終了です。

サンプルスクリプトの実行

FACE01ライブラリが正しく動作するかサンプルスクリプトの動作検証をしてください。

~/bin/FACE01/ $ cd example/

(FACE01) 
~/bin/FACE01/example $ python ~/bin/FACE01/example/display_GUI_window.py
[2022-10-31 07:39:46,273] [face01lib.load_priset_image] [load_priset_image.py] [INFO] Loading npKnown.npz
菅義偉 
         similarity              99.1% 
         coordinate              (138, 240, 275, 104) 
         time                    2022,10,31,07,39,47,935344 
         output                   
 -------

麻生太郎 
         similarity              99.6% 
         coordinate              (125, 558, 261, 422) 
         time                    2022,10,31,07,39,47,935344 
         output                   
 -------

Driverだけ更新したい時

システムのアップデートの際、アップデートの項目に cuDNN が含まれていたとします。誤ってこれをアップデートのしてしまった場合、依存関係が破綻して CUDA が正常に動作しなくなることがあります。この場合、以下のように Driver だけをアップデートすることが出来ます。(ただしこの方法はお勧めはいたしません。ディスプレイドライバとCUDA関連ライブラリを全て削除してからそれらを再インストールする方法をお勧めします。)

CUDA 自体が動作しなくなった場合はCUDA が動作しなくなった時をご参照ください。

$ sudo apt-get remove nvidia-driver-510
$ sudo apt-get install nvidia-driver-515

この結果以下の出力を得ます。

$ sudo apt-get remove nvidia-driver-510 
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  dctrl-tools dkms libegl-mesa0:i386 libegl1:i386 libgbm1:i386 libgles2:i386 libnvidia-cfg1-510 libnvidia-common-510 libnvidia-compute-510:i386 libnvidia-decode-510
  libnvidia-decode-510:i386 libnvidia-encode-510 libnvidia-encode-510:i386 libnvidia-extra-510 libnvidia-fbc1-510 libnvidia-fbc1-510:i386 libnvidia-gl-510
  libnvidia-gl-510:i386 libopengl0:i386 libwayland-server0:i386 linux-headers-5.13.0-30-generic linux-hwe-5.13-headers-5.13.0-30 nvidia-compute-utils-510 nvidia-dkms-510
  nvidia-kernel-common-510 nvidia-kernel-source-510 nvidia-modprobe nvidia-prime nvidia-settings nvidia-utils-510 screen-resolution-extra xserver-xorg-video-nvidia-510
これを削除するには 'sudo apt autoremove' を利用してください。
以下のパッケージは「削除」されます:
  cuda-drivers-510 nvidia-driver-510
アップグレード: 0 個、新規インストール: 0 個、削除: 2 個、保留: 0 個。
この操作後に 1,324 kB のディスク容量が解放されます。
続行しますか? [Y/n]  Y

(データベースを読み込んでいます ... 現在 280811 個のファイルとディレクトリがインストールされています。)
cuda-drivers-510 (510.108.03-1) を削除しています ...
nvidia-driver-510 (510.108.03-0ubuntu1) を削除しています ...

$ sudo apt-get install nvidia-driver-515
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  libnvidia-common-510 nvidia-modprobe
これを削除するには 'sudo apt autoremove' を利用してください。
以下の追加パッケージがインストールされます:
  libnvidia-cfg1-515 libnvidia-common-515 libnvidia-compute-515 libnvidia-compute-515:i386 libnvidia-decode-515 libnvidia-decode-515:i386 libnvidia-encode-515
  libnvidia-encode-515:i386 libnvidia-extra-515 libnvidia-fbc1-515 libnvidia-fbc1-515:i386 libnvidia-gl-515 libnvidia-gl-515:i386 nvidia-compute-utils-515 nvidia-dkms-515
  nvidia-kernel-common-515 nvidia-kernel-source-515 nvidia-utils-515 xserver-xorg-video-nvidia-515
以下のパッケージは「削除」されます:
  libnvidia-cfg1-510 libnvidia-compute-510 libnvidia-compute-510:i386 libnvidia-decode-510 libnvidia-decode-510:i386 libnvidia-encode-510 libnvidia-encode-510:i386
  libnvidia-extra-510 libnvidia-fbc1-510 libnvidia-fbc1-510:i386 libnvidia-gl-510 libnvidia-gl-510:i386 nvidia-compute-utils-510 nvidia-dkms-510 nvidia-kernel-common-510
  nvidia-kernel-source-510 nvidia-utils-510 xserver-xorg-video-nvidia-510
以下のパッケージが新たにインストールされます:
  libnvidia-cfg1-515 libnvidia-common-515 libnvidia-compute-515 libnvidia-compute-515:i386 libnvidia-decode-515 libnvidia-decode-515:i386 libnvidia-encode-515
  libnvidia-encode-515:i386 libnvidia-extra-515 libnvidia-fbc1-515 libnvidia-fbc1-515:i386 libnvidia-gl-515 libnvidia-gl-515:i386 nvidia-compute-utils-515 nvidia-dkms-515
  nvidia-driver-515 nvidia-kernel-common-515 nvidia-kernel-source-515 nvidia-utils-515 xserver-xorg-video-nvidia-515
アップグレード: 0 個、新規インストール: 20 個、削除: 18 個、保留: 0 個。
333 MB のアーカイブを取得する必要があります。
この操作後に追加で 71.4 MB のディスク容量が消費されます。
続行しますか? [Y/n] Y
(データベースを読み込んでいます ... 現在 280742 個のファイルとディレクトリがインストールされています。)
xserver-xorg-video-nvidia-510 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-cfg1-510:amd64 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-encode-510:i386 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-decode-510:i386 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-compute-510:i386 (510.108.03-0ubuntu1) を削除しています ...
nvidia-utils-510 (510.108.03-0ubuntu1) を削除しています ...
nvidia-compute-utils-510 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-encode-510:amd64 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-decode-510:amd64 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-extra-510:amd64 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-fbc1-510:i386 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-fbc1-510:amd64 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-gl-510:amd64 (510.108.03-0ubuntu1) を削除しています ...
libnvidia-gl-510:i386 (510.108.03-0ubuntu1) を削除しています ...
nvidia-dkms-510 (510.108.03-0ubuntu1) を削除しています ...
Removing all DKMS Modules
Done.
INFO:Disable nvidia
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/dell_latitude
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/lenovo_thinkpad
update-initramfs: deferring update (trigger activated)
A modprobe blacklist file has been created at /etc/modprobe.d to prevent Nouveau
from loading. This can be reverted by deleting the following file:
/etc/modprobe.d/nvidia-graphics-drivers.conf

A new initrd image has also been created. To revert, please regenerate your
initrd by running the following command after deleting the modprobe.d file:
`/usr/sbin/initramfs -u`

*****************************************************************************
*** Reboot your computer and verify that the NVIDIA graphics driver can   ***
*** be loaded.                                                            ***
*****************************************************************************

INFO:Enable nvidia
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/put_your_quirks_here
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/dell_latitude
DEBUG:Parsing /usr/share/ubuntu-drivers-common/quirks/lenovo_thinkpad
Loading new nvidia-515.86.01 DKMS files...
Building for 5.15.0-60-generic
Building for architecture x86_64
Building initial module for 5.15.0-60-generic
Secure Boot not enabled on this system.
Done.

nvidia.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.15.0-60-generic/updates/dkms/

nvidia-modeset.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.15.0-60-generic/updates/dkms/

nvidia-drm.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.15.0-60-generic/updates/dkms/

nvidia-peermem.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.15.0-60-generic/updates/dkms/

nvidia-uvm.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.15.0-60-generic/updates/dkms/

depmod...

DKMS: install completed.
libnvidia-fbc1-515:amd64 (515.86.01-0ubuntu1) を設定しています ...
libnvidia-fbc1-515:i386 (515.86.01-0ubuntu1) を設定しています ...
nvidia-compute-utils-515 (515.86.01-0ubuntu1) を設定しています ...
警告: 指定されたホームディレクトリ /nonexistent にアクセスできません: No such file or directory
システムユーザー `nvidia-persistenced' (UID 129) を追加しています...
新しいグループ `nvidia-persistenced' (GID 139) を追加しています...
新しいユーザー `nvidia-persistenced' (UID 129) をグループ `nvidia-persistenced' に追加しています...
ホームディレクトリ `/nonexistent' を作成しません。
libnvidia-cfg1-515:amd64 (515.86.01-0ubuntu1) を設定しています ...
xserver-xorg-video-nvidia-515 (515.86.01-0ubuntu1) を設定しています ...
libnvidia-encode-515:amd64 (515.86.01-0ubuntu1) を設定しています ...
libnvidia-encode-515:i386 (515.86.01-0ubuntu1) を設定しています ...
libnvidia-gl-515:amd64 (515.86.01-0ubuntu1) を設定しています ...
libnvidia-gl-515:i386 (515.86.01-0ubuntu1) を設定しています ...
nvidia-driver-515 (515.86.01-0ubuntu1) を設定しています ...
libc-bin (2.31-0ubuntu9.9) のトリガを処理しています ...
man-db (2.9.1-1) のトリガを処理しています ...
dbus (1.12.16-2ubuntu2.3) のトリガを処理しています ...
initramfs-tools (0.136ubuntu6.7) のトリガを処理しています ...
update-initramfs: Generating /boot/initrd.img-5.15.0-60-generic

  

出力結果は要点だけを抜粋しています。この後再起動してください。

CUDA が動作しなくなってしまった時

CUDA が動作しなくなった時 をご参照ください。

DlibがCUDAを利用できない時

dlib.DLIB_USE_CUDA が Falseになる場合の対処法をご参照ください。

まとめ

GPUを使った開発環境を整えるのはとっつきにくいと思われるかもしれませんが、慣れてしまえば突然のトラブルにも対処できます。ぜひ挑戦してみてください。

最後までお読み頂きありがとうございました。

アイキャッチ画像