Dans cet article, nous installerons le pilote GPU de NVIDIA, CUDA10.1, cuDNN7.6.5, tensorflow 2.3.0 dans l'environnement ubuntu 18.04. L'environnement est le suivant. GPU : GTX1060 OS : Ubuntu18.04 Python : 3.6.9
** La procédure de référence suivante est un exemple, veuillez donc l'utiliser comme référence et à vos propres risques. ** ** De plus, comme je ne suis pas ingénieur, certaines notations sont difficiles à lire, mais pardonnez-moi.
Jusqu'à présent, j'apprenais avec tensorflow1.xx + keras, mais j'étais également intéressé par tensorflow2, j'ai donc décidé de passer à tensorflow2 en considérant l'avenir. En passant, le GPU utilisé sera remplacé par la génération Ampere à l'avenir. CUDA11 et cuDNN8 sont requis dans la génération Ampère, et à partir de novembre 2020, il est dit que l'opération a été confirmée avec tensorflow-nightly (2.4.0rc), mais il semble qu'elle ne soit pas prise en charge dans la version officielle.
Si vous souhaitez utiliser des GPU pour accélérer l'apprentissage, vous devez faire attention aux versions de tensorflow, CUDA et cuDNN. Voir Site officiel de Tensorflow. Lors de l'installation de tensorflow 2.3.0 comme indiqué ci-dessous, cuDNN doit être 7,6 et CUDA doit être 10,1. Notez en particulier que CUDA doit être 10.1, pas 10.1 ou supérieur.
Cet article est basé sur ce qui suit.
-Si le pilote NVIDIA et CUDA sont installés, supprimez-les avec la commande suivante.
sudo apt --purge remove nvidia-*
sudo apt --purge remove cuda-*
-Le pilote GPU de NVIDIA peut être installé en utilisant apt avec la commande suivante.
Dans mon environnement, l'installation a réussi sans désactiver le pilote par défaut ubuntu appelé nouveau.
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
ubuntu-drivers devices
Ici, vous verrez une liste des versions installables sur la console.
Dans mon environnement en novembre 2020, nvidia-driver-455 était recommandé.
sudo apt install nvidia-driver-<version>
(Remarque: pour
Entrez nvidia-smi
et si la version spécifiée est affichée, elle réussit.
Téléchargez le fichier deb CUDA à partir du [site NVIDIA](https://developer.nvidia.com/cuda-10.1-download-archive-base?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=deblocal "Site NVIDIA" Faire. Après avoir déplacé vers le répertoire téléchargé, installez-le avec la commande suivante. ** La dernière commande est le point! (La raison sera décrite plus tard) **
sudo dpkg -i cuda-repo-ubuntu1804-10-1-local-10.1.105-418.39_1.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda-toolkit-<version>
Le site officiel de NVIDIA indique sudo apt-get install cuda
, mais si vous faites cela, la version du pilote GPU ne changera pas et vous risquez de vous retrouver avec un environnement involontaire.
export PATH="/usr/local/cuda/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"
Entrez nvcc -V
sur la console et il s'affichera comme indiqué ci-dessous.
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Fri_Feb__8_19:08:17_PST_2019
Cuda compilation tools, release 10.1, V10.1.105
Il semble que CUDA a deux API, un runtime et une API de pilote, et il semble qu'il n'y ait pas de problème même si les versions de CUDA affichées par nvidia -smi
et nvcc -V
sont différentes. J'ai eu l'expérience de répéter l'installation afin de faire correspondre ces versions, mais au final, j'ai trouvé qu'il n'y avait aucun problème à utiliser tensorflow même si les versions sont différentes.
(Veuillez me dire si la reconnaissance est différente.)
Si tout va bien, c'est presque fini.
Vous pouvez télécharger cuDNN gratuitement, mais vous devez vous inscrire en tant que membre sur le site NVIDIA avant de procéder au téléchargement.
Cliquez sur Versions cuDNN archivées pour trouver le cuDNN précédent.
Cette fois, téléchargez les fichiers Deb de cuDNN7.6.5 Runtime Library, Developer Library et des exemples de code pour Ubuntu 18.04.
Exécutez ce qui suit dans le répertoire téléchargé.
sudo dpkg -i libcudnn7_7.6.5.32-1+cuda10.1_amd64.deb
sudo dpkg -i libcudnn7-dev_7.6.5.32-1+cuda10.1_amd64.deb
sudo dpkg -i libcudnn7-doc_7.6.5.32-1+cuda10.1_amd64.deb
Exécutez l'un des exemples de code et s'il n'y a pas d'erreur, c'est OK.
cp -r /usr/src/cudnn_samples_v7/ $HOME
cd $HOME/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN
Un autre souffle. Tensorflow2 nécessite une mise à niveau de pip3.
python3 -m pip install --upgrade pip
Installez Tensorflow. Si vous ne spécifiez pas la version, une version non souhaitée sera installée. Remplacez la partie python3 -m pip install tensorflow==<version>
import tensorflow as tf
tf.__version__
Si la version prévue est affichée, elle réussit.
Nous avons construit un environnement d'apprentissage à l'aide de GPU par Gtensorflow sur Ubuntu 18.04. Je voudrais mettre à jour à nouveau cet article après l'avoir remplacé par la série RTX30 de génération Ampère. Puisque l'ingénieur n'est pas mon activité principale, il y a de nombreux points que je ne peux pas atteindre, mais j'espère que cela sera utile.
Recommended Posts