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)