Tensorflow не может выбрать графический процессор, хотя графический процессор распознанPython

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 Tensorflow не может выбрать графический процессор, хотя графический процессор распознан

Сообщение Гость »

Я пытался настроить тензорный поток для работы с моим графическим процессором (GTX 1070). [*]Я установил последние версии драйверов NVIDIA 546.29-desktop-win10-win11-64bit-international-dch-whql.exe
Вывод из nvidia-sim

+--------------------------------- -------------------------------------------------- ----+ | NVIDIA-SMI 546.29 Версия драйвера: 546.29 Версия CUDA: 12.3 | |-----------------------------------------+------- ---------------+----------------------+ | Имя графического процессора TCC/WDDM | Идентификатор автобуса Disp.A | Неустойчивая некорр. ЕСЦ | | Температура вентилятора Производительность Мощность: использование/ограничение | Использование памяти | GPU-Util Compute M. | | | | МИГ М. | |=======================================+======= ===============+======================| | 0 NVIDIA GeForce GTX 1070 WDDM | 00000000:05:00.0 Включено | Н/Д | | 0% 61C P0 37Вт/230Вт | 1714 МБ / 8192 МБ | 1% по умолчанию | | | | Н/Д | +-------------------------+------- ---------------+----------------------+ [*]Чтобы использовать графический процессор, я следовал руководству по установке Tensorflow для Docker. Это мой Dockerfile

FROM tensorflow/tensorflow:latest-gpu РАБОЧИЙ ПАРАМЕТР /tf-gpu КОПИРОВАТЬ требования.txt ЗАПУСТИТЬ pip install -r требования.txt РАЗВЕРНУТЬ 8888 ENTRYPOINT [ "jupyter", "lab", "--ip=0.0.0.0", "--allow-root", "--no-browser" ] Это мой docker-compose.yaml

версия: '1.0' услуги: Юпитер-лаборатория: строить: . порты: - 8888:8888 объемы: - ./tf-gpu:/tf-gpu развертывать: Ресурсы: оговорки: устройства: - драйвер: нвидиа количество: 1 возможности: [графический процессор] Это файл требований.txt (я хотел, чтобы jupyterlab запускался в контейнере)

jupyterlab панды матплотлиб Первое указание на проблему (может быть?) Теперь после запуска этого контейнера с помощью docker-compose up я импортировал тензорный поток в файл .ipynb и получил следующую ошибку

импортировать тензорный поток как tf 2023-12-07 23:53:31.948645: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:9261] Невозможно зарегистрировать фабрику cuDNN: попытка зарегистрировать фабрику для плагина cuDNN, если она есть уже зарегистрирован 2023-12-07 23:53:31.948714: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:607] Невозможно зарегистрировать фабрику cuFFT: попытка зарегистрировать фабрику для плагина cuFFT, если она уже зарегистрирована 2023-12-07 23:53:31.949559: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1515] Невозможно зарегистрировать фабрику cuBLAS: попытка зарегистрировать фабрику для плагина cuBLAS, если она уже зарегистрирована 2023-12-07 23:53:31.955580: I tensorflow/core/platform/cpu_feature_guard.cc:182] Этот двоичный файл TensorFlow оптимизирован для использования доступных инструкций ЦП в операциях, критичных к производительности. Чтобы включить следующие инструкции: AVX2 FMA, в других операциях пересоберите TensorFlow с соответствующими флагами компилятора. Я использую Ryzen 5 3600. Не знаю, имеет ли это значение.
Настоящая проблема
Затем я попытался проверить, распознается ли графический процессор.

print("Количество доступных графических процессоров: ", len(tf.config.experimental.list_physical_devices('GPU'))) tf.config.list_ological_devices() Количество доступных графических процессоров: 1 2023-12-08 00:04:28.072720: I external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.105405: Мне external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.105450: Мне external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.107896: Мне external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.107935: Мне external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.107952: Мне external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.307162: Мне external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.307210: Мне external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.307218: I tensorflow/core/common_runtime/gpu/gpu_device.cc:2022] Не удалось идентифицировать узел NUMA платформы с идентификатором графического процессора 0, значение по умолчанию равно 0. Возможно, ваше ядро ​​не имеет поддержки NUMA. 2023-12-08 00:04:28.307249: Мне external/local_xla/xla/stream_executor/cuda/cuda_executor.cc:887] не удалось открыть файл для чтения узла NUMA: /sys/bus/pci/devices/0000:05: 00.0/numa_node Возможно, ваше ядро ​​было собрано без поддержки NUMA. 2023-12-08 00:04:28.307745: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1929] Создано устройство /job:localhost/replica:0/task:0/device:GPU:0 с памятью 6731 МБ : -> устройство: 0, имя: NVIDIA GeForce GTX 1070, идентификатор шины PCI: 0000:05:00.0, вычислительная мощность: 6.1 [LogicalDevice(name='/device:CPU:0', device_type='CPU'), LogicalDevice(name='/device:GPU:0', device_type='GPU')] Очевидно, что графический процессор распознается

