您的位置:首页 > 智能设备

拆掉英伟达护城河,细节曝光!世界最快超算用3072块AMD GPU训完超万亿参数LLM

发布时间:2024-01-13 14:16:22  来源:互联网     背景:


新智元报道

编辑:润 好困

【新智元导读】世界上最快超算集群Frontier,用8%的GPU训练出了一个万亿级规模的大模型,而且是在AMD硬件平台之上完成。研究人员将训练的细节和克服的困难写成了一篇论文,展示了如何用非英伟达的生态完成大模型训练的技术框架和细节。

用AMD的软硬件系统也能训练GPT-3.5级别的大模型了。

位于美国橡树岭国家实验室(Oak Ridge National Laboratory)的全世界最大的超算Frontier,集合了37888个MI250X GPU和9472个Epyc 7A53 CPU。


最近,研究人员只使用了其中8%左右的GPU,就训练了一个GPT-3.5规模的模型。

研究人员成功地使用ROCM软件平台在AMD硬件上成功地突破了分布式训练模型的很多难点,建立了使用ROCM平台在AMD硬件上为大模型实现最先进的分布式训练算法和框架。

成功地在非英伟达和非CUDA平台上为高效训练LLM提供了可行的技术框架。

训练完成后,研究人员将在Frontier上训练大模型的经验的总结成了一篇论文,详细描述了期间遇到的挑战以及克服的困难。


论文链接:https://arxiv.org/abs/2312.12705

在研究人员看来,训练一万亿参数规模的LLM最为重大的挑战是所需的内存量——至少需要14TB的内存。

而单块GPU最大的内存只有64GB,这意味着需要并行使用多个AMD MI250X GPU才能完成训练。

而并行更多的GPU,对GPU之间的通信提出非常高的要求。如果不能有效地利用GPU之间的带宽通信,大部分的GPU计算资源都会被浪费。


具体来说,研究人员将Megatron-DeepSpeed分布式训练框架移植到Frontier上,以支持在AMD硬件和ROCM软件平台上进行高效的分布式训练。

研究人员将基于CUDA的代码转换为HIP代码,还预构建DeepSpeed ops以避免ROCM平台上的JIT编译错误,并且修改代码以接受主节点IP地址为参数进行PyTorch Distributed初始化。

在220亿参数模型上,Frontier的训练峰值吞吐量达到了38.38%,1750亿参数模型峰值吞吐量的36.14%,1万亿参数模型峰值吞吐量的31.96%。

训练一个1000B级别的模型,最终研究团队将缩放效率(scaling efficiency)做到了87%。同时,作为对比,研究人员还同时训练了另一个1750亿参数的模型,缩放效率也达到了89%。


另一方面,因为现在这样规模的模型训练都是在基于英伟达的硬件和CUDA生态中完成的,研究人员表示在AMD的GPU之上想要达到类似的训练效率和性能,还有很多工作需要做。

训练细节

GPT式模型结构和模型尺寸

Transformer模型由两个不同的部分组成,编码器块和解码器块。


编码块有助于捕捉非因果自注意力,即句子中的每个标记都能注意到左右两边的token。

另一方面,解码块有助于捕捉因果自注意,即一个token只能注意到序列中过去的标记。


最简单的GPT类模型由一叠类似的层组成。

每一层都有一个注意力区块和一个前馈网络(FFN)2。注意力区块有三组参数,其中d是模型的隐藏维度。FFN模块有两层,分别为权重和所以,每层有11d^2个参数。

由于嵌入层位于模型的起始层,参数数大致为12Ld^2,其中L为层数,d为隐藏维度。

根据这个公式,研究人员可以定义出下表中大小分别为22B、175B和1T的三个模型。


谷歌手机pixel4哪里代工

大部分内存需求来自模型权重、优化器状态和梯度。

在混合精度训练中,每个模型参数需要6个字节,4个字节用于在fp32中保存模型,2个字节用于在fp16中进行计算。

优化器状态的每个参数需要4个字节,以将动量保存在fp32中。

研究人员需要为每个参数保存一个fp32梯度值。因此,在使用Adam优化器进行混合精度训练时,最小内存需求如下表所示。


每个Frontier节点有8个MI250X GPU构成,每个都有64GB的HBM内存。

