集合通信库VCCL释放GPU极致算力,创智、基流、智谱、联通、北航、清华、东南重磅开源(集群内部通信)

集合通信库VCCL释放GPU极致算力,创智、基流、智谱、联通、北航、清华、东南重磅开源(集群内部通信)

(来源:机器之心)

机器之心发布

机器之心编辑部

计算速度与系统稳定性的双重挑战,正推动 AI 基础设施向新一代集合通信技术迈进。

在人工智能迅猛发展的今天,超大规模智算集群已成为推动技术突破的核心基础设施。

海外科技巨头纷纷布局,OpenAI 与甲骨文和软银正在推进「星际之门」项目,计划配备数百万个 GPU,预计耗资超千亿美元💵;微软、谷歌、xAI 陆续完成十万卡集群交付使用。

在国内,运营商也加速向 AI 基础底座供应商转型,累计投资已超百亿元,建成 4 个万卡级智能计算中心,智算规模增长超 2 倍。

超大规模智算集群需要应对诸多挑战:硬件配套投入大、运营维护费用高。更重要的是,单纯堆砌硬件并不能解决所有问题,如何设计软件系统,将成千上万个计算单元高度组织起来才是核心挑战。在万卡甚至百万卡规模的集群中,设备故障几乎成为常态而非例外,任何一个组件的失效都可能导致整个训练任务中断,算力利用率和系统稳定性成为比纯粹算力更为关键的指标。

AI 基础设施由计算 + 通信构成,集合通信库作为智算集群的 “『神经系统』”,其重要性日益凸显。集合通信库是 GPU 计算『芯片』与高性能网络的交汇所在,是 GPU 软件栈基座组件。如『英伟达』的集合通信库(NVIDIA Collective Communication Library,NCCL),可提供高性能、拓扑感知型集合运算,包括 P2P(Point-to-Point) Send/Recv、AllReduce、AllGather 和 ReduceScatter 等。这些通信原语针对 NVIDIA GPU 和各种互连产品进行了优化,包括 PCIe、NVLink、RoCE 以太网和 InfiniBand。

在这种背景下,创智、基流、智谱、联通、北航、清华、东南联合打造了高效率、高可靠、高可视的 GPU 集合通信库 VCCL(Venus Collective Communication Library),VCCL 已部署于多个生产环境集群中。

  • 开源代码与文档仓库:https://github.com/sii-research/VCCL

VCCL 的系统架构如下图所示,作为通信中间件,支撑训练框架,兼容异构硬件设备。VCCL 基于 NCCL 开发,在通信组启动逻辑(拓扑搜索、网络图构建和信道建立)之上,引入三个关键组件:

  • VCCL 的目标不仅是提升通信效率,更是要让 GPU 算力得到最大化释放,通过 DPDK-like P2P 智能调度,VCCL 将通信任务合理卸载至 CPU,并在 PP(Pipeline Parallel) 工作流中实现深度交叠和全局『负载均衡』,大幅缩短 GPU 空闲时间。实测显示基于开源框架 Megatron-LM 的 SOTA 性能,使用 VCCL 后的 Dense 模型训练端到端算力利用率可进一步提升 2%-6%。

  • 超大规模智算集群中,网络故障几乎是不可避免的风险源,VCCL 设计了一套基于 Primary-backup QP 链接的容错机制,在不增加系统负担的前提下,大幅提升整体稳定性。通过这一机制,VCCL 能够将集群故障率降低超过 50%,真正做到 “网络出故障了也能原地拉回”,让大模型训练不再轻易被打断。

  • VCCL 设计了 Flow Telemetry,一种微妙级的 GPU 间点对点流量观测机制,能够清晰捕捉训练过程中通信速率的细微变化,为研发团队提供更细粒度的网络可观测能力,可有效解决传统基于计数的统计方式粒度粗、准确度差的问题,支持定位训练过程中的慢节点或慢链路。

设计 1:DPDK-like P2P 智能调度

问题挑战:P2P 通信的高 SM 占用和复杂操作。GPU SM(Streaming Multiprocessor)流式多处理器是『英伟达』 GPU 的核心计算单元,包含 CUDA 核心、寄存器、缓存等组件。编程人员编写核函数,由 CUDA 运行时来进行任务调度。我们发现,NCCL P2P 通信没有涉及规约操作,但仍然占用了不低的 SM 资源,同时 NCCL P2P 操作引入多步与通信无关的操作,拖慢了整体性能。下表是使用两台 GPU 『服务器』运行 NCCL-Tests 统计的 P2P SM 资源占用情况。下图是 P2P 操作中开销统计,其中约 25% 的时间用于显存拷贝。

