字节跳动:如何解决GPU万卡互联挑战?

智能计算芯世界 2024-03-30 08:14

近日,字节跳动联合北京大学的研究团队发表了一篇论文《将大型语言模型训练扩展至超过10,000块GPU》,提出一个用于训练大语言模型的生产系统,解决在万卡集群上训练大模型时面临的效率和稳定性挑战。
下载链接:

英伟达GTC专题:新一代GPU、具身智能和AI应用

2024年策略:AI鼎新,与时偕行

光模块专题:AI驱动网络变革,光摩尔定律加速

《半导体行业深度报告合集(2024)》

《人形机器人专题》
人形机器人专题2:编码器 
人形机器人专题3:IMU传感器专题 
人形机器人专题4:减速专题研究
《AI应用专题系列合集》
1、AI应用专题之一:百花齐放,静待杀手级别应用 
2、AI应用专题之二:“情感陪伴”领域有望孵化杀手级应用
《半导体芯片行业系列研究》
1、半导体芯片行业系列研究:中国逻辑芯片行业概览 
2、半导体芯片行业系列研究:中国存储芯片行业概览
走进芯时代(77):XR身处人文与科技十字路口,开启空间计算时代
走进芯时代(60):AI算力GPU,AI产业化再加速,智能大时代已开启
走进芯时代(58):高性能模拟替代渐入深水区,工业汽车重点突破
走进芯时代(57):算力大时代,处理器SOC厂商综合对比
走进芯时代(49):“AI芯片”,AI领强算力时代,GPU启新场景落地
走进芯时代(46):“新能源芯”,乘碳中和之风,基础元件腾飞
走进芯时代(43):显示驱动芯—面板国产化最后一公里
走进芯时代(40):半导体设备,再迎黄金时代
走进芯时代(74):以芯助先进算法,以算驱万物智能
智能时代的计算架构发展趋势
《半导体行业系列报告合集》


该论文介绍了系统的设计、实现和部署。此外,文中还提到了万卡以上的集群规模遇到的问题及其解决方案。
01、万卡集群的两大挑战
大模型时代,算力就是生产力。大模型的背后意味着巨大的计算资源,模型大小和训练数据大小是决定模型能力的关键因素。市场的主力玩家们利用数万个GPU构建大型人工智能集群,以训练LLM。但当GPU集群达到万卡规模,如何实现高效率、高稳定的训练?
第一个挑战是实现大规模的高效率训练。模型浮点运算利用率 (MFU)是实际吞吐量与假设最大吞吐量之比,是评估模型训练效率的通用指标,可以直接反映端到端的训练速度。为了训练LLM,需要将模型分布为多个GPU上,并且GPU之间需进行大量通信以推动进展。除了通信之外,如操作符优化、数据预处理和GPU内存消耗等因素对MFU也有着显著影响。
第二个挑战是在大规模上实现训练的高稳定性,即在整个过程中保持高效率训练。在大模型训练中,稳定性十分重要。失败和延迟虽是大模型训练中的常态,但其故障成本非常高。如何缩短故障恢复时间至关重要,一个掉队者不仅会影响自己的工作,还会拖慢数万个GPU的整个作业。
为了应对这些挑战,字节跳动提出MegaScale(超大规模)系统,并已部署在自家的数据中心。那么字节是如何解决上述问题的呢?

