2016-08-18 4 views
0

У меня возник вопрос о тензорном потоке, который несколько критичен в отношении того, что я пытаюсь выполнить.Выполнение Tensorflow в виртуальной машине без графических процессоров

Мой сценарий выглядит следующим образом: 1. У меня есть скрипт tensorflow, который был настроен, прошел обучение и протестирован. Он работает хорошо.

  1. Обучение и тестирование проводились на devBox с 2 картами Titan X.

    1. Теперь нам нужно перенести эту систему на стадию тестирования на лету-пилоте и потребоваться для ее развертывания на виртуальной машине с Ubuntu 14.04, запущенной поверх нее.

Здесь лежит задача - виртуальная машина не будет иметь доступ к, лежащих в основе графических процессоров и должны проверить входящие данные в режиме только CPU. Мой вопрос:

  1. Будет ли отсутствие графических процессоров препятствовать процессу проверки моей системы ML? Разве тензорный поток, по умолчанию использует графические процессоры для вычисления CNN, и отсутствие графического процессора влияет на выполнение?
  2. Как запустить мой скрипт в режиме только CPU?
  3. Не будет ли настройка CUDA_VISIBLE_DEVICES не помогать с проверкой в ​​режиме CPU только после того, как система будет обучена на GPU-боксах?

Прошу прощения, если это встречается как вопрос о нобе, но я новичок в TF, и любые советы будут очень оценены. Пожалуйста, дайте мне знать, если вам нужна дополнительная информация о моем сценарии.

ответ

0

Тестирование с помощью CUDA_VISIBLE_DEVICES, установленное на пустую строку, гарантирует, что у вас нет ничего, что зависит от присутствия графического процессора, и теоретически этого должно быть достаточно. На практике есть некоторые ошибки в кодировке GPU, которые могут срабатывать, когда нет графических процессоров (например, this one), поэтому вы хотите, чтобы ваша программная среда GPU (версия CUDA) была одинаковой.

В качестве альтернативы, вы можете скомпилировать TensorFlow без поддержки GPU (bazel build -c opt tensorflow), таким образом, вам не придется беспокоиться по поводу соответствия CUDA среды или установки CUDA_VISIBLE_DEVICES

+0

Большое спасибо вам ваши разъяснения. Я бы сначала применил предложение выполнения с CUDA_VISIBLE_DEVICES к нулевому значению, и если он терпит неудачу, я бы перекомпилировал с использованием Basel и сохранил! –