Mar*_*son 6 gpu distributed-computing tensorflow google-colaboratory
我最近对将分布式训练纳入我的 Tensorflow 项目感兴趣。我正在使用 Google Colab 和 Python 3 来实现具有自定义分布式训练循环的神经网络,如本指南所述: https: //www.tensorflow.org/tutorials/distribute/training_loops
在该指南的“创建分配变量和图形的策略”部分下,有一些代码的图片,这些代码基本上设置了“MirroredStrategy”,然后打印生成的模型副本的数量,请参见下文。
据我了解,输出表明 MirroredStrategy 仅创建了模型的一个副本,因此仅使用一个 GPU 来训练模型。我的问题:Google Colab 是否仅限于在单个 GPU 上进行训练?
我尝试过在使用和不使用 GPU 加速的情况下调用 MirroredStrategy(),但每次都只获得一个模型副本。这有点令人惊讶,因为当我在 Python 中使用多处理包时,我得到了四个线程。因此,我预计可以在 Google Colab 中并行训练四个模型。Tensorflows 实现分布式训练是否存在问题?
在google colab上,你只能使用一个GPU,这是Google的限制。但是,您可以在不同的 GPU 实例上运行不同的程序,因此可以通过创建不同的 colab 文件并将它们与 GPU 连接,但您不能将相同的模型并行放置在许多 GPU 实例上。镜像策略没有任何问题,从个人经验来看,如果你有多个 GPU,它就可以正常工作。
| 归档时间: |
|
| 查看次数: |
8972 次 |
| 最近记录: |