Domyślnie run
API zajmuje się zawinięciem kodu modelu w strategię dystrybucji TensorFlow w oparciu o podaną konfigurację klastra.
Brak dystrybucji
Główna konfiguracja procesora i brak dodatkowych pracowników
tfc.run(entry_point='mnist_example.py',
chief_config=tfc.COMMON_MACHINE_CONFIGS['CPU'])
OneDeviceStrategy
1 procesor graficzny na komputerze głównym (domyślnie AcceleratorType.NVIDIA_TESLA_T4
) i brak dodatkowych pracowników.
tfc.run(entry_point='mnist_example.py')
MirroredStrategy
Główna konfiguracja z wieloma procesorami graficznymi ( AcceleratorType.NVIDIA_TESLA_V100
).
tfc.run(entry_point='mnist_example.py',
chief_config=tfc.COMMON_MACHINE_CONFIGS['V100_4X'])
MultiWorkerMirroredStrategy
Główna konfiguracja z 1 procesorem graficznym i 2 pracownikami, każdy z 8 procesorami graficznymi ( 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
Główna konfiguracja z 1 procesorem i 1 procesem roboczym z 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"])
Należy pamiętać, że TPUStrategy z TensorFlow Cloud działa tylko z TF w wersji 2.1, ponieważ jest to najnowsza wersja obsługiwana przez chmurę TPU AI Platform
Niestandardowa strategia dystrybucji
Jeśli chcesz zająć się określeniem strategii dystrybucji w kodzie swojego modelu i nie chcesz run
API w celu utworzenia strategii, ustaw distribution_stategy
na None
. Będzie to wymagane na przykład podczas korzystania ze strategy.experimental_distribute_dataset
.
tfc.run(entry_point='mnist_example.py',
distribution_strategy=None,
worker_count=2)