TensorFlow GPU и CPU сегрегация отгруженных операций - PullRequest
1 голос
/ 30 июня 2019

Предполагая, что библиотека TensorFlow GPU используется в вычислениях, какие операции выгружаются в GPU (и как часто)?Какое влияние на производительность оказывают:

  1. Количество ядер ЦП (потому что оно сейчас не активно участвует в вычислениях)
  2. Размер ОЗУ.
  3. Видеопамять GPU (какие преимуществавладеть GPU с более высокой памятью)

Скажем, я бы хотел определиться с конкретными вариантами выбора этих аппаратных средств.Может ли кто-нибудь объяснить на примере, какой аспект модели машинного обучения повлияет на конкретное аппаратное ограничение?

(мне нужно немного уточнить, какие именно операции выгружаются в GPU и CPU на основе библиотеки TensorFlow GPU дляпример.)

1 Ответ

1 голос
/ 30 июня 2019

Одним из способов использования тензорного потока для эффективного распределения работы между процессорами и графическими процессорами является использование оценок.

Например:

 model = tf.estimator.Estimator(model_fn=model_fn,
                              params=params,
                              model_dir="./models/model-v0-0")


 model.train(lambda:input_fn(train_data_path), steps=1000)

В функции 'input_fn' загрузка данных и подготовка пакетов будут выгружены в ЦПУ, пока графический процессор работает над моделью, как объявлено в функции 'model_fn'.

Если вас беспокоят ограничения ОЗУ, вам следует рассмотреть возможность использования формата tfrecord, поскольку это позволяет избежать загрузки всего набора данных в ОЗУ

см. tenorflow.org / tutorials / load_data / tf_records

...