Horovod:TensorFlow 中快速且易用的分布式深度学习库
机器学习
2018-02-22 v3 机器学习
摘要
训练现代深度学习模型需要大量计算,通常由 GPU 提供。将计算从单 GPU 扩展到多 GPU 可以显著加快训练和研究进展,但会带来两个复杂问题。首先,训练库必须支持 GPU 间通信。根据所采用的具体方法,这种通信可能带来从可忽略到显著的额外开销。其次,用户必须修改其训练代码以利用 GPU 间通信。根据训练库的 API,所需的修改可能很大或很小。在 TensorFlow 库下实现多 GPU 训练的现有方法存在不可忽略的通信开销,并要求用户大幅修改其模型构建代码,导致许多研究者避开这一混乱局面而坚持较慢的单 GPU 训练。在本文中,我们介绍 Horovod,一个开源库,它在两方面障碍上均有改进:通过环约简实现高效的 GPU 间通信,且只需对用户代码做几行修改,从而在 TensorFlow 中实现更快、更简便的分布式训练。Horovod 基于 Apache 2.0 许可证发布,地址为 https://github.com/uber/horovod
引用
@article{arxiv.1802.05799,
title = {Horovod: fast and easy distributed deep learning in TensorFlow},
author = {Alexander Sergeev and Mike Del Balso},
journal= {arXiv preprint arXiv:1802.05799},
year = {2018}
}