因此,内存需求表中,可以得出结论:要拟合模型的一个副本,模型并行化是必要的。模型并行可以通过张量和碎片数据并行在隐维度上实现,也可以通过管线并行(pipeline paralism)在层维度上实现。

管线并行

管线并行将模型分成p个阶段,每个阶段大约有L/p层。然后,将批次分割成微批次,每执行一步,一个微批次通过一个阶段。

每个阶段都放置在一个GPU上。

最初,只有第一个GPU可以处理第一个微批次。在第二个执行步骤中,第一个微批次进入第二个阶段,而第一个微批次现在可以进入第一个阶段。

如此反复,直到最后一个微批次到达最后一个阶段。

然后,反向传播开始,整个过程反向继续。在每个批次之后引入同步点,以保持正确的计算顺序,这需要冲洗管线阶段。

因此,在一个批次处理的开始和结束时,托管较早和较晚阶段的GPU会处于空闲状态,从而导致计算时间的浪费或管线泡沫。

管线泡沫分数为p-1m,其中m是批次中微批次的数量。

简单的GPipe调度会产生很大的管线泡沫。有一些额外的方法可以减少管线泡沫。

其中一种方法是PipeDream提出的1F1B调度,在前向传递过程中,最初允许微批次向前流动,直到最后一组收到第一个微批次。

但随后第一个批次开始向后传播,从那时起,前向传递总是伴随着后向传递,因此被称为1F1B。为了进一步缩小气泡大小,研究人员提出了一种交错计划,即在单个GPU上放置多个较小的管线组,而不是在单个GPU上放置一个管线组。

1F1B计划的管线泡沫大小大约为p/m,其中p是管线组的数量,m是微批次的数量。

微批次的数量。对于带交错功能的1F1B计划,泡沫大小为m×v p-1,其中v是放置在单个GPU上的交错组的数量。

分片数据并行(Sharded Data Parallelism)

分片数据并行将模型参数、优化器状态和梯度按行分片,并在每个GPU上放置一个分区。


由于训练一次推进一个层,因此计算设备的内存中只需要一个完整的层和相关值(优化器状态、梯度和参数)。

分片数据并行性正是利用了这一点;在执行一个层之前,通过在所有GPU上执行该层的所有收集,在所有GPU 上将该层实体化4b。

现在,所有GPU都有相同层的副本。然后,在不同的GPU上对不同的数据批次执行该层。之后,每个GPU会删除该层的所有收集部分,并通过全收集为下一层的实体化做好准备。

通过这种方式,它模拟了数据并行性,但不是每个GPU都托管了整个模型的完整副本,而只是托管当前活动层的副本。

分片数据并行可以促进大型模型在GPU上的数据并行训练,即使模型太大,无法容纳在单个GPU的内存中。

DeepSpeed的ZeRO优化器在不同程度上支持分片数据并行。ZeRO-1只对优化器状态进行分片,ZeRO-2对梯度和优化器状态进行分片,ZeRO-3则对优化器状态、梯度和模型参数进行分片。

另一方面,PyTorch FSDP(完全分片数据并行)对所有三种数据进行了分片,并通过将分片数据并行与传统数据并行相结合,支持混合数据并行。

3D并行和Megatron-DeepSpeed

仅使用单一并行策略来实现模型并行可能是一种低效方法。例如,如果研究人员只使用张量并行来对模型进行水平切分,那么张量可能太薄,需要频繁进行全还原通信,从而减慢训练速度。

另一方面,如果研究人员将模型划分为过多的管线阶段,每个阶段的计算量就会很小,这就需要频繁的通信。一个已知的问题是,在多个节点上执行张量并行训练需要缓慢的树状allreduce。

以混合方式使用多种并行模式,可以最大限度地减少性能不佳的地方。三维并行结合了张量、管线和数据(传统和分片)并行技术,以充分利用资源。

通过适当的设置,三维并行技术可将通信与计算重叠,从而减少通信延迟。

人工智能领域使用的三维并行标准代码库基于Megatron-LM。MegatronDeepSpeed扩展了Megatron-LM的功能,增加了DeepSpeed功能,如ZeRO-1 sharded数据并行和重叠1F1B的管线并行。

计划的管线并行。不过,这些标准代码库都是针对英伟达GPU和CUDA平台开发的。

