链载Ai

标题: DeepSeek与腾讯携手:让AI训练提速的通信优化幕后故事 [打印本页]

作者: 链载Ai    时间: 1 小时前
标题: DeepSeek与腾讯携手:让AI训练提速的通信优化幕后故事

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">大家有没有想过,我们现在用得越来越顺手的AI大模型,比如能写代码、画图、跟你流畅聊天的那些“智能体”,它们是怎么被训练出来、又怎么能飞快地给出响应的?

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">这些模型实在是太太太庞大了!它们的参数量动辄几千亿、上万亿,如果只用一台电脑(哪怕是配备了最强GPU的电脑),根本不可能装下整个模型,更别提在合理的时间内完成训练或推理计算了。这就像要建造一座宏伟的城市,或者管理一个国家,一个人单打独斗是绝对不行的,必须要有成千上万的人分工协作。

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">为什么AI大模型需要“团队合作”(并行计算)?

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">原因很简单,主要有两点:

    ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;color: rgb(63, 63, 63);" class="list-paddingleft-1">
  1. ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;text-indent: -1em;display: block;margin: 0.5em 8px;color: rgb(63, 63, 63);">
    1.ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">内存装不下!模型的参数、训练过程中产生的中间数据(比如激活值、梯度),加起来可能远超单个GPU的显存容量。就像你的电脑硬盘不够大,装不下所有高清电影一样,单个GPU装不下整个大模型。
  2. ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;text-indent: -1em;display: block;margin: 0.5em 8px;color: rgb(63, 63, 63);">
    2.ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(15, 76, 129);">算得太慢了!即使勉强能装下,让一个GPU一步一步计算完整个模型的所有层级,可能需要难以接受的时间。就像让一个人搬空整个仓库的货,效率太低。

所以,我们必须把模型“拆开”,让多个GPU一起分担计算任务,这就是并行计算(Parallel Computing)的核心思想。为了让这些GPU高效地进行团队合作,AI科学家们和工程师们发明了几种不同的“拆模型”方法。今天我们重点聊聊最主要的两种:张量并行流水线并行,以及一个至关重要的幕后英雄——连接GPU的“高速公路”

方法一:张量并行(Tensor Parallelism - TP)

打个比方:想象你和你的同事们要一起完成一个超大的数学计算(比如矩阵乘法),这个计算太大了,一个人的草稿纸不够写,或者算起来太慢。

怎么办?张量并行就是把这个单次巨大的计算任务(一个模型层内部的计算)“切”成几块,分给不同的GPU同时计算。每个GPU只负责计算这个大任务的一部分。最后,大家把各自计算的结果“拼”起来,得到最终的完整结果。

用图来示意张量并行的概念:

上图示意:张量并行将一个大的层内计算任务切分给多个GPU,GPU计算部分结果后需要汇集同步得到最终结果。

方法二:流水线并行(Pipeline Parallelism - PP)

打个比方:这就像工厂里的流水线。整个大模型看作是一个复杂的生产流程,包含很多道工序(模型的不同层或模块)。

怎么办?流水线并行就是把模型的不同层(或几层组成的模块)分配给不同的GPU,形成一个处理链条。GPU 1 计算完模型的第1层,立即把输出结果传递给 GPU 2 计算第2层,GPU 2 算完传给 GPU 3 计算第3层……数据就像产品一样,沿着流水线依次经过不同的GPU处理。

用图来示意流水线并行在训练时的概念(展示并行处理不同数据批次):

上图示意:流水线并行让不同GPU同时处理不同数据批次的模型层。注意其中一些“等待”的空隙,这就是“气泡”。

虽然上面的图更简洁地展示了流程,但为了更清楚地说明并行带来的效率提升(特别是训练时如何利用流水线同时处理多个数据批次),我们再看一个更概念性的图,想象多个数据包如何在流水线中穿梭:


实践中:它们经常被“打包”使用

