0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

集合通信与AI基础架构

是德科技KEYSIGHT 来源:是德科技KEYSIGHT 2025-01-08 11:28 次阅读

人工智能集群的性能,尤其是机器学习训练集群,受到神经网络处理单元NPUs(即GPU或TPU)之间并行计算能力的显著影响。在我们称为纵向扩展scale-up和横向扩展scale-out设计中,NPUs之间网络的特性成为定义整个系统性能的关键因素之一。通过定义不同的并行策略,NPUs需要定期相互交换数据,对模型的各个层输出,或者梯度进行数据通信,从而更快速地完成前向和反向的训练过程。

根据并行方案和机器学习框架的具体细节,数据通信的要求可能会有所不同。通常,NPUs之间的数据传输被称为集合通信。集合通信原理已将其形式化为几种类型,具体取决于数据的初始和最终位置,以及是否需要在过程中执行数学运算。常用的类型包括广播和收集、ReduceScatter和AllGather、AllReduce和AlltoAll。操作名称中存在“Reduce”关键字表示该操作对数据进行计算。

集合通信算子

集合通信可以通过多种算法来实现。其中一些算法较为简单,因此性能较低;有些算法利用操作的性质,通常是网络拓扑,完成得更快。AllReduce的知名算法包括单向环和双向环、双二进制树以及Halving-Double算法,每种算法根据NPUs的数量以及它们如何互连,表现出不同的性能。

1ad4d338-cd50-11ef-9310-92fbcf53809c.png

图1、8个计算节点的AllReduce单向环

1af4579e-cd50-11ef-9310-92fbcf53809c.png

图2、8个计算节点的AllReduce Halving-Double

Rank 与通信集群大小

在集合通信中,每个参与交换数据消息的单元称为一个Rank。在大多数实际应用中,每个参与操作的NPU通常对应一个Rank。集合中所有Rank总数称为通信集群大小,用n表示,Rank是使用从0开始的整数ID进行顺序编号的,因此,最大的Rank ID是n - 1。在像广播(Broadcast)和收集(Gather)这样的集合通信操作中,有一个专门的发送者或接收者,称为根,默认情况下使用Rank ID 0作为根。

集合通信库

用于在人工智能集群中实现集合操作的软件通常称作“集合通信库”(Collective Communication Library)。其中一个最早的库 NCCL由NVIDIA开发。NCCL有多个衍生版本,其中一些是公开的,而其他一些则是私有的。

通信完成时间

集群完成集合通信操作的速度越快,训练任务就能越快地在昂贵的NPUs上进行下一轮计算。因此,我们致力于改进的是操作完成时间,即集合完成时间(Collective Completion Time,CCT),我们通常以秒为单位进行测量。

通信数据大小

集合通信操作的目标是移动数据,因此数据的大小显著影响操作所需的时间。在集合通信基准测试方法中,我们将一个Rank的通信数据大小定义为S,并以字节(B)为单位进行设置。

根据具体的操作和实现方式,集合通信算法会将数据大小S划分为多个算法数据块,每个块的大小为c,并且每个块在集合的Rank之间移动时都会遵循特定的路径。块的概念对于表达和理解集合操作算法的逻辑非常有用。

数据大小S参数具有几个值得注意的特性:

在大多数集合通信操作中,所有Rank的数据大小S都是一致的。但也有一些例外,例如在广播操作中,只有一个Rank提供输入数据。在AlltoAll-v操作中,每个NPU的数据大小S可能不同。

每个Rank通过网络发送的有效负载量D通常与S不同。这取决于具体的集合操作和所采用的算法。例如,在AlltoAll并行操作中,每个秩会保留一个大小为c = S/n的块给自己,并通过网络发送D = c * (n – 1)的数据。而在AllReduce环形操作中,每个秩将发送的数据量是D = 2 * c *(n – 1),因为这个操作是由ReduceScatter和AllGather两个步骤组成的复合操作。

在真实的AI/ML训练作业中,集合通信操作使用的数据大小受同一作业内部和不同作业之间的多种因素影响。由于AI集群基础设施在其生命周期内需要支持不断变化的作业,因此我们需要了解集合通信操作的性能如何随数据大小变化。这就是为什么集合通信基准测试方法会遍历不同的数据大小,以测量每个S值的关键指标的主要原因。