作为最完整的框架,研究人员希望在Frontier上使用Megatron-DeepSpeed,Frontier 是AMD系统,其软件栈建立在ROCM软件平台上。

将Megatron-DeepSpeed移植到Frontier

Megatron-DeepSpeed代码库来源自英伟达公司的Megatron-LM代码库,然后微软在其中添加了DeepSpeed ZeRO优化器、管线并行性和MoE。

英伟达负责开发Megatron-LM,因此其代码库是以英伟达GPU和CUDA环境为目标平台开发的。

将该代码库移植到AMD平台上运行会面临一些挑战。

1. CUDA代码:CUDA代码不能在AMD硬件上运行,但HIP(一种类似CUDA的C/C++扩展语言)可以。

研究人员使用hipify工具将CUDA源代码转换为HIP代码,使用hipcc构建可共享对象(so文件)然后使用pybind从Python代码访问这些可共享对象。

2. DeepSpeed操作:大多数DeepSpeed操作都是在执行训练管线期间通过JIT(及时)编译构建的。

但是,DeepSpeed操作的JIT编译在ROCM平台上不起作用,因此研究人员在安装DeepSpeed时预先构建了所有操作。

研究人员禁用了Megatron-DeepSpeed代码库中的所有JIT功能,以避免任何运行时错误。

3. 初始化PyTorch分布式环境:Megatron-DeepSpeed利用PyTorch分布式初始化创建各种数据和模型并行组。

初始化过程需要指定一个计算节点作为主节点,所有分布式进程都需要它的IP地址。

研究人员修改了代码库,以接受MASTER ADDR作为参数。

研究人员准备了一个启动脚本,从SLURM节点列表中读取第一个节点的IP地址,并将其作为参数传递给所有使用srun启动的进程。

然后,初始化代码会使用这个MASTER ADDR进行PyTorch分布式初始化。

4. 通过ROCM平台软件提供的库/软件包:研究人员与AMD开发人员合作,获得了一些基本CUDA软件包的ROCM版本,如APEX。

APEX是英伟达的混合精度库,Megatron-DeepSpeed代码库大量使用该库进行混合精度训练。

他们还改编了支持ROCM的FlashAttention和FlashAttention2库版本,供Frontier上的编译器使用。Flash-Attention操作被移植到AMDGPU上,使用的内核来自Composable Kernel库。

各种分配策略的实证分析

国美 双11

张量并行

张量并行法按行划分模型层,每层之后都需要通过Allreduce对部分激活值进行聚合。

每层执行后的AllReduce成本很高,这取决于张量并行组中GPU之间的通信带宽,通信量取决于隐藏大小和微批量大小。

下图5显示了前沿GPU之间的通信带宽。一个节点中有8个GPU,单个芯片中的GPU通过四个(50+50 GB/s)无限结构连接。


跨芯片的GPU之间的带宽是它的一半。但是,跨节点的GPU之间的带宽是25+25 GB/s。

因此,从网络拓扑和配置来看,TP = 2的通信速度最快,TP = 4或8的通信速度次之。

但是,如果TP ¿ 8,通信将通过较慢的以太网进行,通信速度将大大降低。因此,将TP保持在[2, 4, 8]范围内应该是最佳策略。

研究人员使用8个GPU训练一个1.4B的模型,TP值从1到8不等,结果发现TP值越小,吞吐量越高。

观察结果III.1:TP值越大,训练效果越差。

B. 管线并行

管线并行化沿着层维度划分模型,并将连续的层划分为管线阶段。一个微批次的执行从一个阶段流向下一个阶段。

管线气泡是使用这种并行方式进行高效训练的限制因素。

研究人员观察了大M或大GBS的效果,以了解22B参数和1T参数大小的两个模型对GPU吞吐量的影响(下图7)。


苹果手机pos机刷卡

观察结果III.2:使用大的全局批次大小或许多微批次使管线阶段饱和,可将管线气泡大小降至最低。

管线阶段数量的影响:接下来,研究人员研究管线级数对训练性能的影响。直观地说,管线阶段越多,意味着通信发生前的计算量越少。

在全局批次大小(微批次数量)固定的情况下,管线阶段数量越多,计算量越少。