Однако, когда я запускаю это

с tf.device('/device:GPU:1'): 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) распечатать(с) Нет ошибок во время выполнения??

Кроме того, когда я пытаюсь обучить любую модель, скорость обучения примерно такая же, как и на моем ноутбуке без графического процессора и Intel i7-1165G7 с частотой 2,80 ГГц.

Например, пример mnist

импортировать тензорный поток как tf из tensorflow.keras.datasets импортировать mnist из tensorflow.keras.models импортировать последовательный из tensorflow.keras.layers import Dense, Conv2D, Flatten, MaxPooling2D из tensorflow.keras.utils импорт в_categorical print("Количество доступных графических процессоров: ", len(tf.config.experimental.list_physical_devices('GPU'))) # Загрузите набор данных MNIST (train_images, train_labels), (test_images, test_labels) = mnist.load_data() # Предварительная обработка данных train_images = train_images.reshape((train_images.shape[0], 28, 28, 1)) test_images = test_images.reshape((test_images.shape[0], 28, 28, 1)) # Нормализовать значения пикселей между 0 и 1 train_images, test_images = train_images/255.0, test_images/255.0 # Преобразование меток в горячее кодирование train_labels = to_categorical(train_labels) test_labels = to_categorical (test_labels) # Постройте модель модель = Последовательная([ Conv2D(32, kernel_size=(3, 3), активация='relu', input_shape=(28, 28, 1)), MaxPooling2D(pool_size=(2, 2)), Сгладить(), Плотный(64, активация='relu'), Плотный (10, активация = 'softmax') ]) # Скомпилируем модель model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy']) # Обучим модель model.fit(train_images, train_labels, validation_data=(test_images, test_labels), эпохи=5) # Оцените модель model.evaluate(test_images, test_labels) Выдает этот результат и занимает примерно то же время, что и на моем ноутбуке

Количество доступных графических процессоров: 1 Эпоха 1/5 2023-12-08 00:16:20.796334: I external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:454] Загружен cuDNN версии 8906 2023-12-08 00:16:21.312037: I external/local_xla/xla/service/service.cc:168] Служба XLA 0x7efafe8c24a0 инициализирована для платформы CUDA (это не гарантирует, что XLA будет использоваться). Устройства: 2023-12-08 00:16:21.312088: I external/local_xla/xla/service/service.cc:176] Устройство StreamExecutor (0): NVIDIA GeForce GTX 1070, вычислительные возможности 6.1 2023-12-08 00:16:21.328170: Я tensorflow/compiler/mlir/tensorflow/utils/dump_mlir_util.cc:269] отключил воспроизводитель сбоев MLIR, установите env var `MLIR_CRASH_REPRODUCER_DIRECTORY` для включения. ВНИМАНИЕ: все сообщения журнала перед вызовом absl::InitializeLog() записываются в STDERR. I0000 00:00:1701994581.439258 134 device_compiler.h:186] Скомпилированный кластер с использованием XLA! Эта строка регистрируется не более одного раза за время существования процесса. 1875/1875 [==============================] - 15 с 7 мс/шаг - потеря: 0,1586 - точность: 0,9532 - val_loss : 0,0587 - val_accuracy: 0,9805 Эпоха 2/5 1875/1875 [==============================] - 13 с 7 мс/шаг - потери: 0,0553 - точность: 0,9826 - val_loss : 0,0558 - val_accuracy: 0,9809 Эпоха 3/5 1875/1875 [==============================] - 14 с 7 мс/шаг - потеря: 0,0379 - точность: 0,9883 - val_loss : 0,0408 - val_accuracy: 0,9862 Эпоха 4/5 1875/1875 [==============================] - 15 с 8 мс/шаг - потери: 0,0258 - точность: 0,9919 - val_loss : 0,0450 - val_accuracy: 0,9844 Эпоха 5/5 1875/1875 [==============================] - 14 с 8 мс/шаг - потери: 0,0174 - точность: 0,9945 - val_loss : 0,0446 - val_accuracy: 0,9864 313/313 [=============================] - 2 с 6 мс/шаг - потери: 0,0446 - точность: 0,9864 [0,044628895819187164, 0,9864000082015991] Я совершенно не знаю, как решить эту проблему. Заранее благодарим за любую помощь.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»