02、如何实现大模型的高效训练?
想要在不损害模型准确性的情况下处理急剧增加的计算需求,需要采用最先进的算法优化、通信策略、数据流水线管理以及网络性能调优技术。下文深入探讨了用于优化大型模型训练的方法,以实现大规模的高效率训练。
算法优化
在算法层面进行了一些优化,在不影响准确性的前提下,提高训练效率。主要包括并行transformer块、滑动窗口注意力(SWA)和LAMB优化器。
并行transformer块:采用transformer块的并行版本,代替标准的序列化公式。这种方法使得注意力块和MLP块的计算可以并行执行,从而减少了计算时间。先前的研究表明,这种修改不会降低具有数千亿参数的模型的质量。
滑动窗口注意力(SWA)是一种稀疏注意力机制,它在输入序列中的每个标记周围使用固定大小的窗口,比全自注意力更高效。通过堆叠此类窗口注意力层,模型能够有效地捕获输入数据中广泛的上下文信息,同时创建大感受野,从而在不影响准确性的情况下加快训练速度。
LAMB优化器:大规模的高效训练通常受到批量大小限制的阻碍。特别是,增加批量大小可能会对模型收敛产生不利影响。LAMB优化器能够使BERT的训练批量大小扩展到64K,而不影响准确性。
3D并行中的通信重叠
3D并行指张量并行、流水线并行和数据并行。
在数据并行中有两个主要通信操作:all-gather操作和reduce-scatter操作。在3D并行中,单个设备可能承载多个模型块。重叠是基于模型块实现的,以最大化带宽利用。all-gather操作在模型块的前向传递之前触发,reduce-scatter操作在它的后向传递之后开始。这导致第一个all-gather操作和最后一个reduce-scatter操作无法隐藏。受到PyTorch FSDP的启发,初始的all-gather操作在每次迭代的开始时被预取,允许它与数据加载操作重叠,有效地将减少了通信时间。
在流水线并行中,MegaScale使用交错1F1B调度方法,以实现通信的重叠。在热身阶段,前向传递仅依赖于其先前的接收。我们解耦了通常一起实现的发送和接收,通过打破这种依赖关系,使得发送操作能够与计算重叠。在张量/序列并行中,介绍了融合通信和计算等优化策略,以及将GEMM内核分成小块并与通信进行流水线执行。
高效操作符
尽管在MegatronLM中已经对GEMM操作符进行了优化,但其他操作符中还有进一步增强的机会。注意力部分采用了FlashAttention-2,改进了不同线程块和warp之间的工作分配。LayerNorm和GeLU由先前实现中的细粒度内核组成。通过将这些内核融合在一起,减少了与启动多个内核相关的开销,并有助于优化内存访问模式,从而实现更好的性能。
数据流水线优化
数据预处理和加载经常被忽视。然而,这些操作在每个训练步骤开始时会产生不可忽视的GPU空闲时间。优化这些操作对于训练过程的效率至关重要。
异步数据预处理。数据预处理不在关键路径上。因此,当GPU工作器在每个训练步骤结束同步梯度时,可以开始后续步骤的数据预处理,这就隐藏了预处理的开销。
消除冗余数据加载器。在分布式训练的典型数据加载阶段,每个GPU工作器都配备了自己的数据加载器,负责将训练数据读入CPU内存,然后转发到GPU。这导致工作线程之间为争夺磁盘读取带宽,因此产生了瓶颈。我们观察到,在LLM训练设置中,同一台机器内的GPU工作器处于相同的张量并行组。因此,它们每次迭代的输入本质上是相同的。基于这一观察,我们采用了两层树状的方法,在每台机器上使用一个专用的数据加载器将训练数据读入共享内存。随后,每个GPU工作器负责将必要的数据复制到自己的GPU内存中。这就消除了冗余读取,并显著提高了数据传输的效率。
集体通信群初始化
在分布式训练中,初始化阶段涉及在GPU工作器之间建立NVIDIA集体通信库(NCCL)通信组。由于这种开销在小规模场景中相对较小,因此默认使用torch.distributed。随着GPU数量扩展到超过一万个,naive实现引入的开销变得无法忍受。
torch.distributed初始化时间过长有两个原因。第一个问题在于同步步骤,其中每个进程在初始化特定通信组结束时参与了一个屏障操作。这个屏障使用TCPStore,以单线程、阻塞的读写方式操作。可以用非阻塞和异步的Redis替换TCPStore。第二个问题与全局屏障的不慎使用有关。每个进程在初始化其相应的通信组后执行一个全局屏障。我们精心设计了通信组的初始化顺序,以最小化全局屏障的需求,降低了时间复杂度。
在未经优化的情况下,2048张GPU的集群初始化时间是1047秒,优化后可降至5秒以下;万卡GPU集群的初始化时间则可降至30秒以下。
网络性能调优
分析了3D并行中机器间的流量,并设计了技术方案来提高网络性能。包括网络拓扑设计、减少ECMP哈希冲突、拥塞控制和重传超时设置。
网络拓扑。我们的数据中心网络是基于Broadcom Tomahawk 4芯片构建的高性能交换机。每个Tomahawk芯片的总带宽为25.6Tbps,具有64×400Gbps端口。三层交换机CLOS类似的拓扑连接,以连接超过10000个GPU。每层交换机的下行链路和上行链路的带宽比为1:1。也就是说,32个端口用于下行,32个端口用于上行。该网络以较小的直径提供了高带宽,每个节点都可以在有限的跳数内与其他节点通信。
减少ECMP哈希冲突。我们精心设计了网络拓扑,并调度网络流量以减少ECMP哈希冲突。首先,在机架ToR交换机上把上行与下行链路分开,一个 400G 下行链路端口通过特定的 AOC 电缆分为两个 200G 下行链路端口,有效降低冲突率。
拥塞控制。在分布式训练中大规模使用默认的DCQCN协议时,all-to-all通信可能会导致拥塞和PFC级别的提高。过度使用PFC可能会导致头部阻塞(HoL),从而降低网络吞吐量。为了缓解这些问题,我们开发了一个结合了Swift和DCQCN原理的算法,该算法将往返时间(RTT)的精确测量与显式拥塞通知(ECN)的快速拥塞响应能力相结合。这种方法显著提高了吞吐量,并最小化了与PFC相关的拥塞。
重传超时设置。NCCL中的参数可以设置以控制重传定时器和重试次数。我们调整这些参数以在链路抖动时快速恢复。为了进一步减少恢复时间,我们在NIC上启用了adap_retrans功能。此功能支持在较短的时间间隔内进行重传,当链路抖动周期较短时,有助于更快地恢复传输过程。