计算机体系结构的演进具有周期性和相似性,一个技术方向演进总是从功能到性能,架构设计也倾向于从通用到专用。CUDA 是一个黑盒,计算通信的调度效率低,API 接口有限,优化难度大,与 Linux 内核相似。

15 年前,随着云计算发展,网络数据流量以前所未有的速度增长,对网络处理性能的要求也达到了极致。传统的基于内核的网络数据包处理方式已无法满足现代高速网络设备的需求。DPDK(Data Plane Development Kit) 应运而生,目前已运行于每一台云『数据中心』的 CPU 『服务器』中。DPDK 将网络数据平面处理从内核态迁移至用户态,采用轮询而非中断方式进行数据收发调度,并通过大页内存无锁零拷贝的方式加速数据传输。

VCCL 提出 DPDK-like P2P 设计,与 DPDK 优化 Linux 内核协议栈的网络处理一致,VCCL 对 CUDA 侧的通信处理进行优化:

  • SM-Free P2P,在训练过程中 GPU 『服务器』的 CPU 利用率往往很低,VCCL 绕过 CUDA 内部对 P2P 的调度和处理机制,将 P2P 操作卸载至 CPU 运行,无需启动任何 CUDA 核函数,实现 SM-Free。SM-Free 的实现并不直接,P2P 在 CPU 侧运行缺少同步机制,无法保证 GPU 计算流的依赖关系。VCCL 采用 CUDA cudaLaunchHostFunc 编程接口,通过 CPU 侧轮询机制进行操作同步,并在工程上解决了多种隐藏卡死(Hang)问题。

  • Zero-Copy P2P,传统 CUDA 通信中,会分配块缓存(chunk buffer),将应用缓存(application buffer)拷贝至块缓存,VCCL 使用 User Buffer Registration 机制,通过 ncclMemAlloc 接口,直接将应用数据映射至网卡。Zero-Copy 设计也有效防止了因为多方 I/O 访问带来的卡死问题。

  • Deep PP Overlap,VCCL SM-Free P2P 设计可以进一步消除传统 GEMM 计算和 P2P 通信的 SM 竞争。这部分竞争,受限于 CUDA 调度机制,在传统 PP 计算通信交叠中无法消除。VCCL SM-Free P2P 可以给计算分配更多 SM 资源,同时 VCCL 在 PP 切分中使能全局『负载均衡』,最终将通信深度交叠于计算之内。

设计 2:Primary-backup QP 原地恢复容错

问题挑战:网络抖动是发生最多的故障类别。在大规模分布式训练中,网络抖动相关的链路故障(如,网口 Down、交换机异常等)占比超过 GPU 故障和其他故障。我们统计了一个数千卡规模的 GPU 集群在 2024 年 3 月至 12 月的故障情况。一旦发生网络故障,对应的通信队列对(QP,Queue Pair)在超时后无法继续发送,会触发 AEQ 事件并立刻进入 ERR 状态,结果是整体集合通信操作被卡死(hang),大模型训练直接失败,待到超时时间结束,任务才会被 watchdog 强制退出。

面对网络链路故障,现有的业界方案往往难以满足训练过程中的即时恢复需求:

  • NCCL,依赖 timeout 参数,往往意味着训练中断与长时间等待。

  • checkpoint,虽然可以缩短故障恢复时间,但依然需要重启或回滚,无法保证训练的连续性。

  • 网口聚合,适合应对突发的网口 Down,无法适用于单端口集群场景,不支持交换机故障容忍。

VCCL 提出更通用且成本更低的 Primary-backup QP 设计,进行原地恢复。在通信组启动过程中,VCCL 为每一个主通信队列对,建立一个备份通信队列对。当网络出现故障时,VCCL 能在底层实时检测,自动将流量无差别导向备份网口完成通信。整个过程无需应用层感知,无需额外干预。当原链路恢复后,VCCL 会检测并将流量切换回主通信队列对,集合通信性能完全恢复。

