Какую память используют программы Tensorflow для хранения данных? - PullRequest
0 голосов
/ 03 мая 2019

Я думаю, что следующая ситуация.

  1. сделать модель ML с Tensorflow с графическим процессором для задачи классификации изображений
  2. для загрузки изображений, использовать подушку и для предварительной обработки, использовать NumPy
  3. модель ML получает входные данные в tf.placeholder

Я понимаю, что tenorflow-gpu использует RAM на графических процессорах, если это возможно, для сохранения параметров по умолчанию.Но для входных данных перед передачей в tf.placeholder, в какой ОЗУ они хранятся, в ОЗУ для ЦП или для ГП?

1 Ответ

0 голосов
/ 03 мая 2019

По определению заполнитель не имеет данных до подачи. Делая здесь много предположений, если вы не скопируете свои данные в память GPU полностью через tf.constant () , что может быть сделано, если ваш набор данных поместится в доступную память GPU, данные существуют в CPU / системная память и должна быть скопирована в память графического процессора.

Исходя из того, что вы описали в шагах 1 и 2, это выглядело бы как наивная реализация / отсутствие конвейерной обработки, как описано здесь . enter image description here

Однако в наивной синхронной реализации, пока процессор подготавливает данные, ускоритель бездействует. И наоборот, пока акселератор обучает модель, процессор бездействует. Таким образом, время шага обучения является суммой времени предварительной обработки ЦП и времени обучения акселератора.

Перед этапами обучения ваши данные хранятся в памяти процессора / системы.

...