03、容错性
随着训练集群扩展到超过数万个GPU,软件和硬件故障几乎是不可避免的。我们为LLM训练设计了一个健壮的训练框架,实现了自动故障识别和快速恢复,在最小的人为干预和对正在进行的训练任务最小影响的情况下实现容错性。
如上图所示,在接收到训练任务后,驱动程序进程会与自定义的Kubernetes接口进行交互,以便分配计算资源并为每个执行器启动相应的Pod。一个执行器管理一个节点。执行器完成初始化任务后将在每个GPU上创建训练进程,并启动一个健壮的训练守护进程,定期向驱动程序发送heartbeat以便实时检测异常并预警。当检测到异常状态或在预定时间内未收到状态报告时,会触发故障恢复程序,将暂停所有正在进行的训练任务,并命令它们自我检查诊断。
一旦识别出问题节点,驱动程序将向Kubernetes提交要被封锁的节点的IP地址,以及在这些节点上运行的Pod信息,Kubernetes将驱逐故障节点,并用健康节点替换。此外,还有一个用户界面可以手动删除问题节点。恢复过程完成后,驱动程序会从最新的checkpoint恢复训练。我们优化了checkpoint和恢复过程,以最小化训练进度的损失。
为了增强对训练稳定性和性能的监控,开发了一个精度达到毫秒级的监控系统。采用不同级别的监控来跟踪各种指标。此外,文中还讲述了如何实现checkpoint快速恢复、训练故障排除,以及MegaScale部署和运营的经验,感兴趣的可下载论文查阅。

04、结论
本文深入探讨了MegaScale的设计、实现和部署。通过算法-系统协同设计,MegaScale优化了训练效率。在12288个GPU上训练一个175B LLM模型时,MegaScale实现了55.2%的MFU,比Megatron-LM提高了1.34倍。
我们强调在整个训练过程中需要容错,并实现了一个定制的健壮训练框架,以自动定位和修复故障。此外,还提供了一套全面的监控工具,用于深入观察系统组件和事件,便于复杂异常的根本原因识别。我们相信,我们的工作不仅为那些从事LLM训练的人提供了实用的见解,也为这个快速发展的领域的未来研究铺平了道路。
来源:https://mp.weixin.qq.com/s/ZCLixaEVHiWoQLTTp63cDQ
下载链接:

【终稿】2024年中国AR产业发展洞察研究

AI的内存瓶颈,高壁垒高增速(2024)

2024年AIGC发展趋势报告

《中国电源芯片行业研究报告合集》
1、详解电源管理芯片
2、电源管理芯片行业概览及研究框架
3、中国半导体系列报告:电源管理芯片行业概览
4、电源管理芯片研究框架
《HotChips 2023及历年技术合集(汇总)》
500+份重磅ChatGPT专业报告(合集)
AI服务器催化HBM需求爆发,核心工艺变化带来供给端增量(2024)
服务器行业报告:AI和东数西算双轮驱动,服务器在启航(2024)
2024年AI安全白皮书
新进封装加速迭代,迈向2.5D 3D封装(2024)
《人工智能专题研究合集(2024)》
1、人工智能专题研究(一):大模型推动各行业AI应用渗透 
2、人工智能专题研究(二):AI大模型开展算力竞赛,打开AI芯片、光模块和光芯片需求缺口
3、人工智能专题研究(三):Gemini 1.0有望拉动新一轮AI产业革新,算力产业链受益确定性强 
4、人工智能专题研究(四):OpenAI发布Sora文生视频模型,AI行业持续高发展

本号资料全部上传至知识星球,更多内容请登录智能计算芯知识(知识星球)星球下载全部资料。




免责申明:本号聚焦相关技术分享,内容观点不代表本号立场,可追溯内容均注明来源,发布文章若存在版权等问题,请留言联系删除,谢谢。



温馨提示:

请搜索“AI_Architect”或“扫码”关注公众号实时掌握深度技术分享,点击“阅读原文”获取更多原创技术干货。


