У меня Ubuntu 18.04. Python 3.7.3, Tensorflow 2.0.0
вот моя версия cuda:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Nov_run sudo apt-get install cuda
21:07:56_CDT_2017
Cuda compilation tools, release 9.1, V9.1.85
Мой компьютер - UX430UQ, графическая карта - GeForce 940MX.
Вот результат nvidia-smi:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.87.01 Driver Version: 418.87.01 CUDA Version: 10.1 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce 940MX On | 00000000:01:00.0 Off | N/A |
| N/A 45C P0 N/A / N/A | 283MiB / 2004MiB | 9% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1014 G /usr/lib/xorg/Xorg 24MiB |
| 0 1164 G /usr/bin/gnome-shell 47MiB |
| 0 1440 G /usr/lib/xorg/Xorg 123MiB |
| 0 1615 G /usr/bin/gnome-shell 84MiB |
+-----------------------------------------------------------------------------+
Вот результат, когда я run sudo apt-get install cuda
:
Reading package lists...
Building dependency tree...
Reading state information...
cuda is already the newest version (10.1.243-1).
0 upgraded, 0 newly installed, 0 to remove and 138 not upgraded.
Вот результат, когда я запустил tf.test.is_gpu_available()
2019-10-08 21: 04: 37.186069: I tensorflow / stream_executor / cuda / cuda_gpu_executor.cc: 1006] успешное чтение узла NUMA из SysFS имело отрицательное значение (-1), но должен быть хотя бы один узел NUMA, поэтому возврат Нулевой узел NUMA
2019-10-08 21: 04: 37.188434: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1618] Найдено устройство 0 со свойствами:
имя: GeForce 940MX основной: 5 второстепенный: 0 memoryClockRate (ГГц): 1,2415
pciBusID: 0000: 01: 00.0
2019-10-08 21:04: 37.188863: W tensorflow / stream_executor / platform / default / dso_loader.cc: 55] Не удалось загрузить динамическую библиотеку libcudart.so.10.0; dlerror: libcudart.so.10.0: невозможно открыть файл общих объектов: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
2019-10-08 21:04: 37.189156: W tensorflow / stream_executor / platform / default / dso_loader.cc: 55] Не удалось загрузить динамическую библиотеку libcublas.so.10.0; dlerror: libcublas.so.10.0: невозможно открыть файл общих объектов: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
2019-10-08 21:04: 37.189426: W tensorflow / stream_executor / platform / default / dso_loader.cc: 55] Не удалось загрузить динамическую библиотеку libcufft.so.10.0; dlerror: libcufft.so.10.0: невозможно открыть файл общих объектов: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
2019-10-08 21:04: 37.189687: W tensorflow / stream_executor / platform / default / dso_loader.cc: 55] Не удалось загрузить динамическую библиотеку libcurand.so.10.0; dlerror: libcurand.so.10.0: невозможно открыть файл общих объектов: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
2019-10-08 21:04: 37.189946: W tensorflow / stream_executor / platform / default / dso_loader.cc: 55] Не удалось загрузить динамическую библиотеку libcusolver.so.10.0; dlerror: libcusolver.so.10.0: невозможно открыть файл общих объектов: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
2019-10-08 21:04: 37.190202: W tensorflow / stream_executor / platform / default / dso_loader.cc: 55] Не удалось загрузить динамическую библиотеку libcusparse.so.10.0; dlerror: libcusparse.so.10.0: невозможно открыть файл общих объектов: нет такого файла или каталога; LD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
2019-10-08 21: 04: 37.190236: I tensorflow / stream_executor / platform / default / dso_loader.cc: 44] Успешно открыта динамическая библиотека libcudnn.so.7
2019-10-08 21: 04: 37.190244: W tensorflow / core / common_runtime / gpu / gpu_device.cc: 1641] Не удается открыть некоторые библиотеки графического процессора. Пожалуйста, убедитесь, что недостающие библиотеки, упомянутые выше, установлены правильно, если вы хотите использовать графический процессор. Следуйте руководству на https://www.tensorflow.org/install/gpu, чтобы узнать, как загрузить и установите необходимые библиотеки для вашей платформы.
Пропуск регистрации устройств с графическим процессором ...
2019-10-08 21: 04: 37.190261: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1159] Устройство соединяет StreamExecutor с матрицей границ силы 1:
2019-10-08 21: 04: 37.190268: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1165] 0
2019-10-08 21: 04: 37.190276: I tensorflow / core / common_runtime / gpu / gpu_device.cc: 1178] 0: N
Could not load dynamic library 'libcudart.so.10.0'
, 2. Ваша установленная версия CUDA выглядит как 9.1:Cuda compilation tools, release 9.1, V9.1.85
, и 3. вашLD_LIBRARY_PATH
указывает на CUDA 8.0:LD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
Во многом из этого, вероятно, можно будет разобраться, если вы выполните тщательная работа по установке CUDA. Руководство по установке CUDA 10.0 linux находится здесь а>. Вам следует начать с правильной установки CUDA 10.0. - person Robert Crovella   schedule 08.10.2019PATH
иLD_LIBRARY_PATH
, чтобы использовать его, что описано в руководстве по установке CUDA linux, которое я уже связал (шаг 7). Однако ваш TF ожидает CUDA 10.0, и вы не можете использовать CUDA 10.1 в качестве замены / замены CUDA 10.0 для TF. - person Robert Crovella   schedule 08.10.2019export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
и 2)export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
. Результат дляecho $LD_LIBRARY_PATH
-/usr/local/cuda-10.1/lib64
, но tf.test.is_gpu_available () по-прежнему говоритLD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
. Кроме того, он говоритcuda is already the newest version (10.1.243-1).
, когда я запускаюsudo apt-get install cuda
. (Я только что отредактировал это в вопросе). Что мне делать с CUDA 10.1 против CUDA 10.0 для TF? - person yew onn   schedule 08.10.2019export PATH=/usr/local/cuda-10.1/bin:/usr/local/cuda-10.1/NsightCompute-2019.1${PATH:+:${PATH}}
nvcc --version
теперь показываетCuda compilation tools, release 10.1, V10.1.243
. Однако при выполненииtf.test.is_gpu_available()
по-прежнему отображаетсяLD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64
, даже если вывод echo $ LD_LIBRARY_PATH равен/usr/local/cuda-10.0/lib64
- person yew onn   schedule 08.10.2019sudo apt-get install cuda-10-0
. TF, очевидно, имеет некоторую среду, такую как conda, из которой он забирает неправильныйLD_LIBRARY_PATH
. - person Robert Crovella   schedule 08.10.2019