Tensorflow: Почему мой tensorflow-gpu работает только на процессоре? Ubuntu

Созданный на 18 авг. 2017  ·  41Комментарии  ·  Источник: tensorflow/tensorflow

Системная информация

  • Платформа ОС и распространение : Linux Ubuntu 16.04.
  • * TensorFlow установлен из * : pip3 install tensorflow-gpu
  • Версия TensorFlow: ('v1.1.0-rc0-61-g1ec6ed5', '1.1.0')
  • Версия Python: Python 3.5.2
  • Версия CUDA / cuDNN : инструменты компиляции Cuda, выпуск 8.0, V8.0.61

Мой tensorflow-gpu работает только на процессоре, как это исправить?
Я уже пробовал установить
CUDA_DEVICE_VISIBLE=all my gpus Но не вышло.

Затем я попытался использовать этот код:
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
Результат следующий:
Device mapping: no known devices.
2017-08-18 16:44:44.654177: I tensorflow/core/common_runtime/direct_session.cc:300] Device mapping:
Тогда ничего. Карта не выводится.
Я также пытался установить его с помощью virtualenv и запустить программу в virtualenv или переустановить, но все еще не работает.
Почему это происходит? Как я могу это исправить?

Самый полезный комментарий

Я заметил, что использование pip install tensorflow-gpu также устанавливает tensorflow как зависимость, но pip install tensorflow-gpu==1.2.1 не демонстрирует такого поведения. Это проблема с выпуском 1.3 или я что-то полностью упустил?

Все 41 Комментарий

Возможно, вы неправильно установили драйвер CUDA.

Что на выходе:
$nvcc -V
а также
$nvidia-smi

Перейдите в папку с образцами CUDA и запустите сценарий ./deviceQuery чтобы проверить, обнаруживает ли ваша система вашу видеокарту.

Я заметил, что использование pip install tensorflow-gpu также устанавливает tensorflow как зависимость, но pip install tensorflow-gpu==1.2.1 не демонстрирует такого поведения. Это проблема с выпуском 1.3 или я что-то полностью упустил?

Еще кое-что проверить: установить Tensorflow из исходников (с Bazel). Я так и сделал, и он запустил процессы на GPU.

@ArturoDeza

Я не думаю, что это проблема. Поскольку тензорный поток все время работал правильно, прежде чем я по какой-то причине его удалил. (Причина в том, что как-то только оптимизатор SGD не работает в keras, в то время как другие оптимизаторы работают хорошо.) Однако, когда я пытаюсь переустановить тензорный поток, эта проблема обнаруживается.
Вывод $nvcc -V :
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61

Вывод nvidia-smi :
`| NVIDIA-SMI 375.66 Версия драйвера: 375.66 |
| ------------------------------- + ----------------- ----- + ---------------------- +
| Имя GPU Persistence-M | Bus-Id Disp.A | Неустойчивый Uncorr. ECC |
| Fan Temp Perf Pwr: Использование / Крышка | Использование памяти | GPU-Util Compute M. |
| =============================== + ================= ===== + ====================== |
| 0 GeForce GTX 1080 выключена | 0000: 04: 00.0 Выкл. | N / A |
| 0% 24C P8 11 Вт / 180 Вт | 113MiB / 8114MiB | 0% По умолчанию |
+ ------------------------------- + ----------------- ----- + ---------------------- +
| 1 GeForce GTX 1080 выкл. | 0000: 05: 00.0 Выкл. | N / A |
| 0% 25C P8 6 Вт / 180 Вт | 2MiB / 8114MiB | 0% По умолчанию |
+ ------------------------------- + ----------------- ----- + ---------------------- +
| 2 GeForce GTX 1080 выключена | 0000: 08: 00.0 Выкл. | N / A |
| 0% 26C P8 6 Вт / 180 Вт | 2MiB / 8114MiB | 0% По умолчанию |
+ ------------------------------- + ----------------- ----- + ---------------------- +
| 3 GeForce GTX 1080 выкл. | 0000: 09: 00.0 Выкл. | N / A |
| 0% 26C P8 6 Вт / 180 Вт | 2MiB / 8114MiB | 0% По умолчанию |
+ ------------------------------- + ----------------- ----- + ---------------------- +
| 4 GeForce GTX 1080 выкл. | 0000: 85: 00.0 Выкл. | N / A |
| 0% 24C P8 6 Вт / 180 Вт | 2MiB / 8114MiB | 0% По умолчанию |
+ ------------------------------- + ----------------- ----- + ---------------------- +
| 5 GeForce GTX 1080 Off | 0000: 86: 00.0 Выкл. | N / A |
| 0% 28C P8 6 Вт / 180 Вт | 2MiB / 8114MiB | 0% По умолчанию |
+ ------------------------------- + ----------------- ----- + ---------------------- +
| 6 GeForce GTX 1080 выкл. | 0000: 89: 00.0 Выкл. | N / A |
| 0% 26C P8 6 Вт / 180 Вт | 2MiB / 8114MiB | 0% По умолчанию |
+ ------------------------------- + ----------------- ----- + ---------------------- +
| 7 GeForce GTX 1080 выкл. | 0000: 8A: 00.0 Выкл. | N / A |
| 0% 27C P8 6 Вт / 180 Вт | 2MiB / 8114MiB | 0% По умолчанию |
+ ------------------------------- + ----------------- ----- + ---------------------- +

`

