Для некоторого кода, который я хочу воспроизвести, мне нужно установить tensorflow==1.15.4 с поддержкой графического процессора. К сожалению, предварительно созданный двоичный файл скомпилирован с CUDA 10.0, но у меня CUDA 10.2 в моей системе.

Таким образом, я хотел установить его из исходников и собрать сам. Я выполнил эти официальные инструкции. Во время configure я всегда выбирал значение по умолчанию, за исключением Do you wish to build TensorFlow with CUDA support? [y/N]:, на который я ответил Y. Я использовал следующую команду сборки:

bazel build --config=v1 --config=cuda //tensorflow/tools/pip_package:build_pip_package

Я думаю, что --config=cuda здесь лишний, но я все равно включил его, чтобы убедиться.

Сначала я обнаружил ошибку во время сборки, которую я мог решить с помощью this . После этого компиляция успешно завершилась.

К моему удивлению, запуск следующего фрагмента после установки показывает, что мой графический процессор все еще недоступен для использования с tensorflow.

import tensorflow as tf


tf.test.is_built_with_cuda()  # True
tf.test.is_gpu_available()  # False

Может кто-нибудь подскажет, что я здесь делаю не так?

0
Fugu_Fish 3 Дек 2020 в 12:30

1 ответ

Лучший ответ

Код , который я пытался воспроизвести , был CUDA_VISIBLE_DEVICES=1 установлен как среда Переменная. По неопытности с Tensorflow я также установил это, не понимая, что я имел в виду.

Поскольку у меня только один графический процессор, то есть с индексом 0, мой графический процессор не был распознан. Таким образом, это не имело ничего общего со сборкой, которая работала, как задумано.

0
Fugu_Fish 17 Дек 2020 в 09:31