ludwig [ray] 实现工作人员随时间自动扩展的功能,

rqcrx0a6  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(27)

Elastic Horovod 工作的一个重要结论是,随着时间的推移逐步扩展可以带来成本、吞吐量和收敛优势,类似于 increase_batch_size_on_plateau 在 param 上的作用。
对于分布式训练,我们可以调整这种行为,而不是增加每个worker的批次大小(我们可以假设已经将其设置为最大化GPU利用率),我们可以通过向过程中添加额外的训练worker来将批次大小加倍(目前在使用Ray时,我们可以强制执行 increase_batch_size_on_plateau_rate = 2 以实现这一点)。
最初,这可以通过在触发批次大小增加时简单地在训练期间引发异常来完成。然后,这可以在Ray Train方面进行处理,捕获异常并使用新的workers重新运行训练,从最后一个检查点恢复。
在未来,一旦Ray Train和RayDatasets支持弹性重新分区,我们就可以使用Elastic Horovod来实现这一点。

uxhixvfz

uxhixvfz1#

请注意,当我们需要扩大increase_batch_size_on_plateau的范围以包括特定时期或其他标准时,应该进行扩展。

相关问题