@mykalu
О мой Бог! Оно работает! Tensorflow работает на графическом процессоре.
Большое тебе спасибо.
Возможно, последняя версия tensorflow (1.3.1) несовместима с моим CUDA

Я столкнулся с той же проблемой (ubuntu16.04).
Как сказал микалу-сан, мой «pip install tensorflow-gpu» также установил tensorflow.

такая же проблема для меня, я использую тензорный поток (1.3.0)

@ vell001
попробуйте использовать это
pip install tensorflow-gpu==1.2.1

Как сказал @mykalu , действительно сбивает с толку то, что pip3 install tensorflow-gpu также устанавливает tensorflow . И похоже, что из-за этого версия gpu не работает.

Этот вопрос лучше задать в StackOverflow, поскольку это не ошибка или запрос функции. Есть также более крупное сообщество, которое читает вопросы там. Спасибо!

@DNXie @skyoung @mykalu У меня была такая же проблема, но потом я обнаружил, что у меня установлен tensorflow-tensorboard 0.1.4, который зависит от tensorflow . Казалось, что это источник ошибочной зависимости, и обновление до 0.1.5 заставило меня все заработать, потому что tensorflow больше не было установлено.

@srowen Хороший улов, который у меня сработал. Спасибо!

@srowen
Это правда. У меня тоже есть тензорборд на этой версии. Спасибо!

@mykalu, когда я запускаю pip install tensorflow-gpu==1.3.0 меня также есть папка с именем tensorflow. Это верно? У меня такая же проблема - мой графический процессор не используется.

удаление tensorflow-gpu == 1.3.0 и установка tensorflow-gpu == 1.2.1 сработали для меня! Благодарность

На момент написания последних версий TF поддерживается только Titan V на стороне потребителя 😑

Перекрестно проверьте, какое программное обеспечение работает на каком оборудовании
https://developer.nvidia.com/cuda-gpus
https://www.tensorflow.org/install/install_sources#common_installation_problems

Если вам нужно обновить CUDA, используйте предоставленный двоичный файл:
https://developer.nvidia.com/cuda-downloads

Проверьте, какая версия cuDNN вам нужна здесь (требуется логин):
https://developer.nvidia.com/rdp/cudnn-download

Для cuDNN загрузите обычно в /usr/local и распакуйте.

Наконец, переустановите. Версия TF зависит от версии GPU и Cuda.

pip uninstall tensorflow
pip install tensorflow==1.4.1
pip install tensorflow-gpu==1.4.1

У меня tf 1.4.1 работает нормально.

@jiforcen Не могли бы вы сказать мне, какой метод вы использовали для установки набора инструментов CUDA, CuDNN и TensorFlow (GPU)? Я пробовал несколько методов уже несколько дней, и я просто не могу заставить тензорный поток обнаруживать мой графический процессор.

@caiosuzuki Я следил за руководством nvidia. http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#introduction
Не забудьте настроить переменные среды !! http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#post -installation-actions
Убедитесь, что ваш драйвер nvidia настроен и инструментарий cuda установлен правильно.
После этого я установил tenorflow gpu в среде conda. У меня проблемы с tenorflow gpu 1.3, но tenorflow gpu 1.4 у меня работает нормально.

Мой код работал на процессоре, поэтому я изменил tenorflow-gpu с версии 1.4.1 на 1.2.1, и теперь он показывает мне следующую ошибку. Пожалуйста, помогите мне здесь.

