没有合适的资源?快使用搜索试试~ 我知道了~
447→海报:SwiftT:大规模DNN训练摘要钟宇晨1、盛光明1、刘俊成2、袁金辉2、吴川11中国香港大学,2OneFlow Inc.,中国{yczhong,gmsheng,cwu}@cs.hku.hk,{liujuncheng,yuanjinhui}@oneflow.org在检查点频率上,这通常会导致几个随着深度学习模型的规模越来越大,训练需要更长的时间和更多的资源,这使得容错变得至关重要。现有的最先进的方法,如Check-Freq和Elastic Horovod需要在内存中备份模型状态的副本,这对于大型模型来说是昂贵的,并且导致不小的开销。本文介绍了一种用于分布式深度神经网络训练的新型故障恢复设计SwIFT,该设计可显著降低故障重新制定开销,而不会影响训练吞吐量和模型准确性。 S WIFT解决了由故障引起的模型状态的不一致性,而不是制作模型状态的额外副本,并在数据并行中利用模型状态的副本进行故障恢复。 我们提出了一种基于日志的方法,当副本不可用时,记录中间数据并在失败时重放计算以恢复丢失的状态。评估表明,S WIFT显着减少故障恢复时间,并实现类似或更好的训练吞吐量在无故障执行期间相比,国家的最先进的方法,而不会降低最终模型的准确性。CCS概念:·计算方法分布式人工智能。关键词:分布式DNN训练;故障恢复1引言大型深度神经网络(DNN)最近被证明可以提高模型性能[2],但由于使用了许多机器(例如, 数百个GPU机器)和长训练时间(例如,几天到几个月)。目前,深度学习框架中最常见的容错方法是全局检查点,它定期保存整个模型状态(即,参数和优化器状态),并在发生故障时从最新的检查点重新启动。取决允许制作部分或全部本作品的数字或硬拷贝供个人或课堂使用,无需付费,前提是复制品不以营利或商业利益为目的制作或分发,并且复制品在第一页上带有此通知和完整的引用。本作品的第三方组件的版权必须得到尊重。对于所有其他用途,请联系所有者/作者。PPoPP©2023版权归所有者/作者所有。ACM ISBN979-8-4007-0015-6/23/02。https://doi.org/10.1145/3572848.3577510计算时间损失[8]。 CheckFreq [9]通过将操作分为两个阶段来实现更频繁的检查点:首先,将模型状态复制到GPU内存中,称为快照,或者如果GPU内存不足,则复制到CPU内存;接下来,将快照异步写入磁盘。弹性训练框架Elastic Horovod [1]采用了类似的方法,但没有第二阶段。原因是Elastic Horovod假设分布式数据并行训练,其中每个工作者维护模型状态的副本;在故障恢复期间,幸存的工作者之一将快照广播给其他工作者,所有工作者从快照重新开始训练。拍摄快照对于Elastic Horovod来说是必要的,以防止损坏的状态:如果在模型更新期间发生故障,则幸存的工人将处于尴尬的境地-一些参数被更新,而其他参数则没有。我们确定这个问题的崩溃一致性问题。然而,我们发现这两种方法都会因为快照的开销而降低训练速度,如图1所示。本文研究了一种较好的故障恢复设计方法。贡献的DNN训练,显著降低了恢复开销,而不影响训练吞吐量和最终模型精度。SWIFT结合使用基于复制的恢复和基于日志的恢复来实现这一目标。 我们在PyTorch中实现了S WIFT[10],代码可以在www.example.com上公开获得https://github.com/jasperzhong/swift。2快速设计首先,SWIFT使用一种称为更新-撤销的新方法,该方法解决了由故障引起的模型状态不一致,从而在数据并行中使用模型状态的副本实现基于复制的恢复,而无需创建额外的快照。其次,S WIFT提出了基于日志的恢复,以实现加快故障恢复流水线并行。2.1Update-UndoSGD和Adam [6]等优化器中的许多更新运算符在数学上是可逆的,这意味着存在一个逆运算符可以反转原始运算符的运算。例如,像元素加法和标量乘法这样的线性运算符都是可逆的。然而,一些优化器涉及非线性算子,例如LAMB优化器[13],它使用参数的L2范数来缩放梯度。在这种情况下,有必要将L2范数保存为标量以用于恢复目的。如果448PPoPP在模型更新期间的故障中,如果工作器处的某些参数已经更新而其它参数没有更新,则幸存的工作器可以撤消对更新的参数的更新。 除了恢复模型参数之外,还需要恢复优化器状态,例如动量,以确保所有工作进程的一致性。使用update-undo,模型状态的副本可用于数据并行中的故障恢复,称为基于复制的恢复。2.2基于日志的恢复我们提出了基于日志的恢复流水线并行。这涉及记录机器间通信(即,前向传递中的中间激活和后向传递中的梯度),以及诸如发送者和接收者以及时间戳的元数据(即, 当前训练迭代和当前正被训练的微批)。我们的日志记录方法类似于上游备份[5],其中发送方而不是接收方记录消息,以确保恢复所需的中间数据不会在故障时丢失。日志记录在后台使用专用CUDA流异步完成 为每个工人建立一个队列。在训练过程中,工作线程不断将传出的张量推入队列,而另一个后台线程则不断从队列中读取张量并进行日志记录。此外,我们在同步流水线并行训练中的气泡时间期间执行日志记录这样,日志记录就偏离了关键路径。请注意,全局检查点仍然用于限制日志记录的大小,因为所有日志记录文件在全局检查点之后都将被废弃。如果发生故障,幸存的上游工人当检测到训练作业失败然后,上游工作者将其日志文件上传到全局存储(例如,HDFS)。然后,故障工作线程的替换工作线程从全局存储中下载必要的日志文件,加载最新的检查点,并按照时间戳的确切顺序从日志文件中重放先前接收到的张量。如有必要,幸存的工作进程将撤消更新。与纯全局检查点相比,这种方法允许更有限的恢复范围,专注于故障机器上的本地计算图而不是整个计算图,从而更快地恢复。 注意,日志记录要求计算是确定性的(即,相同的输入导致相同的输出)。并行恢复。 为了进一步改善恢复过程,我们利用幸存的工人来帮助恢复失败的工人。通过记录所有微批处理的中间结果,我们可以使用基于记录数据的数据并行训练来加快丢失状态的重新计算选择性日志。接下来,我们调查的存储空间和选择性日志记录的恢复时间之间的权衡。 我们的想法是将机器分组并记录组间通信,但不记录组内通信。最初的方法是一种特殊的情况,图1. 针对Wide-ResNet-50的基于复制的恢复。图2.BERT-128的基于日志的恢复。形成一个群体。如果一组机器中的一台机器出现故障,则需要从最新的检查点回滚整组机器上的训练,恢复时间会更长。3评价我们在16台DGX-2机器上进行了实验,每台机器都配备了8个通过40 Gbps以太网连接的32 GB V100 GPU 我们比较了S WIFT与CheckFreq和Elastic Horovod在ImageNet数据集[ 12 ]上训练Wide-ResNet-50模型[14]的放大版本(基本通道大小320,12.3亿个参数)的性能,使用数据并行,并使用同步日志记录(即,在发送之前保存张量)和全局检查点,用于使用管道并行性在维基百科数据集[3]上训练BERT-128模型[3](128个Transformer层,11.1亿个参数)。我们通过在迭代100时杀死一台机器来模拟失败。 图1显示,S WIFT基于复制的恢复与Wide-ResNet-50的CheckFreq和ElasticHorovod相比,显著缩短了98. 1%的恢复时间。图2显示,与BERT-128的全局检查点相比,S WIFT基于日志的恢复实现了类似的吞吐量,同时将恢复时间减少了76. 3%。 此外,与其无故障对应物相比,S WIFT在SQuAD数据集[11]上的BERT-Large和CIFAR-100数据集[7]上的ViT-Base/32 [ 4 ]的端到端微调任务中没有损失准确性。模拟研究。 我们使用实验中收集的痕迹来计算预期的端到端训练时间。我们在训练期间均匀随机地注入故障,假设17小时的中位故障间隔时间[8]。我们的研究结果表明,SWIFT可以分别将Wide-ResNet-50和BERT-128的端到端训练速度提高1.16倍和1.10倍致谢这 项 工 作 得 到 了 浙江实验室重 大 科 研 项 目 ( 编 号2019KD0AD01)和香港研究资助局(HKU 17204619,17208920)的部分资助。449海报:SwifT:大规模DNN培训的快速故障恢复PPoPP引用[1] Horovod 作 者 2022. 弹 性 Horovod 。 https : //horovod.readthedocs.io/en/stable/elastic_include.html。[2] TomBrown、Benjamin Mann、Nick Ryder、Melanie Subbiah、Jared D Kaplan 、 Prafulla Dhariwal 、 Arvind Neelakantan 、Pranav Shyam 、 Girish Sastry 、 Amanda Askell 、 SandhiniAgarwal 、 ArielHerbert-Voss 、 GretchenKrueger 、 TomHenighan 、 Rewon Child 、 Aditya Ramesh 、 Daniel Ziegler 、Jeffrey Wu 、Clemens Winter、Chris Hesse、Mark Chen、EricSigler 、 Mateusz Litwin 、 Scott Gray 、 Benjamin Chess 、 JackClark、Christopher Berner、Sam McCandlish、Alec Radford、Ilya Sutskever和Dario Amodei。2020年。语言模型是少数学习者。神经信息处理系统进展论文集。[3] Jacob Devlin , Ming-Wei Chang , Wendon Lee , and KristinaToutanova.2019. BERT :Deep Bidirectional Transformers forLanguage Understanding的预训练。在计算语言学协会北美分会的会议记录中:人类语言技术。[4] Alexey Dosovitskiy 、 Lucas Beyer 、 Alexander Kolesnikov 、DirkWeissenborn 、 Xiaohua Zhai 、 Thomas Unterthiner 、Mostafa Dehghani 、 Matthias Minderer 、 Georg Heigold 、Sylvain Gelly、Jakob Uszkoreit和Neil Houlsby。2020年。一张图像值16x16个单词:大规模图像识别的转换器。在国际会议上学习的代表性。[5] Jeong-Hyon Hwang , Magdalena Balazinska , Alex Rasin ,Ugur Cetintemel , Michael Stonebraker , and Stan Zdonik.2005. 分布式流处理的高可用性算法。数据工程国际会议论文集。[6] Diederik P Kingma和Jimmy Ba。2015年。Adam:一种随机优化方法在国际会议上学习的代表性。[7] Alex Krizhevsky,Geoffrey Hinton,等.2009年从微小图像中学习(2009年)。[8] Kiwan Maeng 、 Shivam Bharuka 、 Isabel Gao 、 Mark Jeffrey 、VikramSaraph、Bor-Yiing Su、Caroline Trippel、Jiyan Yang、MikeRabbat、Bran-don Lucia和Carole-Jean Wu。2021年理解和改进部分恢复深度学习推荐的容错训练 第四届机器学习与系统会议论文集。[9] Jayashree Mohan , Amar Jayishayee 和 Vijay Chidambaram 。 2021.CheckFreq:频繁的细粒度DNN检查点。 第19届USENIX文件和存储技术会议论文集。[10] Adam Paszke , Sam Gross , Francisco Massa , Adam Lerer ,James Brad-bury,Gregory Chanan,Trevor Killeen,Zeming Lin,Natalia Gimelshein , Luca Antiga , Alban Desmaison , AndreasKopf , Edward Yang , Zachary DeVito , Martin Raison , AlykhanTejani , Sasank Chilamkurthy , BenoitSteiner,Lu Fang,JunjieBai,and Soumith Chintala.2019年。PyTorch:一个命令式的高性能深度学习库。神经信息处理系统进展论文集。[11] Pranav Rajpurkar,Jian Zhang,Konstantin Lopyrev,and PercyLiang.2016. SQuAD : 100 , 000 + Questions for MachineComprehension of Text(文本的机器理解问题)2016年自然语言处理经验方法会议论文集。[12] Olga Russakovsky,Jia Deng,Hao Su,Jonathan Krause,Sanjeev Satheesh,Sean Ma,Zhiheng Huang,Andrej Karpathy,Aditya Khosla,Michael Bernstein,Alexander C. 伯格和李飞飞。2015 年 。 Imagenet 大 规 模 视 觉 识 别 挑 战 赛 。 在 Proceedings ofInternationalJournal of Computer Vision。[13] Yang You , Jing Li , Sashank Reddi , Jonathan Hseu , SanjivKumar , Sri- nadh Bhojanapalli , Xiaodan Song , JamesDemmel,Kurt Keutzer,and Cho-Jui Hsieh.2020.深度学习的大批量优化:76分钟内训练BERT在国际会议上学习的代表性。[14] Sergey Zagoruyko 和 Nikos Komodakis2016 年 。 宽 残 差 网 络 。ArXiv预印本(2016)。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功