机器中心发起了机器计算机速度的双重挑战以及机器社论部门的系统稳定性。随着当今人工智能的快速发展,超级智能计算机组已成为促进技术进步的中央基础设施。国外的技术巨头正在制定计划。 OpenAI,Oracle和Softbank正在推广“星门”项目,并计划为数百万的GPU配备,预计将花费超过1000亿美元。微软,Google和XAI已连续完成了100,000张卡的组。在中国,运营商还在加速转换为基本AI基础供应商,累计投资超过100亿元人民币,正在建造的四个10,000级的智能计算机中心水平,具有智能计算的规模,而不是重复。超大规模的Gruintelligent计算柱必须面临许多挑战。伟大的硬件承认投资和嗨GH运营和维护成本。更重要的是,简单地堆叠硬件并不能解决所有问题。核心挑战是如何设计软件系统并组织成千上万的高计算机单元。在范卡大小或数百万张卡片的组中,设备的分解也不例外,几乎是标准的。组件故障可能会中断整个训练任务,这使计算机用电系统的稳定性比重要的指标更重要,而不是纯计算机电源。 AI基础架构由计算机科学 +通信组成,集体通信库变得越来越重要,例如智能计算机组的“神经系统”。通信库聚集是GPU计算机芯片和高性能网络的交集,是基于GPU软件的组件。例如,可以提供HIGH – 性能拓扑设置操作,包括简历,所有减少,Allgather和ReDuceCters。这些通信原始性针对各种互连产品进行了优化,包括NVIDIA和PCIE,NVLINK,ETHERNET和INFINIBAND GPU。在这种情况下,Chunggi,基本电流,Zhistu,中国Unicom,Bihan,Tingshua和东南部共同创建了在多种生产环境中实施的高效GPU,高释放和高视觉VCCL(Venus Collective Closisive库)集体通信的库。开源代码和文档存储库:https://github.com/sii-rearch/vcl vccl系统的体系结构在下图中显示为中间件通信,接收培训框架并与异质硬件设备兼容。 VCCL是基于NCCL开发的,通信组的起始逻辑中引入了三个主要组件(拓扑搜索,网络图形的构建,渠道建立者T)。 VCCL的目的不仅是为了提高通信效率,而且还提高了GPU的计算机功能。通过智能的P2P编程(例如DPDK),VCCL合理地将通信任务放到了CPU上,实现了PP(并行)工作流中的深层重叠和全球负载平衡,从而大大降低了GPU的无活动时间。实际测量结果表明,基于Megatron-LM的开源的Cassock性能,VCCL之后对密集模型的训练可以改善U Endn 2%-6%的端到端计算机功率的使用。在超大的智能计算机组中,网络故障几乎是不可避免的风险来源。 VCCL设计了一种基于主要备份QP链接的故障耐受性机制,以显着提高通用稳定性,而不会增加系统负载。这种机制可以将群集断层率降低超过50%,并且“如果网络故障,可以将其删除”,这使得PR变得更容易事件大型模型培训,可以被中断。 VCCL设计流遥测之间的微妙的交通观察机制指向GPU之间的点,可以清楚地捕获训练过程中通信速率的细微变化,从而提供精细的谷物 – 粒度网络可观察性能力。设计1:P2P智能编程问题,例如DPDK:高SM职业和P2P通信的复杂操作。 SM GPU(传输多处理器)传输多处理器是含有cuda核,记录,卡希斯和其他组件的NVIDIA GPU的中央计算单元。程序员编写由CUDA执行时间编程的原子核函数。尽管NCCL P2P通信不包括标准化操作,但已发现代表大量SM资源。同时,NCCL P2P操作引入了多个独立的通信操作,从而减慢了一般绩效。下表显示了资源使用stati使用两个GPU服务器执行NCCL测试。下图显示了P2P操作的过载统计信息,其中大约25%用于Video内存的副本。计算机体系结构的演变是周期性且相似的。技术方向总是从性能功能发展,而建筑设计往往会从一般到专用。 CUDA是一个黑匣子,与Linux内核一样,它具有低编程效率来计算通信,有限的API接口,并且更难优化。十五年前,云计算的开发导致网络数据运输以提高前所未有的利率,并且网络处理绩效要求达到了目的。基于核的传统网络包装处理方法无法再满足现代高速网络设备的需求。 DPDK(数据平面开发套件))出生并目前根据Centra在所有云号中执行L CPU服务器。 DPDK使用调查而不是中断来转换和接收数据,将procthe网络数据平面从核的状态迁移到用户状态,并通过零副本加速数据传输而无需阻止。 VCCL提出了一种DPDK的P2P设计,该设计与DPDK一致,该DPDK优化了Linux Nucleus协议的网络处理。 VCCL优化了CUDA侧的通信处理:没有SM的P2P。在培训过程中,GPU服务器通常使用非常低的CPU。 VCCL省略了P2P的CUDA编程和处理机制,将其下载到CPU以执行P2P操作,而无需启动CUDA核的功能,而无需SM。没有SM的实现不是直接的。在CPU上运行时,P2P没有同步机制。也无法保证GPU计算流的依赖性。 VCCL使用cudalunchHostFunfuncfuncfuncfuncfuncfuncial cuda pro的接口通过CPU的横向投票机制进行语法,同步操作,解决了工程中的几个隐藏的果酱问题(悬挂)。零副本P2P是传统的CUDA通信,其中片段缓冲区和应用程序缓冲区在块缓存中复制。 VCCL使用用户缓冲区注册机制通过NCCLMemalloc接口将应用程序数据直接映射到网卡中。零副本设计有效地避免了由多方I/O访问引起的问题问题。没有VCCL SM的深度PP设计的重叠可以进一步消除传统的GEMM计算和P2P通信中的SM冲突。竞争的这一部分受到CUDA编程机制的限制,无法通过复制传统的PP计算通信来消除。 VCCLFREE P2P允许您为计算分配更多SM资源。同时,VCCL在PP部门中令人沮丧。这允许大量的负载平衡,最终,交流的深度iS叠加在计算中。设计2:恢复失败公差挑战QP:网络抖动是最常见的故障类别。在大规模分布式培训中,与网络波动有关的链接故障(例如网络端口,交换异常)超过了GPU故障和其他故障。我们计算了从2024年3月到2024年12月的数千个GPU组的失败。如果发生故障,相应的通信尾巴对(QP,扭矩扭矩)在等待时间后无法发送,请触发AEQ事件并立即进入ER Erne州。结果,收集通信的一般操作被卡住了。 (悬挂),大型模型中的训练直接失败,并且该任务被警卫犬被迫完成,直到等待时间结束。鉴于网络的失败,现有的行业解决方案通常在满足培训期间立即恢复要求方面遇到困难。这是一个取决于等待时间参数的NCCL,这意味着traininG中断和漫长的等待。尽管控制点可以减少故障恢复时间,但它需要重新启动或逆转,并且无法保证训练的连续性。网络端口的汇总适合处理突然的网络端口。它不能在单端口群集方案中使用,也不能支持开关故障的公差。 VCCL提出了一种更常见的初级且价格较低的主要备用设计,用于原位恢复。在通信组开始过程中,VCCL为每对通信尾巴创建了一对通信尾声。当发生网络故障时,VCCL可以在下层实时检测到它,并自动将流量引导到支持端口而无需完全区分通信。整个过程不需要感知其他应用或干预层。恢复原始链接后,VCCL检测到流量并将其返回到主要的Communicatio对n尾巴和聚合通信的性能得到了完全恢复。 QP设计的VCCLEL核心的主要备份是状态的同步和迁移。如下图所示,VCCL使用三个指针来表示两端的传输和接收状态:在发件人的末尾,已发布的出版物代表了应用程序创建的数据,Envoy表示由网络卡上的网络代理创建的数据,并且ACKED代表已发送和确认的数据。在接收器中,已发布的含义含义相同,并且收到和发送的含义已准备好接收并与已完成和接收的数据相对应。如果红色Falla链接,VCCL会使用最终的接收驱动机制从上次确认的数据块向前移动。当完成网络链接的恢复后,VCCL使用时间检测机制将其返回到主要的通信尾巴。设计3:精细谷物可视化任务流量遥测的EM:没有有效的工具用于集群故障和性能分析的位置。当总体通信操作同时暗示GPU计算和网络传输时,当群集任务的故障与NCCL错误相关时,大多数报告的错误,包括困在培训和减速中的问题。传统方法需要多次手动干预,这使得很难复制障碍。停止和解决集群非常昂贵。当前问题的核心是缺乏用于收集和通信的调整后的在线监控工具,现有的网络监控工具都是颗粒状的几秒钟,而收集通信操作通常以毫秒或微秒的水平完成。 VCCL在RDMA编程中使用细腰部抽象提出了流量遥测设计,使所有收集通信操作都可以在SI的数据传输中分解网卡的DE,由RDMA动词代表。传输语义。基于集体通信信息的监视和获取机制导致统计不准确性,以使多个消息共享链接宽度。 VCCL还使用滑动窗口机制来计算同一对通信尾部中所有相关消息的平均即时带宽,并允许使用聚合通信层,它将使用crose -level -level统计信息。 VCCL流量遥测在GPU之间的微秒级别接收流量检测。这使您可以清楚地捕获培训期间的沟通速率的细微变化。这可以用作参考点,以确定计算机和通信操作进行何时进行,发现群集任务为何固定并分析慢节点。同时,Flootelemetry可以在实际时间端口计数未完成的RDMA号(作业请求),并根据此端口计算。确定网络忙碌的工作尾巴。实验评估VCCL基于NCCL v2.21.5,并使用NVIDIA HOPPER GPU ROCEV2群集进行评估。 GPT-2模型的GPT-2,32B,70B,177B和314B与最佳实践的超型参赛者合并到了Megatron-LM中。 P2P(例如DPDK)可以提高VCCL和NCCL P2P性能之间的效率比较。对于不同的消息大小,通过NCCL测试对VCCL和NCCL RECV操作进行了测试。与NCCL相比,VCCL算法带宽增加了20.12%,而在小消息中,与NCCL相比,VCCL延迟减少了至少28.5%。与NCCL相比,VCCL将CPU的使用增加4%,具体取决于零职业P2P SM的占用假设。 Megatron-LM分别使用VCCL和NCCL执行,以证明培训的精度和使用计算机功率。 VCCL与Loos NCCL收敛曲线和VCCL DPDK型P2P DESI一致GN确保正确的调用顺序计算和通信。具有不同的模型尺寸和群集尺寸,端到 – 端计算机功率VCCL比使用计算机到NCCL结束时高2%-6%,这反映了由SM -Free,零副本和PP深层重叠引起的新的性能改进。主要的挫折QP使用手动方法来提高可用性。第二秒端口4和19秒的低点。在秒的4-19秒内,VCCL和NCCL同时执行保留机制。在保留机制结束14秒后,NCCL的集体通信带无法恢复。可以通过更改替代通信尾巴来维护VCCL。 8.1%的降低带宽,VCCL在19秒后返回PRI通行性尾巴,其性能恢复正常。当在等待上使用一对通信尾巴时,降低的红牌端口VCCL仅引入使用计算机Powe的0.38%r。这与使用普通运算计算机功率的使用本质上是相同的。 FLO遥测可改善可视化。 VCCL流量遥测的毫秒监测函数分别显示了1、8和32个窗口尺寸的P2P屈服分别具有10个微妙的粒度。如果窗口大小在1中建立,则可以监视消息的粒度,并且差异很大。如果窗口尺寸为32,则VCCL可以显示出无问题的性能,但不会显示即时波动。该实验表明,当窗口大小在8中建立时,实现了平衡的监视精度和柔软度。意味着实际VCCL实现过程还解决了服务器模型的异质性问题。不同制造商的服务器具有不同的PCIE拓扑,这会导致多个网卡端口之间的交叉体和流量不平衡,这导致RDMA性能,而不必达到预期。系统地解决这个专业Blem,VCCL设计了针对各种硬件配置的优化解决方案。在VCCL在线操作期间,用户遇到了几个集群问题,包括集体通信错误和较低的培训表现。但是,在某些情况下,存在与通信无关的根本原因。相关案例包括:云平台的参数不正确,PU的ICLO分配不足。 Venti Speed ConfigurationGPU服务器lter不正确。单个GPU卡等执行任务的失败。这些问题似乎很简单,但是黑匣子分析非常困难。多维在线故障位置和性能分析工具需要连续的迭代优化。 VCCL失败耐受机制适用于网络硬件设备故障,为在线实施创新或国家网络组件提供了冗余空间,这些空间有效地支持了Developmeme计算机电源生态系统的NT。 VCCL允许团队看到通信库的发展机会,并结合更高的性能和更高的稳定性。将来,VCCL将接受更多并行的工作流,MOE和其他模型结构,并适应新的硬件体系结构。
特殊声明:内容前验(包括照片和视频(如果有),如果有)已被网络自我媒体平台的用户加载和发布。该平台仅提供信息存储服务。
注意:以前的内容(如果您有照片或视频)将由社交媒体平台Neteteshao的用户收取和发布,仅提供信息存储。服务。