在AI集群中,大多数操作移动的是位于与NPUs直接连接的内存中的数据,而不是CPU内存中的数据。因此,我们可以通过检查现代NPUs的内存量来确定S的上限,这样做的实际意义在于基准测试。以NVIDIA H100 SXM为例,它拥有80GB的内存。由于这部分内存需要在AI模型的权重、训练数据和梯度之间共享,因此在这种情况下,32GB可能是一个实际的数据大小限制。

算法带宽

集合通信操作领域的研究人员不断发现新的算法,这些算法显著提高了集合通信完成时间(CCT),这通常归功于对底层网络拓扑的理解——即拓扑感知。由于CCT直接依赖于数据大小S,而S是特定于任务的,因此引入一个新的指标来衡量算法性能是很有帮助的,这个指标可以在不同的任务之间进行比较。类似于我们通过速度而不是旅行时间来比较汽车的性能,这个指标就是算法带宽(algbw)。它定义为数据大小S除以CCT,并以千兆字节每秒(GB/s)为单位进行测量。

请注意,尽管飞机的平均速度高于汽车,但由于等待时间,我们并不使用它们进行短距离旅行。类似地,当数据大小太小,无法完全加载网络时,CCT的一大部分时间将花费在启动和停止数据传输上。在这种情况下,algbw将不是一个有意义的指标,因为它会在不同的数据大小之间显著变化。在比较哪个算法性能更好时,您可能需要回到使用CCT。

为了说明这一点,图3是一个基准测试输出,其中在较小的数据大小上,CCT保持在7毫秒左右,但algbw每次数据大小翻倍时都会翻倍。另一方面,在较大的数据大小上,algbw趋于稳定在25GB/s,而CCT则随着数据大小的增加而继续增加。

1b336fce-cd50-11ef-9310-92fbcf53809c.png

图3、不同集合通信大小下的算法带宽表现

注意:由于算法在执行时实际传输的有效负载D与数据大小S之间的区别,将算法带宽(algbw)与网络接口的理论速度进行比较是不恰当的。

总线带宽

虽然CCT和algbw依赖于数据大小S,但通信集群大小n的影响就不那么明显了。根据算法的不同,这种依赖性可能更直接或更间接。例如,对于AlltoAll并行操作,在保持相同数据大小的情况下增加集合中的Rank数,会导致算法数据块c = S / n变小。因此,更大的带宽比例会浪费在数据包头上,CCT大约会增加相同的比例。相比之下,对于AllReduce环形操作,通信集群中的Rank数越多,每个数据块为了完成环形需要穿越的跳数就越多,导致CCT线性增加。我们需要一个指标来描述通信集群的性能,这个指标与训练作业的大小无关。

为了这个目的,我们可以想象由集合通信算法定义的数据块移动类似于汽车在城市中的移动,其中停车场、车道、道路和交叉口分别代表内存、NIC、电线和开关,而汽车就是数据块。当与城市街道相比较时,这里唯一真正的延伸是所有数据块都沿着完全相同的模式移动,并且不会分心。有了这个类比,我们可以很有把握地猜测,汽车到达最终目的地所需的时间将很大程度上受到其路径上最慢路段的影响——瓶颈路段。当瓶颈路段达到其容量时,需要通过的汽车数量翻倍,它们通过所需的时间也将翻倍。换句话说,瓶颈的峰值吞吐量不依赖于城市中停车场的数量(通信集群大小n)或汽车的数量(通信数据大小S)。

这个类比的另一个用处是,尽管瓶颈的峰值吞吐量不依赖于相邻街道和汽车移动的模式(拓扑和算法),但所有汽车完成旅行所需的时间将非常取决于它们所采取的路线,以及它们在城市中的数量。

总结来说,只要汽车(数据块)以峰值数量穿越瓶颈,达到其容量(带宽),它将决定我们城市基础设施(AI集群)的性能——有效负载的移动速率无法超越系统中瓶颈的峰值容量。描述AI基础设施对集合通信操作瓶颈的指标称为总线带宽(busbw),并以千兆字节每秒(GB/s)为单位测量。

对比理想CCT

一些集合通信基准测试工具无法深入了解底层的L1-4 OSI堆栈,因此无法在测试过程中提供网络利用率的信息,也无法判断是否还有优化空间。在创建AI Data Center Builder软件时,Keysight团队考虑到了这一点,并融入了对底层的洞察。KAI Collective Benchmarks应用程序会计算每个集合通信算法的理想CCT,并将其与实际测量得到的CCT值进行比较。因此,由KAI Collective Benchmarks产生的数据包含了与理想CCT值的比较,指标形式为百分比。

1b60c6c2-cd50-11ef-9310-92fbcf53809c.png