智能计算芯世界 聚焦人工智能、芯片设计、异构计算、高性能计算等领域专业知识分享.
评论
  • 国产光耦合器正以其创新性和多样性引领行业发展。凭借强大的研发能力,国内制造商推出了适应汽车、电信等领域独特需求的专业化光耦合器,为各行业的技术进步提供了重要支持。本文将重点探讨国产光耦合器的技术创新与产品多样性,以及它们在推动产业升级中的重要作用。国产光耦合器创新的作用满足现代需求的创新模式新设计正在满足不断变化的市场需求。例如,高速光耦合器满足了电信和数据处理系统中快速信号传输的需求。同时,栅极驱动光耦合器支持电动汽车(EV)和工业电机驱动器等大功率应用中的精确高效控制。先进材料和设计将碳化硅
    克里雅半导体科技 2024-11-29 16:18 170浏览
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 86浏览
  • 当前,智能汽车产业迎来重大变局,随着人工智能、5G、大数据等新一代信息技术的迅猛发展,智能网联汽车正呈现强劲发展势头。11月26日,在2024紫光展锐全球合作伙伴大会汽车电子生态论坛上,紫光展锐与上汽海外出行联合发布搭载紫光展锐A7870的上汽海外MG量产车型,并发布A7710系列UWB数字钥匙解决方案平台,可应用于数字钥匙、活体检测、脚踢雷达、自动泊车等多种智能汽车场景。 联合发布量产车型,推动汽车智能化出海紫光展锐与上汽海外出行达成战略合作,联合发布搭载紫光展锐A7870的量产车型
    紫光展锐 2024-12-03 11:38 65浏览
  • 11-29学习笔记11-29学习笔记习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-02 23:58 51浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 105浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-30 14:30 73浏览
  •         温度传感器的精度受哪些因素影响,要先看所用的温度传感器输出哪种信号,不同信号输出的温度传感器影响精度的因素也不同。        现在常用的温度传感器输出信号有以下几种:电阻信号、电流信号、电压信号、数字信号等。以输出电阻信号的温度传感器为例,还细分为正温度系数温度传感器和负温度系数温度传感器,常用的铂电阻PT100/1000温度传感器就是正温度系数,就是说随着温度的升高,输出的电阻值会增大。对于输出
    锦正茂科技 2024-12-03 11:50 66浏览
  • 遇到部分串口工具不支持1500000波特率,这时候就需要进行修改,本文以触觉智能RK3562开发板修改系统波特率为115200为例,介绍瑞芯微方案主板Linux修改系统串口波特率教程。温馨提示:瑞芯微方案主板/开发板串口波特率只支持115200或1500000。修改Loader打印波特率查看对应芯片的MINIALL.ini确定要修改的bin文件#查看对应芯片的MINIALL.ini cat rkbin/RKBOOT/RK3562MINIALL.ini修改uart baudrate参数修改以下目
    Industio_触觉智能 2024-12-03 11:28 41浏览
  • 艾迈斯欧司朗全新“样片申请”小程序,逾160种LED、传感器、多芯片组合等产品样片一触即达。轻松3步完成申请,境内免费包邮到家!本期热荐性能显著提升的OSLON® Optimal,GF CSSRML.24ams OSRAM 基于最新芯片技术推出全新LED产品OSLON® Optimal系列,实现了显著的性能升级。该系列提供五种不同颜色的光源选项,包括Hyper Red(660 nm,PDN)、Red(640 nm)、Deep Blue(450 nm,PDN)、Far Red(730 nm)及Ho
    艾迈斯欧司朗 2024-11-29 16:55 168浏览
  • 作为优秀工程师的你,已身经百战、阅板无数!请先醒醒,新的项目来了,这是一个既要、又要、还要的产品需求,ARM核心板中一个处理器怎么能实现这么丰富的外围接口?踌躇之际,你偶阅此文。于是,“潘多拉”的魔盒打开了!没错,USB资源就是你打开新世界得钥匙,它能做哪些扩展呢?1.1  USB扩网口通用ARM处理器大多带两路网口,如果项目中有多路网路接口的需求,一般会选择在主板外部加交换机/路由器。当然,出于成本考虑,也可以将Switch芯片集成到ARM核心板或底板上,如KSZ9897、
    万象奥科 2024-12-03 10:24 38浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 83浏览
  • 概述 说明(三)探讨的是比较器一般带有滞回(Hysteresis)功能,为了解决输入信号转换速率不够的问题。前文还提到,即便使能滞回(Hysteresis)功能,还是无法解决SiPM读出测试系统需要解决的问题。本文在说明(三)的基础上,继续探讨为SiPM读出测试系统寻求合适的模拟脉冲检出方案。前四代SiPM使用的高速比较器指标缺陷 由于前端模拟信号属于典型的指数脉冲,所以下降沿转换速率(Slew Rate)过慢,导致比较器检出出现不必要的问题。尽管比较器可以使能滞回(Hysteresis)模块功
    coyoo 2024-12-03 12:20 70浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 106浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 101浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