Python >> Tutoriel Python >  >> Python Tag >> TensorFlow

Impossible de charger la bibliothèque dynamique 'cudart64_101.dll' sur l'installation de tensorflow CPU uniquement

Tensorflow 2.1+

Que se passe-t-il ?

Avec la nouvelle version 2.1 de Tensorflow, la valeur par défaut tensorflow Le package pip contient à la fois les versions CPU et GPU de TF. Dans les versions précédentes de TF, ne pas trouver les bibliothèques CUDA émettait une erreur et levait une exception, alors que maintenant la bibliothèque recherche dynamiquement la version correcte de CUDA et, si elle ne la trouve pas, émet l'avertissement (Le W au début représente les avertissements, les erreurs ont un E (ou F pour les erreurs fatales) et revient en mode CPU uniquement. En fait, cela est également écrit dans le journal sous la forme d'un message d'information juste après l'avertissement (notez que si vous avez un niveau de journal minimum supérieur à celui par défaut, vous ne verrez peut-être pas les messages d'information). Le journal complet est (c'est moi qui souligne):

2020-01-20 12:27:44.554767 : W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Impossible de charger la bibliothèque dynamique 'cudart64_101.dll' ; dlerror :cudart64_101.dll introuvable

2020-01-20 12:27:44.554964 :I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignorer le dlerror cudart ci-dessus si vous n'avez pas de GPU configuré sur votre machine.

Dois-je m'inquiéter ? Comment puis-je résoudre ce problème ?

Si vous n'avez pas de GPU compatible CUDA sur votre machine, ou si vous ne vous souciez pas de ne pas avoir d'accélération GPU, ne vous inquiétez pas. Si, par contre, vous avez installé tensorflow et que vous vouliez une accélération GPU, vérifiez votre installation CUDA (TF 2.1 nécessite CUDA 10.1 , pas 10.2 ou 10.0).

Si vous voulez simplement vous débarrasser de l'avertissement, vous pouvez adapter le niveau de journalisation de TF pour supprimer les avertissements, mais cela pourrait être exagéré, car cela fera taire tous avertissements.

Tensorflow 1.X ou 2.0 :

Votre configuration CUDA est cassée, assurez-vous d'avoir la bonne version installée.


Pour installer les prérequis pour la prise en charge du GPU dans TensorFlow 2.1 :

  1. Installez vos derniers pilotes GPU.
  2. Installer CUDA 10.1.
    • Si le programme d'installation de CUDA signale "vous installez une ancienne version du pilote", vous pouvez choisir une installation personnalisée et désélectionner certains composants. En effet, notez que les logiciels fournis avec CUDA, y compris GeForce Experience, PhysX, un pilote d'affichage et l'intégration de Visual Studio ne sont pas requis par TensorFlow.
    • Notez également que TensorFlow nécessite une version spécifique du kit d'outils CUDA, sauf si vous créez à partir de la source ; pour TensorFlow 2.1 et 2.2, il s'agit actuellement de la version 10.1.
  3. Installez cuDNN.
    1. Téléchargez cuDNN v7.6.4 pour CUDA 10.1. Pour cela, vous devrez vous inscrire au programme pour développeurs NVIDIA.
    2. Décompressez dans un emplacement approprié et ajoutez le répertoire bin à votre PATH.
  4. Installer tensorflow avant le pip install tensorflow .
  5. Vous devrez peut-être redémarrer votre PC.

TensorFlow 2.3.0 fonctionne bien avec CUDA 11. Mais vous devez installer tf-nightly-gpu (après avoir installé tensorflow et CUDA 11) :https://pypi.org/project/tf-nightly-gpu/

Essayez :

pip install tf-nightly-gpu

Ensuite, vous recevrez le message dans votre console :

I tensorflow/stream_executor/platform/default/dso_loader.cc:48] Successfully opened dynamic library cudart64_110.dll