Использование бэкэнда TensorFlow.
Отслеживание (последний вызов последний):
Файл "extract_features.py", строка 16, в
из DataSet импорта данных
Файл "/home/shayan/five-video-classification-methods/data.py", строка 12, в
из процессора import process_image
Файл "/home/shayan/five-video-classification-methods/processor.py", строка 4, в
из keras.preprocessing.image import img_to_array, load_img
Файл "/usr/local/lib/python2.7/dist-packages/keras/__init__.py", строка 3, в
из . активация импорта
Файл "/usr/local/lib/python2.7/dist-packages/keras/activations.py", строка 3, в
из . импортировать бэкэнд как K
Файл "/usr/local/lib/python2.7/dist-packages/keras/backend/__init__.py", строка 64, в
из .tensorflow_backend import *
Файл "/usr/local/lib/python2.7/dist-packages/keras/backend/tensorflow_backend.py", строка 1, в
импортировать тензорный поток как tf
Файл "/usr/local/lib/python2.7/dist-packages/tensorflow/__init__.py", строка 24, в
из импорта tensorflow.python *
Файл "/usr/local/lib/python2.7/dist-packages/tensorflow/python/__init__.py", строка 49, в
из tensorflow.python импорта pywrap_tensorflow
Файл "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", строка 52, в
поднять ImportError (msg)
ImportError: Traceback (последний вызов последний):
Файл "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow.py", строка 41, в
из импорта tensorflow.python.pywrap_tensorflow_internal *
Файл "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", строка 28, в
_pywrap_tensorflow_internal = swig_import_helper ()
Файл "/usr/local/lib/python2.7/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", строка 24, в swig_import_helper
_mod = imp.load_module ('_ pywrap_tensorflow_internal', fp, путь, описание)
ImportError: libcusolver.so.8.0: невозможно открыть файл общих объектов: нет такого файла или каталога

Не удалось загрузить собственную среду выполнения TensorFlow.

См. Https://www.tensorflow.org/install/install_sources#common_installation_problems.

по некоторым общим причинам и решениям. Включить всю трассировку стека
над этим сообщением об ошибке при обращении за помощью.

@ shayan09 Вы

Текущая версия CUDA не поддерживается тензорным потоком. Так что просто понизьте версию CUDA до 7.0, а затем переустановите обычный тензорный поток, а затем тензорный поток-gpu. Работал у меня.

Возникла такая же проблема, но ни один из советов не помог. Невозможно перейти на более раннюю версию CUDA, пакет tensorflow-gpu явно ищет библиотеки DLL версии 9.0. Я могу наблюдать за использованием моего процессора / графического процессора во время его работы, и TF сообщает, что он работает через графический процессор, но процессор привязан к 100%, а использование графического процессора колеблется около 5%. Я попытался отрегулировать размер пакета как можно больше, не сталкиваясь с ошибками OOM, но, похоже, это не имело никакого значения. (в другом месте я читал, что небольшие размеры пакетов могут снизить пропускную способность графического процессора).

Известны ли текущие проблемы с двоичными файлами Windows для комбинации Tensorflow1.5.0 / CUDA 9.0 / cuDNN 7.0? Если есть известные проблемы, есть ли предыдущая комбинация, которая может сработать? Если есть другие шаги, которые можно пропустить при выполнении на графическом процессоре, есть ли руководства для типичных ошибок?

Имея проблемы, аналогичные @ironfroggy с комбинацией Win10 / Tensorflow1.5.0 / CUDA 9.0 / cuDNN 7.0