气泡大小会随着管线级数的增加而增加。研究人员还尝试增加管线级数,同时保持PMP固定不变,按比例增加全局批量大小。

观察结果III.3:在保持全局批量大小不变的情况下,增加管线级数会增加管线气泡的大小,并降低训练性能。

观察结果III.4:如果管线级数与微批次数的比例保持不变,则随着管线级数的增加,训练性能也会保持不变。


从第一个实验(上图8a)来看,随着管线级数的增加,训练性能会下降。但是,通过调整全局批次大小来固定气泡比例,可以保持吞吐量(上图8b)。

通过实验、超参数调整和分析,研究人员确定了在Frontier上训练Trillionparameter模型的高效策略,该策略结合了各种分布策略和软件优化。

训练万亿参数模型

训练万亿参数模型的高效策略

通过增加微批次数量使管线阶段饱和:研究人员使用DeepSpeed(来自 DeepSpeed-Megatron,但不是Megatron的版本)提供的管线并行性。这种管线并行算法是PipeDream的算法,其中多个阶段相互重叠,并采用1F1B算法来减少气泡大小。

但是,如果管线级数没有达到饱和,气泡大小就会增大。为确保饱和,微批次的数量必须等于或超过管线级数。

将张量并行限制为单个节点/八个GPU:由于AllReduce操作过于频繁,而且需要对每一层都执行,因此分散在不同节点上的层会导致跨节点GPU之间基于树状结构的AllReduce,而通信延迟则会成为一个重要瓶颈。

使用Flash-Attention v2:与普通注意力实现相比,研究人员观察到使用Flash-attention可将吞吐量提高30%。

使用ZeRO-1优化器实现数据并行:研究人员使用ZeRO-1实现数据并行,以减少内存开销。

使用AWS的RCCL插件提高通信稳定性:AWS OFI RCCL插件使EC2开发人员能够在运行基于AMD RCCL的应用程序时将libfabric用作网络提供商。在Frontier上,该插件的使用显示了通信的稳定性。

万亿参数模型的训练性能

根据从超参数调整中吸取的经验教训,研究人员确定了一组大小为220亿个参数和1750亿个参数的模型组合。

在这两个模型的GPU吞吐量的鼓舞下,研究人员最终使用表V中列出的分布策略组合训练了一个万亿参数模型,并进行了十次迭代,以观察其训练性能。

对于22B参数模型,研究人员可以提取其峰值吞吐量(191.5 TFLOPS)的38.38%(73.5 TFLOPS)。

对于175B模型训练,研究人员实现了峰值吞吐量的36.14% (69.2 TFLOPs)。

最后,对于1T模型,实现了峰值吞吐量的31.96%(61.2 TFLOPs)。

扩展性能

通过数据并行来维持模型并行训练的性能,让系统中的大量GPU参与进来,是一项极具挑战性的任务。性能最强的GPU通过不同速度的通信链路连接,如果对网络中较大的部分施加压力,可能会导致性能损失。

因此,研究人员通过数据并行化将175B模型的训练扩展到1024个GPU,将1T模型的训练扩展到3072个GPU,以衡量训练策略的扩展效率。

1. 弱扩展:研究人员在1024、2048和3072个GPU上使用全局批量大小3200、6400和9600执行数据并行训练,对1T模型进行弱扩展实验。数据并行训练实现了100%的弱扩展效率(下图12)。


2. 强扩展:研究人员进行了强扩展实验,将全局批量大小保持在8000,然后改变GPU的数量。研究人员在1024个GPU上对一个175B模型实现了89.93%的强扩展性能(图13a)。研究人员在3072个GPU上对一个1万亿参数的模型实现了87.05%的强扩展性能(图13b)。


世界最快超算

AMD加持的Frontier超级计算机现在是世界上第一台官方认可的百亿亿次超级计算机,算力高达1.102 ExaFlop/s。

它在新发布的全球最快超级计算机Top500榜单中名列第一。

Frontier的速度比榜单上接下来的七台超级计算机的总和还要快。

Frontier现在也被列为地球上最快的AI系统,在HPL-AI基准测试中提供6.88 ExaFlops的混合精度性能。

这相当于大脑中860亿个神经元中的每一个每秒执行6800万条指令。

