Distributed deep learning is becoming increasingly popular due to the expanding demand for computing resources for deep learning models with a larger amount of parameters. Different from traditional training approaches, data-parallel training allows multiple compute nodes to train large deep learning models simultaneously in order to boost the training efficiency. In this paper, we present and compare six strategies for data-parallel training using PyTorch on the language model GPT-2 with 100M parameters using a qualitative approach. These strategies are Single GPU, Single Parameter Server, Distributed Parameter Server, Horovod, Distributed Parameter Server with Apex mixed-precision strategy, and Horovod with Apex mixed-precision strategy. We also analyze the quantitative experiment results from each strategy. In the end, we draw the conclusion that the Distributed Parameter Server with Apex mixedprecision strategy has the best performance on single node training, while Horovod with Apex is the most robust approach to use when we have single or multiple nodes.
翻译:与传统的培训方法不同,数据平行培训使多个计算节点能够同时培训大型深层学习模式,以提高培训效率。在本文中,我们介绍并比较了使用PyTorrch在语言模式GPT-2上的数据平行培训的六种战略,并使用定性方法将100M参数与语言模式GPT-2的数据平行培训的六种战略进行比较。这些战略是单一GPU、单参数服务器、分布式参数服务器、Horovod、带有Apex混合精度战略的分布式参数服务器和带有Apex混合精度战略的Horovod。我们还分析了每项战略的量化实验结果。最后,我们得出结论,用Apex混精度战略配置的分布式参数服务器在单节点培训上表现最佳,而使用Apex的Horovod是我们拥有单一或多个节点时最有力的方法。