VCCL Primary-backup QP 设计的核心在于状态同步和迁移。如下图所示,VCCL 使用三个指针代表收发两端的传输和接受状态。在发送端,posted 代表应用准备好的数据,transmitted 代表网络代理准备在网卡发送的数据,acked 代表已发送并确认收到的数据。在接收端,posted 含义一致,received 与 transmitted 对应代表准备接收的数据,done 与 acked 对应代表确认收到的数据。网络链路故障时,VCCL 采用接收端驱动的机制,从最后一个确认的数据块开始重传。VCCL 采用定时检测的机制,在完成网络链路恢复时,切换回主通信队列对。

设计 3:Flow Telemetry 细粒度可视化

问题挑战:集群故障定位与性能分析缺少有效工具。由于集合通信操作同时涉及 GPU 计算与网络传输,集群任务故障发生时的大部分报错都与 NCCL error 相关,包括训练任务卡死、降速等问题。传统手段需要大量人工介入,而且故障难以复现,对于大任务停集群排障是一件代价极高的事情。造成当前问题的核心在于,缺少对集合通信的细粒度且在线监测工具,现有的网络监控工具都处在秒级粒度,而集合通信操作通常在毫秒级甚至微秒级完成。

VCCL 提出 Flow Telemetry 设计,利用 RDMA 编程的细腰抽象,所有集合通信操作都可以拆解为微秒级 RDMA verbs 代表的网卡侧数据发送传输语义。基于集合通信消息的监测采集机制,会因为多个消息共享链路带宽而造成统计不准确问题。VCCL 进一步采用滑动窗口机制,在同一通信队列对中,统计所有相关消息的平均瞬时带宽,得到集合通信层的微秒级统计数据。

VCCL Flow Telemetry 支持 GPU 间微秒级别流量探测,能够清晰捕捉训练过程中通信速率的细微变化,以此作为基准可进一步确定计算和通信操作的运行时间点,定位集群任务卡死原因,分析慢节点。同时,Flow Telemetry 能够实时统计端口上未完成的 RDMA WR(Work Request)数量,并据此推测工作队列长度变化,从而精准判断网络是否出现拥塞。

实验评测

VCCL 基于 NCCL v2.21.5 实现,采用千卡『英伟达』 Hopper GPU RoCEv2 集群进行评测,以最佳实践超参数运行 Megatron-LM 自带的 GPT-2 6B、32B、70B、177B、314B 大小模型。

DPDK-like P2P 对效率的提升

比较 VCCL 和 NCCL 的 P2P 性能。在不同消息大小下,通过 NCCL-Test 测试 VCCL 和 NCCL 的 send/recv 操作,VCCL 在 1GB 消息大小下算法带宽比 NCCL 提升 20.12%,VCCL 在小消息下时延比 NCCL 降低至少 28.5%。VCCL 在实现 P2P 操作 SM 零占用的前提下,对于 CPU 的使用,只比 NCCL 增加了 4%。

分别使用 VCCL 和 NCCL 运行 Megatron-LM,测试训练准确性和算力利用率。VCCL 与 NCCL 的 Loos 收敛曲线一致,VCCL DPDK-like P2P 的设计保证了计算和通信的正确调用顺序。在不同模型大小和集群规模下,端到端算力利用率 VCCL 比 NCCL 有 2%-6% 提升,体现出 SM-Free、Zero-Copy 以及 PP 深度交叠带来的新的性能增益。

Primary-backup QP 对可用性的提升

采用手动方式在第 4 秒和第 19 秒之间 Down 掉网卡端口,在第 4 秒和第 19 秒之间,VCCL 和 NCCL 同时在执行重试机制,第 14 秒后重试机制结束,NCCL 的集合通信带宽无法恢复,而 VCCL 通过切换备用通信队列对,仍然可以保持,76.6% 的 AllReduce 带宽和 58.1% 的 ReduceScatter 带宽,19 秒后 VCCL 切换回主通信队列对,性能恢复正常。在采用备用通信队列对时,Down 掉一个网卡端口,VCCL 只引入 0.38% 的算力利用率下降,与正常运行时的算力利用率基本一致。

Flow Telemetry 对可视化的提升

验证 VCCL Flow Telemetry 的毫秒级监测功能,分别在窗口大小为 1、8、32 的情况下,以 10 微妙粒度呈现 P2P 吞吐量。当窗口大小设为 1 时,等价于消息粒度的监测,波动较大;当窗口大小为 32 时,VCCL 可以平滑展示吞吐量,但缺少瞬时波动的呈现。实验显示,窗口大小设置为 8 时,可以平衡监测的准确度和平滑性。

