Theo mặc định, API run
sẽ đảm nhiệm việc gói mã mô hình của bạn trong chiến lược phân phối TensorFlow dựa trên cấu hình cụm mà bạn đã cung cấp.
Không có phân phối
Cấu hình CPU chính và không có nhân viên bổ sung
tfc.run(entry_point='mnist_example.py',
chief_config=tfc.COMMON_MACHINE_CONFIGS['CPU'])
OneDeviceStrategy
1 GPU chính (mặc định là AcceleratorType.NVIDIA_TESLA_T4
) và không có nhân viên bổ sung.
tfc.run(entry_point='mnist_example.py')
MirroredStrategy
Cấu hình chính với nhiều GPU ( AcceleratorType.NVIDIA_TESLA_V100
).
tfc.run(entry_point='mnist_example.py',
chief_config=tfc.COMMON_MACHINE_CONFIGS['V100_4X'])
MultiWorkerMirroredStrategy
Cấu hình chính với 1 GPU và 2 công nhân, mỗi người có 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
Cấu hình chính gồm 1 CPU và 1 worker dùng 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"])
Xin lưu ý rằng TPUStrategy với TensorFlow Cloud chỉ hoạt động với TF phiên bản 2.1 vì đây là phiên bản mới nhất được hỗ trợ bởi nền tảng AI đám mây TPU
Chiến lược phân phối tùy chỉnh
Nếu bạn muốn quan tâm đến việc chỉ định chiến lược phân phối trong mã mô hình của mình và không muốn run
API để tạo chiến lược, thì hãy đặt distribution_stategy
là None
. Điều này sẽ được yêu cầu, chẳng hạn như khi bạn đang sử dụng strategy.experimental_distribute_dataset
.
tfc.run(entry_point='mnist_example.py',
distribution_strategy=None,
worker_count=2)