图4、KAI Collective Benchmarks 综合结果中的理想百分比

数据块完成时间分布

许多集合通信算法在每次Rank移动数据块时都展现出对称性。这是一个重要结论:当系统为每个数据块分配相等带宽时,即实现了带宽公平性,此时性能最佳。缺乏公平性会导致数据移动的尾延迟增加。一种评估公平性的方法是测量每个数据块的完成时间(DCT),并报告最小值、最大值,以及第50和第95百分位数。在具有带宽公平性的系统中,最小和最大DCT值应当较为接近。如果它们相差较大,您可以通过检查P50和P95的结果来判断异常值是更多地出现在快速还是慢速一侧。这些指标对于网络工程师来说非常熟悉,并且比学术文献中提到的其他公平性指标更容易在团队和组织之间使用。

请注意,只有在集合算法中所有数据块的大小相等时,报告DCT百分位数才是有意义的。

结论

集合通信操作的基准测试是理解分布式AI基础设施性能极限的基础性方法。它是AI集群设计和优化过程中寻找改进方案的有用工具。无论是开源还是商业实现,这些工具都围绕着一组共同的输入参数和测量指标进行操作。在本文中,我们提供了这些参数的定义,并详细阐述了它们的含义,以助力术语的标准化。

术语和定义一览表

术语

Collective Operation

定义

集合通信算子,这些通信模式涉及一组进程间的数据交换,是扩展型AI/ML集群中网络通信的基本单元,负责在GPU之间移动数据。

单位/值

Broadcast

Gather

Scatter

ReduceScatter

AllGather

AllReduce

AlltoAll

术语

Rank

定义

在集合通信操作中交换消息的端点的标识符。通常,一个Rank代表一个GPU。在某些情况下,一个GPU可以有多个Rank。

单位/值

从0开始的整数

术语

Collective Size(n)

定义

集合通信中Rank的数量

单位/值

2或大于2的整数

术语

Data Size(S)

定义

集合通信操作中,单个Rank输入的数据大小

单位/值

Bytes

术语

Collective Completion Time (CCT)

定义

集合通

集合通信操作完成所需的时间,尤其适用于比较不同集合通信算法在处理不同数据大小时的性能表现。

单位/值

术语

Algorithm Bandwidth (algbw)

定义

一种用于比较不同数据大小下集合通信算法性能的指标。算法带宽(algbw)= 数据大小S / 集合完成时间(CCT)

单位/值

GB/s

术语

Bus Bandwidth (busbw)

定义

描述了集合通信算法在AI基础设施中的瓶颈性能。该公式是特定于算法的。

单位/值

GB/s

术语

Ideal %

定义

将测量的集合通信完成时间(CCT)与给定算法、传输开销和网络接口速度的最小理论值进行比较。

单位/值

术语

Data chunk Completion Time (DCT)

定义

在两个Rank之间传输一个数据块所需的时间。测量集合通信操作中每个数据块完成时间(DCT)的值,并报告最小值、最大值、第50百分位数(P50)和第95百分位数(P95)有助于理解系统中的带宽公平性。

单位/值

关于是德科技

是德科技(NYSE:KEYS)启迪并赋能创新者,助力他们将改变世界的技术带入生活。作为一家标准普尔 500 指数公司,我们提供先进的设计、仿真和测试解决方案,旨在帮助工程师在整个产品生命周期中更快地完成开发和部署,同时控制好风险。我们的客户遍及全球通信、工业自动化、航空航天与国防、汽车、半导体和通用电子等市场。我们与客户携手,加速创新,创造一个安全互联的世界。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 通信
    +关注

    关注

    18

    文章

    6042

    浏览量

    136141
  • gpu
    gpu
    +关注

    关注

    28

    文章

    4753

    浏览量

    129058
  • AI
    AI
    +关注

    关注

    87

    文章

    31133

    浏览量

    269455
  • 人工智能
    +关注

    关注

    1792

    文章

    47425

    浏览量

    238948
  • 机器学习
    +关注

    关注

    66

    文章

    8425

    浏览量

    132770

原文标题:集合通信与AI基础架构

