【问题标题】:Distributed training using multiple GPUs with tensorflow.slim.learning使用多个 GPU 和 tensorflow.slim.learning 进行分布式训练
【发布时间】:2018-05-12 16:16:52
【问题描述】:

我了解 TensorFlow 支持分布式训练。

我在train_image_classifier.py 中找到num_clones,这样我就可以在本地使用多个GPU。

python $TF_MODEL_HOME/slim/train_image_classifier.py \
--num_clones=2
--train_dir=${TRAIN_DIR} \
--dataset_name=imagenet \
--dataset_split_name=train \
--dataset_dir=${DATASET_DIR} \
--model_name=vgg_19 \
--batch_size=32 \
--max_number_of_steps=100

如何在不同主机上使用多个 GPU?

【问题讨论】:

    标签: tensorflow tf-slim


    【解决方案1】:

    您需要使用--worker_replicas=<no of hosts> 在具有相同数量 GPU 的多台主机上进行训练。除此之外,如果你在多个主机上训练,你必须配置--task--num_ps_tasks--sync_replicas--replicas_to_aggregate

    我建议你试试Horovod。我打算在几天内试一试。

    【讨论】:

    • 如果我有 192.168.0.1 和 192.168.0.2,每个主机一个 gpu,那么我在 192.168.0.1 的 cmd 上运行,添加--worker_replicas="192.168.0.2" --task=1 --num_ps_tasks=1 --sync_replicas=true,对吗?
    • @SnShines 假设有 2 台机器(server1 和 server2),每台机器有 3 个 gpus,请提供一个具体示例,说明应该生成多少个进程以及您描述的标志的示例值?
    • 嗨,您能解释一下worker_replicasps_tasksnum_ps_paskstasknum_replicasnum_clones 之间的区别吗?
    • @Austin,你了解worker_replicas、ps_tasks、num_ps_pasks、task、num_replicas、num_clones的区别吗?
    猜你喜欢
    • 2016-10-20
    • 2020-07-08
    • 1970-01-01
    • 2021-05-23
    • 2021-06-13
    • 1970-01-01
    • 2021-04-24
    • 2018-02-09
    相关资源
    最近更新 更多