Библиотеки Cuda не найдены для cuda 11 для Ubuntu 20.04

Я использую виртуальную машину Nvidia в Azure с Ubuntu 20.04. У меня уже были установлены nvidia и cuda, но при запуске моей программы все равно показывалось, что библиотеки не найдены.

nvidia-smi

      +-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.103.01   Driver Version: 470.103.01   CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla T4            Off  | 00000001:00:00.0 Off |                  Off |
| N/A   32C    P0    25W /  70W |      0MiB / 16127MiB |      6%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

Это ошибка, которую я вижу для нескольких библиотек cuda:

      Could not load dynamic library 'libnvinfer.so.6'; dlerror: libnvinfer.so.6: cannot open shared object file: No such file or directory
2022-05-02 05:33:53.131224: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'libnvinfer_plugin.so.6'; dlerror: libnvinfer_plugin.so.6: cannot open shared object file: No such file or directory
2022-05-02 05:33:53.131235: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:30] Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properly.
Could not load dynamic library 'libcudnn.so.7'; dlerror: libcudnn.so.7: cannot open shared object file: No such file or directory
2022-05-02 05:33:55.738515: W tensorflow/core/common_runtime/gpu/gpu_device.cc:1592] Cannot dlopen some GPU libraries. 

Я не уверен, вызвана ли эта ошибка ротацией ключа GPG или чем-то еще, поскольку я также пытался установить драйвер отдельно, но он продолжал выдавать ошибку отсутствия драйверов.

Я также попробовал:

      sudo apt-get -y install cuda

Reading package lists... Done

Building dependency tree

Reading state information... Done

Some packages could not be installed. This may mean that you have

requested an impossible situation or if you are using the unstable

distribution that some required packages have not yet been created

or been moved out of Incoming.

The following information may help to resolve the situation:

The following packages have unmet dependencies:

cuda : Depends: cuda-11-6 (>= 11.6.2) but it is not going to be installed

E: Unable to correct problems, you have held broken packages.

Я использую tensorflow-gpu-2.1.3, поскольку это требование моей программы.

Я также разместил это на форуме NVIDIA.

1 ответ

Что могу предложить в качестве вариантов решения:

  1. Загуглите свой вопрос с разными комбинациями. (Эта проблема также может быть связана с правильным путем к драйверу libcudnn.so.7, что, вероятно, и есть).libcudnn.so.7видно в дампе ошибок.CUDA Version: 11.4видно в результатеnvidia-smiдействительно то же самое? Вы должны быть в этом уверены.

  2. Используя готовый плагин nvidia-docker, вы можете найти готовые и работающие контейнеры tensorflow, torch и т. д. Электрический токnvidi-smidump указывает, что это возможно.

  3. Можно иметь более стабильные и полные среды разработки с различными системами упаковки и конфигурации, такими как anaconda и miniconda. При необходимости вы можете иметь 3 разные версии TF и ​​Cuda, используя среды.

Другие вопросы по тегам