文章出处:【微信号:是德科技KEYSIGHT,微信公众号:是德科技KEYSIGHT】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    AI芯片热潮和架构创新是什么

    魏少军谈AI芯片热潮和架构创新 透露清华Thinker芯片将独立融资
    发表于 04-24 11:29

    【CC3200AI实验教程14】疯壳·AI语音人脸识别-AI人脸系统架构

    CC3200AI实验教程——疯壳·开发板系列AI人脸系统架构AI人脸识别系统由7大块组成,分别是摄像头、CC3200、串口调试助手、路由器、公网、服务器、数据库以及百度
    发表于 08-31 16:35

    基于VxWorks的嵌入式系统复合通信模式

    基于VxWorks的嵌入式系统复合通信模式
    发表于 03-29 12:30 12次下载

    中国联通正式启用OSS融合通信系统进行扩容

    据了解,中国联通此次OSS融合通信系统进行扩容及扩建融合通信系统1套,包括:扩容联通内部现有的OSS融合通信系统和扩建面向政企或行业客户的融合通信系统。
    发表于 11-26 09:49 2263次阅读

    面向5G的光纤无线融合通信技术

    面向5G的光纤无线融合通信技术(在通信网络平台上可以完成信息存储)-该文档为面向5G的光纤无线融合通信技术讲解资料,讲解的还不错,感兴趣的可以下载看看…………………………
    发表于 07-30 08:42 7次下载
    面向5G的光纤无线融<b class='flag-5'>合通信</b>技术

    【汇编语言:AVR架构】:常用指令集合

    【汇编语言:AVR架构】:常用指令集合
    发表于 11-15 10:36 22次下载
    【汇编语言:AVR<b class='flag-5'>架构</b>】:常用指令<b class='flag-5'>集合</b>

    NVIDIA 集合通信库加快深度学习训练速度

    NVIDIA 集合通信库(NCCL)可实现针对 NVIDIA GPU 和网络进行性能优化的多 GPU 和多节点通信基元。
    的头像 发表于 07-30 09:02 1351次阅读

    基于智能电网的综合通信系统简述

    电子发烧友网站提供《基于智能电网的综合通信系统简述.pdf》资料免费下载
    发表于 10-26 11:43 0次下载
    基于智能电网的综<b class='flag-5'>合通信</b>系统简述

    讯维融合通信系统:智能通信技术的实践与应用案例

    讯维融合通信系统作为智能通信技术的杰出代表,已经在多个领域得到了广泛实践与应用,为企业和社会带来了显著的价值。以下是一些具体的实践与应用案例: 智慧城市建设中的综合监控系统 : 在某国家级智慧城市
    的头像 发表于 04-10 16:31 576次阅读

    讯维融合通信系统:智能通信技术的安全与隐私保障

    讯维融合通信系统,作为一款引领行业前沿的智能通信技术解决方案,不仅致力于提供高效、便捷的通信体验,更将安全与隐私保障作为核心使命。以下是关于讯维融合通信系统在安全与隐私保障方面的详细介
    的头像 发表于 04-10 16:34 434次阅读

    讯维融合通信系统:企业数字化转型的得力助手

    讯维融合通信系统在企业数字化转型中扮演着得力助手的角色,它以其独特的优势和功能,助力企业实现高效、便捷和安全的通信。以下是关于讯维融合通信系统的详细介绍: 一、系统概述 讯维融合通信
    的头像 发表于 04-10 16:36 469次阅读

    讯维融合通信系统在医疗领域的应用:打破时间与空间的限制

    合通信系统在医疗领域的应用,无疑为医疗服务打破了时间与空间的限制,提供了更为高效、便捷和智能的通信解决方案。以下是关于融合通信系统在医疗领域应用的一些主要方面: 首先,融合通信系统通
    的头像 发表于 04-12 15:34 437次阅读

    合通信技术的未来展望:更多可能,更多惊喜

    合通信技术的未来展望充满了无限可能与惊喜。随着科技的不断进步,我们可以预见,未来的融合通信系统将会变得更加智能、高效、安全和便捷,为企业和个人用户带来前所未有的通信体验。 首先,未来的融合通
    的头像 发表于 04-12 16:24 480次阅读

    讯维融合通信系统:解决企业通信痛点的利器

    合通信系统,作为解决企业通信痛点的利器,正日益受到广泛关注和应用。该系统通过集成多种通信技术和功能,为企业提供了一种全面、高效、灵活的通信解决方案,有效解决了传统
    的头像 发表于 04-12 16:27 460次阅读

    讯维融合通信系统在机场通信网络建设中的实践

    讯维融合通信系统在机场通信网络建设中的实践主要体现在以下几个方面: 首先,在机场通信网络的构建过程中,讯维融合通信系统能够实现各类通信设备和
    的头像 发表于 04-19 16:30 468次阅读