【问题标题】:Tensorflow: How to write clean code for multi GPU model parallelism?Tensorflow:如何为多 GPU 模型并行编写干净的代码?
【发布时间】:2017-01-22 18:20:33
【问题描述】:

目前我正在实现一个大型自定义模型,并参考 tensorflow 附带的 CIFAR 10 的多 GPU 示例。然而,我最终基于它编写的代码并不干净,而且容易出错。例如我必须找到每个可训练的变量并添加“with tf.device('/cpu:0')”。

是否有更高效/更简洁的方式来适应多 GPU 执行?

非常感谢您的支持。

【问题讨论】:

    标签: tensorflow gpu


    【解决方案1】:

    这是来自 Rafal 的 example

    您在塔上进行循环,将 ith 塔的主体构造为 with tf.device(assign_to_gpu(i))。函数assign_to_gpu 以不同的方式处理变量并将它们分配给“ps-device”。

    注意:我们发现,当 GPU 采用 p2p 连接时,保持变量 gpu:0 而不是 cpu:0 时训练速度更快

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-15
    • 2010-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-01
    • 1970-01-01
    相关资源
    最近更新 更多