Frontier超级计算机的规模之大令人惊叹,但这只是AMD在今年Top500榜单中取得的众多成就之一——全球排名前10的超级计算机中,有5台采用AMD EPYC系统,而排名前20的超级计算机中,有10台采用AMD EPYC系统。

Frontier超级计算机由HPE制造,安装在橡树岭国家实验室 (ORNL)。

该系统拥有9408个计算节点,每个节点配备一个64核AMDTrentoCPU,搭配512 GB DDR4内存和四个AMD Radeon Instinct MI250X GPU。


这些节点分布在74个HPE Cray EX机柜中,每个机柜重8000磅。整个系统拥有 602112个CPU核心,4.6 PB DDR4内存。

最新miniled电视评测

参考资料:

https://arxiv.org/abs/2312.12705

https://www.tomshardware.com/news/amd-powered-frontier-supercomputer-breaks-the-exascale-barrier-now-fastest-in-the-world



返回网站首页

本文评论
GA102库存多!RTX 3070 Ti新版显卡曝光:NVIDIA要加价清货?「技嘉发布rtx 3090 ti旗舰显卡」
对于老黄而言,NV接下来如何清理存货,就显得很重要了,但是不管怎么样,价格让步不大的话,估计还是悬?NVIDIA的GeForce RTX 3070 Ti 16 GB显卡在EEC列表中再次被发现,这是技嘉产品线中...
日期:09-19
三星s23是什么时候发布_三星Galaxy S23有四种配色:6.1英寸骁龙8 Gen2旗舰 单手操作无压力
  今日消息,业内人士Ross Young透露,三星Galaxy S23有四款配色:浅棕色、黑色、粉色和绿色。Ross Young还表示,Galaxy S23系列亦有三个版本,包括Galaxy S23、Galaxy S23+和Gala...
日期:10-10
2017年Apple Watch出货1800万部 同比增长54%_分析称今年苹果AppleWatch销量或达到1400万
  据Bidness Etc网站报道,自今年4月份发售以来,Apple Watch可谓功成名就。尽管三星和其他厂商已经进入这一似乎子虚乌有的市场,苹果的进入不仅仅拉动智能手表产业以指数级数...
日期:07-29
mate50性能_华为Mate50系列曝光:搭载骁龙处理器 影像大调整
【手机中国新闻】昨天我们报道了有关于华为Mate 50系列的配置消息(华为Mate 50标准版参数曝光),紧接着该系列新品的海报相关信息也在网上曝光出来,除此之外,还曝光了本次Mate 50...
日期:08-20
三星Q1营收77万亿韩元同比增长19% 营业利润为14万亿韩元_韩国三星集团营业收入
4月28日消息,当地时间周四,韩国三星电子公布2022年第一季度财报。财报显示,第一季度三星电子营收为77.78万亿韩元(约合613.8亿美元),较上年同期的65.39万亿韩元增长19%,高于分析...
日期:08-24
骁龙8+满血版、残血版差价非常大 一加揭秘:能差1个亿
2023年了,手机厂商依然有多款重磅机型选择了骁龙8+平台,虽然已经有二代骁龙8了,但是骁龙8+依然很能打,性能并不弱,日前发布的一加Ace2这样的手机就是如此。不过很多人没有注意到,...
日期:02-09
sonos ray评测「Sonos Ray发布:面向小户型家庭 体积小巧支持多设备连接」
  新浪数码讯 12月7日上午消息,智能无线音响制造商Sonos发布新款条形音响Sonos Ray,其定位小户型空间使用,造型紧凑的同时保留高音质的效果。  官方称,Sonos Ray采用全新声...
