Мой тренировочный процесс не использует Nvidia GPU - PullRequest
0 голосов
/ 18 марта 2020

Выполнение следующих строк:

from tensorflow.python.client import device_lib 
print(device_lib.list_local_devices())

Результаты:

2020-03-18 18:03:38.197998: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 AVX512F FMA
2020-03-18 18:03:38.441722: E tensorflow/stream_executor/cuda/cuda_driver.cc:397] failed call to cuInit: CUDA_ERROR_UNKNOWN

2020-03-18 18:03:38.441865: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:158] retrieving CUDA diagnostic information for host: shavak

2020-03-18 18:03:38.441887: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:165] hostname: shavak

2020-03-18 18:03:38.442132: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:189] libcuda reported version is: 418.67.0

2020-03-18 18:03:38.442234: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:193] kernel reported version is: 418.67.0

2020-03-18 18:03:38.442261: I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:300] kernel version seems to match DSO: 418.67.0

[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 5274967908791911266
]

Может ли кто-нибудь помочь мне решить эту проблему? Я установил tensorFlow-gpu и использую среду conda для выполнения.

Ниже приведен вывод команды nvidia-smi.

1 Ответ

0 голосов
/ 20 марта 2020

Здесь ваша модель использует процессор, а не графический процессор.

Чтобы узнать, на какие устройства назначены ваши операции и тензоры, укажите tf.debugging.set_log_device_placement(True) в качестве первого оператора вашей программы.

import tensorflow as tf
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

Вывод: отображение всех доступных устройств в соответствии с отображением устройства

Device mapping:
/job:localhost/replica:0/task:0/device:XLA_CPU:0 -> device: XLA_CPU device
/job:localhost/replica:0/task:0/device:XLA_GPU:0 -> device: XLA_GPU device
/job:localhost/replica:0/task:0/device:GPU:0 -> device: 0, name: Tesla P4, pci bus id: 0000:00:04.0, compute capability: 6.1

Включение ведения журнала размещения устройств приводит к распечатке любых распределений или операций Tensor. Например, запустив следующий код:

tf.debugging.set_log_device_placement(True)

# Place tensors on the CPU
with tf.device('/CPU:0'):
  a = tf.constant([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]])
  b = tf.constant([[1.0, 2.0], [3.0, 4.0], [5.0, 6.0]])

c = tf.matmul(a, b)
print(c)

Вывод:

Executing op MatMul in device /job:localhost/replica:0/task:0/device:GPU:0

tf.Tensor(
[[22. 28.]
 [49. 64.]], shape=(2, 2), dtype=float32)
...