После ответ от SO я запустил:
# confirm TensorFlow sees the GPU
from tensorflow.python.client import device_lib
assert 'GPU' in str(device_lib.list_local_devices())
# confirm Keras sees the GPU
from keras import backend
assert len(backend.tensorflow_backend._get_available_gpus()) > 0
# confirm PyTorch sees the GPU
from torch import cuda
assert cuda.is_available()
assert cuda.device_count() > 0
print(cuda.get_device_name(cuda.current_device()))
Первый тест работает, а остальные нет.
Запуск nvcc --version дает:
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
И nvidia-smi тоже работают.
list_local_devices() обеспечивает:
[name: "/device:CPU:0" device_type: "CPU" memory_limit: 268435456 locality { } incarnation: 459307207819325532, name: "/device:XLA_GPU:0" device_type: "XLA_GPU" memory_limit: 17179869184 locality { } incarnation: 9054555249843627113 physical_device_desc: "device: XLA_GPU device", name: "/device:XLA_CPU:0" device_type: "XLA_CPU" memory_limit: 17179869184 locality { } incarnation: 5902450771458744885 physical_device_desc: "device: XLA_CPU device"]
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
возвращает:
Device mapping: /job:localhost/replica:0/task:0/device:XLA_GPU:0 -> device: XLA_GPU device /job:localhost/replica:0/task:0/device:XLA_CPU:0 -> device: XLA_CPU device
Почему Keras и PyTorch не могут работать на моем графическом процессоре? (RTX 2070)
на самом деле тоже не работает с tf tf.test.is_gpu_available() возвращает False
@ParitoshSingh keras - 2.2.4
о, хорошо, если он не работает и с тензорным потоком, вам необходимо установить тензорный поток для графического процессора. он включает в себя больше шагов, чем просто установка pip.
что ты имеешь в виду? Я установил tenorflow-gpu с помощью pip






Мне было трудно найти проблему. Собственно, запуск образцов CUDA дал мне отличную информацию:
CUDA error at ../../common/inc/helper_cuda.h:1162 code=30(cudaErrorUnknown) "cudaGetDeviceCount(&device_count)"
Пока с sudo:
MapSMtoCores for SM 7.5 is undefined. Default to use 64 Cores/SM
GPU Device 0: "GeForce RTX 2070" with compute capability 7.5
Итак, проблема заключалась в том, что мою библиотеку не могли читать все.
Моя ошибка была исправлена:
sudo chmod -R a+r /usr/local/cuda*
Я недавно столкнулся с этой проблемой. Оказалось, что необходимые пакеты, установленные pip (например, keras), не включают флаги, связанные с XLA. Если я перешел на полную установку необходимых пакетов miniconda или anaconda, я смог запустить свой код. В моем случае я запускал AI-код facebook.
Работает ранний индикатор того, что есть проблема:
nvidia-smi
и видя, что ваша глубокая сеть не использует гигабиты данных, а вместо этого использует килобайты. Тогда вы знаете, даже без предупреждений (которые иногда трудно найти в журналах), что проблема заключается в том, как было скомпилировано необходимое программное обеспечение. Вы знаете это, потому что графический процессор не получает соответствия по типу устройства и в результате по умолчанию использует ЦП. Затем код выгружается на процессоры.
В моем случае я установил tenorflow-gpu, ipython, imutils, imgaug и несколько других пакетов с помощью miniconda. Если вы обнаружите, что в conda отсутствует необходимый пакет, используйте:
conda -c conda-forge <package-name>
чтобы подобрать недостающие предметы, такие как imutils и imgaug.
какая версия кераса это?