日期:12-12
加价1000元左右iphone 14你会等吗「黄牛加价到2500-3000 卖完继续加_iPhone 14首销探店」
来源:中关村在线百度和泰国旅游局达成合作 共同搭建线上营销平台协议今天iPhone 14正式首销,我们的记者已经在北京三里屯苹果店开始采访,在现场也有不少的黄牛,随后我们拿到已经...
日期:09-17
“云”赏荔枝成熟 “5G+”助力增收
“盛夏六月,荔枝飘香,欢迎大家来到广西移动‘荔行八桂,枝源壮乡’直播间。”每年6- 7 月正值钦州荔枝成熟的季节, 6 月 9 日,广西移动在钦州灵山县千年凤凰果场开启5G直播间,直击...
日期:06-13
或搭载联发科 Helio G37 芯片 ,摩托罗拉 Moto E22 渲染图曝光「iphone 13 pro芯片是几纳米的」
IT技术信息 9 月 13 日消息, 9 月 9 日,摩托罗拉在海外发布了 Moto Edge 30 Ultra / Fusion / Neo 三款新机。其中 Moto Edge 30 Ultra 为 X30 Pro 改名,Moto Edge 30 Fusio...
日期:09-14
华为Mate 20/Mate 20 Pro海外获认证:运行安卓9.0系统「华为mate20 pro国际版」
  据外媒报道,华为Mate 20/Mate 20 Pro日前获得了EEC(欧亚经济委员会)的认证。电商直播的马太效应小米电视音乐app互联网+大赛宣传片  其中,Mate 20的型号是HMA-L29,Mate 2...
日期:07-23
诺基亚5g路由器「诺基亚5G新机通过WiFi认证」
  8月28日消息,最近诺基亚X30 5G通过WiFi认证。新机与上一代的外观相比变化不大。新机大概在即将到来的IFA 2022年上发布。  新机的型号是TA-1450,之前已经出现在一家网...
日期:08-29
macbookair14寸2021上市时间_爆款预定:15英寸MacBook Air明年要来!
文|明美无限目前搭载 M 处理器的 MacBook 系列非常受欢迎,不过直到现在,MacBook Air 都没有大屏产品。想要体验大屏,只能选购 MacBook Pro 系列,价格自然会高出不少。如今有消息...
日期:12-20
vivo的手机最值得推荐「vivo最强旗舰在路上:1英寸怪兽大底加持 手机影像天花板」
  今日消息,博主数码闲聊站爆料,vivo X90 Pro+即将登场,这款手机主打影像。网络动态表情包  此前数码闲聊站暗示,1英寸蔡司主摄很快就会跟大家见面,考虑到蔡司是vivo X系列联...
日期:09-27
首批用户吐槽iPhone 14 Pro后盖不耐划:才用一天就已经大花脸「iphone14pro啥时候发布」
满打满算,iPhone 14 Pro到用户手机才两天时间,可是居然已经被发现“通病”了。多位数码博主发现,今年的iPhone 14 Pro/Pro Max的后背似乎特别容易刮花。在广州、深圳的直营店,一...
日期:09-24
apple watch好还是airpodspro好_苹果:Apple Watch Ultra 与 AirPods Pro 2 于 9 月 23 日(周五)起在零售店发售
  9 月 23 日消息,苹果官方宣布,9 月 23 日起,坚固耐用、功能强大的 Apple Watch Ultra 与迄今最先进的 AirPods 将在全球 Apple Store 零售店正式发售。授权经销商处正式发...
日期:09-24
相机镜头无故开裂后,谷歌 Pixel 7 系列用户再反馈音量按钮脱落问题「google pixel 6与google pixel 6pro」
2 月 8 日消息,谷歌每年推出的 Pixel 机型都存在各种硬件问题。继用户反馈机身背面的相机镜头无故开裂之后,Pixel 7 系列用户再次反馈机身侧面的音量按钮出现脱落情况。根据...
日期:02-09
独享私人健身教练 教你用小米电视2学瑜伽「小米电视怎么健身」
  现在这个年代,好像全世界都在关注健身和减肥,可是肥胖依然在全世界肆意横行,调差显示约有25%的人几乎整天都“坐着不动”,许多人解释说没有时间去健身房锻炼。其实,只要有一...
日期:07-27
Apple Watch Series 7被曝过热后爆炸,苹果称将展开调查「iwatch series7和iwatch se区别」
  据 9to5Mac 报道,一位 Apple Watch Series 7 用户自己的手表在出现过热、冒烟后最终炸裂,目前这个事件已经引起苹果公司的注意,该公司确认将调查该事件。然而与此同时,苹果...
日期:10-27
京东方上半年新增专利申请「韩媒:京东方,去年美国申请专利第一名,正在追求技术霸权!」
9月11日,韩国媒体《今日电子报》发表文章称,数据显示,中国京东方去年在美国申请的技术专利最多。三星显示器申请的显示器相关专利数量位居第二。有分析认为,作为苹果iPhone供应...
日期:09-14