Устройство в TensorFlow
Вычисления в TensorFlow выполняются
на устройствах: процессоре
и, если они есть, на видеокартах.
Каждый тензор хранит, где лежат
его данные; это видно в атрибуте
device.
Перед переносом работы на видеокарту имеет смысл узнать, какие устройства видит программа. Часть операций можно ускорить, включив половинную точность: веса остаются в полной форме, а промежуточные шаги считают в более компактном типе.
Повторяющиеся вычисления удобно оборачивать в компилируемый граф, чтобы TensorFlow реже пересобирал цепочку операций. На машине с несколькими картами копии модели и батча распределяют между ними с помощью стратегий распределения.
Для кластеров из нескольких процессов и для отдельных типов железа предусмотрены другие стратегии, чем на одной видеокарте или на паре карт в одном компьютере.
Со всем этим мы и будем разбираться в рамках данного раздела.