VCCL 部署与展望

VCCL 在实际部署过程中,还解决了『服务器』机型异构的问题。不同厂商的『服务器』,因 PCIe 拓扑结构差异导致跨设备连接不通及多网卡端口间流量不均衡,致使 RDMA 性能未达预期。为系统性地解决此问题,VCCL 针对不同硬件配置设计了相应的优化方案。

VCCL 在线运行过程中,用户会遇到一些集群问题,包括集合通信报错或者训练性能下降。但会存在定位出的根因与通信无关的情况,相关案例包括:云平台参数配置错误导致 CPU 核心分配不足;GPU 『服务器』风扇转速配置错误;GPU 单卡执行任务故障等。这些问题字面上看似简单,但集群黑盒分析起来挑战很大,多维度在线故障定位与性能分析工具需要持续迭代优化。

VCCL 的容错机制可以更好地包容网络硬件设备的故障,也为创新或国产化网络组件上线部署提供冗余度空间,有效助力于算力生态发展。

VCCL 让团队看到了更高性能、更高稳定性的集合通信库发展机遇,未来 VCCL 会支持适配更多并行工作流、MoE 等模型结构、新型硬件架构。

特别声明:[集合通信库VCCL释放GPU极致算力,创智、基流、智谱、联通、北航、清华、东南重磅开源(集群内部通信)] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

海信E8Q和TCLQ10L怎么选?一场关于视觉统治力的家庭影院对决(海信E8Q和E8N区别)

在众多百吋电视中,海信E8Q与TCL Q10L无疑是两位备受瞩目的选手。 总结来看,如果你追求极致的画质与音效,注重光影细节、色彩准确性和声音还原,经常观看电影或玩游戏,且家中光线条件复杂,海信E8Q会是更值…

海信E8Q和TCLQ10L怎么选?一场关于视觉统治力的家庭影院对决(海信E8Q和E8N区别)

第36届银河奖正式揭晓,刘麦加、城城与蝉获最佳新人奖(银河奖获奖名单)

颁奖典礼结束后,刘麦加接受了新闻记者的采访,谈及女性♀️作家在科幻作品领域所面临的境况,刘麦加直言:“其实女性♀️在创作上是没有太多的优势。” 在获得银河奖之前,刘麦加刚刚正式成为一名母亲,她告诉记者,从孩子出…

第36届银河奖正式揭晓,刘麦加、城城与蝉获最佳新人奖(银河奖获奖名单)

【成都】『郭富城』ICONIC世界巡回演唱会2025(河马票务)(g『郭富城』)

演唱会名为《ICONIC》,即是想要给歌迷呈现「经典和标志性」的演出,所以内地巡演特别调整金曲歌单,将通过崭新的舞台装备、特设的灯效、全新视觉特效来演绎,务求和现场观众来一晚盛大的大合唱,一起沉浸于金曲岁月…

【成都】『郭富城』ICONIC世界巡回演唱会2025(河马票务)(g『郭富城』)

父母爱情》再无回忆,巨资打造的取景地,十余年后只剩残垣断壁(父母爱情电视剧免费观看完整版)

2024年的薛家岛海滩,几丛野草倔强地从风化砖缝中钻出——这里曾是耗资十几万搭建的炮校大门遗址。三百名工匠在薛家岛复刻1950年代海军大院,从营房排水沟的倾斜度到渔网补丁的针脚,每个细节都在烧钱。绿幕永远无…

《<strong>父母爱情</strong>》再无回忆,巨资打造的取景地,十余年后只剩残垣断壁(父母爱情电视剧免费观看完整版)

苟芸慧離婚後不愁寂寞,為黃日華慶生頭貼頭合照心情大靚(苟芸慧丈夫)

昔日华裔小姐冠军苟芸慧(Joyce)近日以草帽双辫造型惊艳亮相好友生日宴,与&quot;靖哥哥&quot;黄日华贴面合影尽显亲密。 时光倒流至2018年,她与身家显赫的锡矿世家公子、职业赛车手陆汉洋(William)缔结连理

苟芸慧離婚後不愁寂寞,為黃日華慶生頭貼頭合照心情大靚(苟芸慧丈夫)