Configuración de estrategia de distribución y cluster

De forma predeterminada, run API se encarga de empaquetar el código de su modelo en una estrategia de distribución de TensorFlow basada en la configuración del clúster que ha proporcionado.

Sin distribución

Configuración del jefe de CPU y sin trabajadores adicionales

tfc.run(entry_point='mnist_example.py',
        chief_config=tfc.COMMON_MACHINE_CONFIGS['CPU'])

OneDeviceStrategy

1 GPU en jefe (el valor predeterminado es AcceleratorType.NVIDIA_TESLA_T4 ) y sin trabajadores adicionales.

tfc.run(entry_point='mnist_example.py')

MirroredStrategy

Configuración principal con múltiples GPU ( AcceleratorType.NVIDIA_TESLA_V100 ).

tfc.run(entry_point='mnist_example.py',
        chief_config=tfc.COMMON_MACHINE_CONFIGS['V100_4X'])

MultiWorkerMirroredStrategy

Configuración principal con 1 GPU y 2 trabajadores cada uno con 8 GPU ( AcceleratorType.NVIDIA_TESLA_V100 ).

tfc.run(entry_point='mnist_example.py',
        chief_config=tfc.COMMON_MACHINE_CONFIGS['V100_1X'],
        worker_count=2,
        worker_config=tfc.COMMON_MACHINE_CONFIGS['V100_8X'])

TPUStrategy

Configuración principal con 1 CPU y 1 trabajador con TPU.

tfc.run(entry_point="mnist_example.py",
        chief_config=tfc.COMMON_MACHINE_CONFIGS["CPU"],
        worker_count=1,
        worker_config=tfc.COMMON_MACHINE_CONFIGS["TPU"])

Tenga en cuenta que TPUStrategy con TensorFlow Cloud solo funciona con TF versión 2.1, ya que esta es la última versión compatible con AI Platform Cloud TPU.

Estrategia de distribución personalizada

Si desea encargarse de especificar una estrategia de distribución en el código de su modelo y no desea run API para crear una estrategia, configure distribution_stategy como None . Esto será necesario, por ejemplo, cuando utilice strategy.experimental_distribute_dataset .

tfc.run(entry_point='mnist_example.py',
        distribution_strategy=None,
        worker_count=2)