Par défaut, run
API se charge d'encapsuler le code de votre modèle dans une stratégie de distribution TensorFlow basée sur la configuration de cluster que vous avez fournie.
Pas de distribution
Configuration principale du processeur et aucun travailleur supplémentaire
tfc.run(entry_point='mnist_example.py',
chief_config=tfc.COMMON_MACHINE_CONFIGS['CPU'])
OneDeviceStrategy
1 GPU sur le chef (par défaut sur AcceleratorType.NVIDIA_TESLA_T4
) et aucun travailleur supplémentaire.
tfc.run(entry_point='mnist_example.py')
MirroredStrategy
Configuration principale avec plusieurs GPU ( AcceleratorType.NVIDIA_TESLA_V100
).
tfc.run(entry_point='mnist_example.py',
chief_config=tfc.COMMON_MACHINE_CONFIGS['V100_4X'])
MultiWorkerMirroredStrategy
Configuration principale avec 1 GPU et 2 Workers chacun avec 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
Configuration principale avec 1 CPU et 1 travailleur avec 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"])
Veuillez noter que TPUStrategy avec TensorFlow Cloud fonctionne uniquement avec la version 2.1 de TF, car il s'agit de la dernière version prise en charge par AI Platform cloud TPU.
Stratégie de distribution personnalisée
Si vous souhaitez prendre soin de spécifier une stratégie de distribution dans votre code de modèle et que vous ne souhaitez pas run
l'API pour créer une stratégie, définissez distribution_stategy
sur None
. Cela sera nécessaire, par exemple, lorsque vous utilisez strategy.experimental_distribute_dataset
.
tfc.run(entry_point='mnist_example.py',
distribution_strategy=None,
worker_count=2)