即使浏览了Pytorch论坛,我仍然不确定这一个。让我们假设我正在使用Pytorch DDP在同一台机器上的4 GPU上训练一个模型。假设我选择8的批处理大小,那么模型理论上是每一步都在2示例上反向传播,并且我们看到的最终结果是针对使用2的批处理大小训练的模型,还是模型在每一步都将梯度聚集在一起,以从每个GPU获得结果,然后使用8的批处理大小反向传播?
4
8
2
m1m5dgzv1#
实际批大小是提供给每个工作进程的输入大小,在您的示例中为8。换句话说,BP每运行8个示例。具体代码示例:https://gist.github.com/sgraaf/5b0caa3a320f28c27c12b5efeb35aa4c#file-ddp_example-py-L63。这是批量大小。
1条答案
按热度按时间m1m5dgzv1#
实际批大小是提供给每个工作进程的输入大小,在您的示例中为8。换句话说,BP每运行8个示例。
具体代码示例:https://gist.github.com/sgraaf/5b0caa3a320f28c27c12b5efeb35aa4c#file-ddp_example-py-L63。这是批量大小。