У меня такая же проблема с Tensorflow 1.5 и Cuda 9.0 :-(

@ironfroggy
@hyperh

У меня такая же проблема, как и у вас. Не могли бы вы найти решение?

@ironfroggy
@hyperh
@VanitarNordic

Точно такая же проблема. tenorflow-gpu == 1.5.0 / Cuda9.0 / cuDNN7.0 / окна 7.
Я добавлю, что когда я впервые столкнулся с проблемой, я получал сообщение об ошибке при импорте тензорного потока, в котором говорилось, что он не может найти cudart64_90.dll (он был на моем пути). После того, как я перезапустил свой компьютер, тензорный поток успешно импортирован, но он просто использует процессор.

ОБНОВЛЕНИЕ: мне показалось, что это проблема с драйверами: я удалил, повторно загрузил и переустановил драйверы графического процессора, перезапустил свой компьютер, и теперь он, похоже, работает нормально!

Я столкнулся с той же проблемой.
Для меня простая перезагрузка системы сделала свое дело, мой тензорный поток работает на графическом процессоре
reboot

Та же проблема с Tensorflow 1.8.0 и Cuda 8.0

В последние несколько дней я сломал себе голову и глаза, чтобы понять, почему TF 1.8 не работает на графическом процессоре с установкой cuda 9.2 и до сих пор не получил ответа, но закрылся, поэтому я хочу поделиться своим опытом на случай, если кто-то решил проблему. Я установил с нуля cuda 9.2 с cudnn 7.14 и ncc2.2.13 на веб-сайт nvidia, затем установил TF из источника через bazel, все было успешно, так как я запустил игрушечный код Hello и работал, но когда я проверял устройства, это был только ЦП, а не графический процессор, который был разочарование. Затем по предложению nvidia я загрузил образцы coda 9.2, скомпилировал и запустил. / deviceQuery, и я получил таблицу, в которой объявляется, что cuda 9.2 и cunn 7.14 настроены правильно, поскольку она показывает устройство графического процессора и его совместимость со средой выполнения программного обеспечения Ubuntu и, наконец, проходит тест! Так что я не знаю, почему я не могу запустить TF 1.8 на GPU. Это вызывает у меня подозрение, что здесь существует несовместимость между TF 1.8 gpu и cuda 9.2, о которой веб-сайт tenorflow нам не сообщает. Надеюсь, я ошибаюсь, и мне чего-то не хватает, чтобы заставить gpu работать. Дайте мне знать, если у кого-нибудь есть идеи или предложения. Спасибо

К вашему сведению, у меня это работает с CUDA 9.0 и tensorflow 1.8.0, когда я устанавливаю tensorflow и tensorflow-gpu отдельности:

pip uninstall tensorflow
pip uninstall tensorflow-gpu
pip install tensorflow==1.8.0
pip install tensorflow-gpu==1.8.0

@erobic спасибо! это работает для меня

У меня была такая же проблема, когда использовался только процессор. Вам нужно удалить tensorflow и установить только tensorflow-gpu

@mmawada Попробуйте эту ссылку, у меня сработало - TF == 1.8, Cuda 9.2
https://www.pytorials.com/how-to-install-tensorflow-gpu-with-cuda-9-2-for-python-on-ubuntu/

Спасибо!
Установить:
Ubuntu 18.04
Версия драйвера: 390.77
cuda:

nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Sep__1_21:08:03_CDT_2017
Cuda compilation tools, release 9.0, V9.0.176

cudnn: 7.1

и вот что я установил:

conda create -n tt  anaconda python
source activate tt

conda install tensorflow-gpu==1.11 cudatoolkit==9.0 cudnn==7.1.2 h5py
pip install pillow h5py keras
pip uninstall tensorflow
pip install tensorflow-gpu

git clone https://github.com/fchollet/keras.git
cd keras/examples
python mnist_cnn.py

у меня это сработало !!!
Tuananhktmt

такая же проблема здесь. Я использую ubuntu 16.4, tensorflow 1.12.0, gtx 1080 и cuda 9.0 с cudnn7.3.1.
Моя сеть тренировалась нормально, когда я вернулся домой в прошлую пятницу. Но в понедельник утром я обнаружил, что он не может запустить оценку на графическом процессоре, даже если я установил «with tf.device ('/ device: GPU: 0')». Я попробовал "nvidia-smi" в терминале, с моим графическим процессором и драйвером проблем нет

такая же проблема здесь. Я использую ubuntu 16.4, tensorflow 1.12.0, gtx 1080 и cuda 9.0 с cudnn7.3.1.
Моя сеть тренировалась нормально, когда я вернулся домой в прошлую пятницу. Но в понедельник утром я обнаружил, что он не может запустить оценку на графическом процессоре, даже если я установил «with tf.device ('/ device: GPU: 0')». Я попробовал "nvidia-smi" в терминале, с моим графическим процессором и драйвером проблем нет

Ми тоже, просто переустанови убунту :))

Это было решено для меня при обучении модели трансляции трансформатора:

pip install tf-nightly-gpu

К вашему сведению, у меня это работает с CUDA 9.0 и tensorflow 1.8.0, когда я устанавливаю tensorflow и tensorflow-gpu отдельности:

pip uninstall tensorflow
pip uninstall tensorflow-gpu
pip install tensorflow==1.8.0
pip install tensorflow-gpu==1.8.0

Вы, ребята, думаете, что использование кеша будет проблемой? Нужно ли мне использовать опцию --no_cache ?

эй, ребята, это сработало для меня с tenorflow 2.0+ с:
экспорт CUDA_VISIBLE_DEVICES = '0'

если у вас больше графических процессоров, вам нужно установить «0», «1» и т. д.

Привет, народ! У меня такая же проблема. Моя ОС
Идентификатор распространителя: Ubuntu
Описание: Ubuntu 20.04 LTS
Релиз: 20.04
У меня такой драйвер:
nvcc: драйвер компилятора NVIDIA (R) Cuda
Авторское право (c) 2005-2019 NVIDIA Corporation
Дата постройки Sun_Jul_28_19: 07: 16_PDT_2019
Инструменты компиляции Cuda, выпуск 10.1, V10.1.243
У меня есть такие пакеты:
tb-nightly 2.3.0a20200615
тензорная доска 2.2.2
tenorboard-плагин-остроумие 1.6.0.post3
тензорный поток 2.2.0
тензор потока-оценка 2.2.0
tenorflow-gpu 2.2.0
Почему я не могу использовать GPU в обработке?

Была ли эта страница полезной?
0 / 5 - 0 рейтинги