对于当下最大最复杂的模型,通常会结合使用这两种技术:先用张量并行解决单层过大的问题(把一层拆到一组GPU上),再用流水线并行把这些(可能已经过张量并行处理的)层分派到更多的GPU集群上。此外,对于像MoE(混合专家模型)这样的特殊架构,还需要用到专家并行等更复杂的并行方式,这些都对GPU之间的通信提出了极高的要求。

为什么连接GPU的“高速公路”如此重要?

现在我们理解了并行计算的基本原理。不管是张量并行中层内的频繁数据交换,还是流水线并行中阶段间的数据传递,亦或是专家并行中需要在不同GPU之间路由数据,所有并行方式的效率,都高度依赖于GPU之间的数据通信

想象一下,你负责工厂流水线上的一个环节,加工好了零件得赶紧送给下一环节的同事。如果送货的路又窄又堵(网络互连慢),或者送货的“卡车”半天发不出一趟(网卡效率低),零件就会积压在你这里,或者下一位同事干等着,整条流水线就慢下来了。即使你加工得再快(单个GPU计算能力再强),也无济于事。

连接GPU的“网络互连”技术,就是决定这些并行计算效率的“高速公路”!它决定了数据能否快速、顺畅地在GPU之间流动。如果这条“高速公路”延迟高、带宽低、通行不稳定,就会带来严重的效率问题:

用图来示意网络通信对效率的影响:

上图示意:GPU间的网络传输速度直接影响下游GPU的等待时间,进而影响其利用率和整体效率。

DeepSeek 为什么特别感谢腾讯的“超高速公路”改进?

这就是为什么开源AI公司 DeepSeek 会公开感谢腾讯——而且这种感谢并非客套,而是源于腾讯在幕后对AI计算“高速公路”进行的硬核优化

具体来说,DeepSeek 有一个专门用于 MoE 等模型架构的开源通信框架,叫做DeepEP。这个框架需要处理的是高吞吐量、低延迟的数据传输任务,是实现模型高效训练的关键。

腾讯的Starlink Networking 团队(星脉网络团队)深入分析了 DeepEP 框架在实际高性能网络环境下的表现,就像给“高速公路”做体检。他们精准地找到了两个主要的“堵点”:

  1. 1.网卡能力没榨干:连接GPU到网络的“网卡”(Network Interface Card)通常有两个物理端口,就像高速公路的入口有双车道。但他们发现,在当时的实践中,由于底层软件或配置的问题,这两个端口的带宽能力并没有被充分利用起来,就像双车道只开了一条,或者即使开了两条,车辆调度不畅,总流量上不去。
  2. 2.CPU协调不够快:负责指挥数据如何在网络上传输的 CPU 引入了额外的延迟,就像交通指挥员的调度不够及时,导致车流迟滞。

针对这些具体的问题,腾讯团队进行了细致且深入的优化:

这些优化带来了什么?用数据说话:

这些看似“底层”的技术改进,却带来了惊人的实测效果:

最终,这些优化汇总起来,带来了整体性能的显著提升。正如报道所述,在 RoCE 网络环境下,性能提升了 100%(直接翻倍);在 InfiniBand 环境下,性能也提升了30%。具体的github Pull Request被记录在原文链接里。点击“阅读原文”可跳转。

为什么这对 DeepSeek 和整个行业重要?

总结一下:

AI大模型需要多个GPU并行计算。张量并行、流水线并行、专家并行等技术都需要GPU之间进行大量、高效的数据通信。连接GPU的网络,就是决定这些并行效率的关键“高速公路”。腾讯的Starlink Networking 团队通过对 DeepSeek 开源 DeepEP 框架进行的底层、硬核优化,成功打通了双网口瓶颈、解决了底层通信库的“隐形陷阱”,显著提升了GPU间的通信带宽(如 RoCE 下达到 50-60GB/s),带来了实测高达 100% 和 30% 的性能提升。这些技术突破,不仅让 DeepSeek 的模型训练实现“巨大提速”,也通过开源贡献,为整个AI大模型生态的高效发展注入了强大的动力。在AI算力日益宝贵的今天,这些提升GPU“协作效率”的幕后英雄,正扮演着越来越关键的角色!








欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5