真正决定算力上限的,不是芯片数量,而是通信能否找到自己的产品市场契合点
Hatched by Kevin Di
Aug 25, 2026
1 min read
2 views
91%
一台机器里塞进72颗高性能GPU,是否就意味着它拥有72倍的能力?
未必。更尖锐的问题是:当计算规模不断扩大时,究竟是什么决定了系统的上限,是芯片本身,还是芯片之间如何等待、传递和协同?
这正是高速互联架构与Token级流水并行之间隐秘而重要的共同问题。前者讨论的是如何让大量GPU像一台机器一样工作,后者讨论的是如何把一个模型的序列计算切开,让不同设备接力完成任务。它们看似分属硬件和软件,实际上都在解决同一个系统难题:如何让通信的粒度、连接的拓扑和任务的节奏彼此匹配。
如果匹配成功,新增的设备会带来近似线性的收益。如果匹配失败,系统就会陷入一种尴尬状态:计算单元越来越强,互联带宽越来越高,但大部分时间都在等待下一批数据。
从“带宽崇拜”转向“等待成本”
讨论AI基础设施时,人们很容易被几个巨大的数字吸引:每秒多少Gbps,多少TB/s,多少颗GPU,多少个交换芯片。然而,带宽只是运输能力,不是运输效率。一条高速公路拥有更宽的车道,并不意味着货物一定能更快送达。如果装卸站位置不对,车辆调度混乱,或者货物必须等前一辆车到达,公路再宽也无法消除拥堵。
高速互联系统中的数字尤其容易制造错觉。一个接口标称400Gbps,可能代表双向同时收发的总能力,也可能在具体架构中对应某个方向的有效带宽。到了芯片内部,若一个子链路由四对差分信号构成,再结合224G SerDes和编码开销,最终得到的有效数据率,必须经过层层换算才能与网络视角下的接口数量对应起来。
这不是技术细节上的吹毛求疵,而是系统设计的起点。如果不先统一“带宽到底从哪个观察角度计算”,就无法判断一条链路是否真的足够,也无法比较不同拓扑的效率。
在一个由72颗B200组成的系统中,每颗芯片拥有18个NVLink端口,9个交换托盘提供18颗交换芯片。每个GPU端口连接到一个NVSwitch,最终形成一个高度规则的全连接系统。这样的结构并不是简单地把交换机堆在机柜里,而是在物理布线、端口数量、交换芯片规模和GPU数量之间形成了精确的对应关系。
更重要的是,系统采用基于Credit的流控设计。发送端不能无限制地把数据推向接收端,而必须根据接收端可用的缓冲资源获得发送许可。这个机制的本质,是把“网络是否拥堵”转化为“我现在是否拥有继续发送的信用额度”。
这与Token级流水并行有着直接的对应关系。流水线中的每一个阶段,也在等待一种“信用”:前一阶段是否已经产生足够的数据,后一阶段是否已经准备好接收,当前序列切片是否能让计算持续进行。硬件网络靠Credit避免缓冲区溢出,软件流水靠调度避免计算单元空转。
高性能系统的核心,不是让所有部件同时工作,而是让等待发生在最便宜的地方。
连接的粒度,决定并行的命运
Token级流水并行的关键动作,是沿序列维度切分任务。不同设备不再各自处理完整序列,而是像一条装配线一样,接力处理序列中的不同部分。这个想法直观,却长期没有成为主流,原因并不在于它缺乏理论价值,而在于它很难找到合适的工作负载。
对于采用因果注意力的语言模型,序列中的不同Token并不是完全独立的。越靠后的Token,可能依赖越多的历史信息。为了让流水线各阶段负载均衡,系统必须同时考虑序列长度、依赖关系、激活传输和各阶段计算量。这实际上是一个复杂的优化问题。
如果切分得太细,通信次数会急剧增加,设备会花费大量时间在小批量数据搬运上。如果切分得太粗,流水线又会出现严重的不均衡,有的阶段忙得不可开交,有的阶段则长期等待。对于语言模型推理而言,动态序列长度和严格的因果依赖进一步放大了这一矛盾。
这说明一个经常被忽略的事实:一种并行方法是否先进,不取决于它能否在理论上表达并行,而取决于它能否在具体负载中稳定地填满流水线。
扩散模型的推理则提供了不同的条件。DiT一类模型虽然同样需要处理大量Token,但其计算过程不像自回归生成那样必须逐Token地产生结果。单个扩散步骤内部具有更强的整体性,多个Token之间的计算结构也更适合进行空间或序列维度的切分。于是,原本在语言模型中难以承受的调度复杂度,在扩散推理中可能变得可控。
这就是Token级流水并行找到适合场景的原因。不是方法突然变好了,而是工作负载终于提供了与方法相匹配的节奏。同一把刀,在坚硬材料上可能不够锋利,在合适的木材上却能展现价值。所谓产品市场契合点,放在系统架构中,就是并行策略与任务结构之间的契合。
物理拓扑与计算拓扑必须同时设计
硬件和软件的共同难题,还可以用两个词来概括:物理拓扑与计算拓扑。
物理拓扑回答的是设备如何连接。是松耦合的跨机连接,还是单机柜内的紧密连接?是通过光模块跨越较远距离,还是使用铜背板降低功耗和延迟?是让每个GPU连接少数几个邻居,还是通过交换芯片实现近似全连接?
计算拓扑回答的是任务如何流动。是每个设备独立处理一份完整输入,还是把一个输入切成多个片段?是数据并行、张量并行,还是沿序列方向建立流水线?不同算法对通信方向、通信频率和同步方式的要求完全不同。
当物理拓扑和计算拓扑一致时,系统会显得异常高效。整柜交付的GPU系统选择高密度铜互联,并不只是因为铜线便宜,而是因为它的使用边界已经被重新定义:所有部件被视为一台大型机器的组成部分,距离短、连接固定、功耗约束严格,因而可以用更紧密的方式换取更低的通信成本。
同样,Token级流水并行只有在任务具有合适的序列结构时才有价值。它不是一项可以脱离负载独立评价的技术。对某些模型来说,增加一道流水阶段意味着减少单阶段计算量。对另一些模型来说,它只意味着增加一次激活传输和一次同步等待。
可以把整个系统想象成港口。GPU是装卸设备,NVSwitch是港口道路,NVLink是运输通道,流水调度器则是港口调度中心。增加起重机只能提高局部装卸能力。如果道路没有足够吞吐量,或者集装箱到港时间高度不均匀,新增设备反而会让调度更加复杂。
因此,评估一套AI系统时,不能只问“它有多少算力”,还应该连续追问四个问题:
- 数据以多大的粒度移动?
- 数据移动的方向是否稳定可预测?
- 接收端是否有足够缓冲,能否避免反复同步?
- 计算阶段的持续时间,是否与通信延迟处在同一个数量级?
这四个问题,比单独查看峰值带宽更接近真实性能。
Credit和流水线气泡,其实是同一种语言
硬件流控中的Credit机制,值得被视为一种普适的系统思想。
假设发送端拥有一批数据,但接收端没有空闲缓冲区。最危险的做法是继续发送,因为这会导致丢包、拥塞甚至整个网络失序。Credit机制要求发送端先确认资源,再进行传输。它把系统从“尽可能多发”转变为“只在下游有能力承接时发送”。
软件流水线中的气泡,本质上也来自相同问题。一个阶段完成计算后,如果下一个阶段尚未准备好,当前阶段就必须等待。若前一阶段生产速度低于后一阶段消耗速度,流水线会出现供给不足。若后者处理速度低于前者,数据则会在中间堆积。
这启发出一个更一般的模型:任何并行系统都可以看作一个受信用额度约束的生产网络。
在这个模型中,计算资源是生产者,显存和交换机缓冲区是库存,链路是运输能力,调度器负责分配信用额度。系统优化的目标,不是让每个节点的利用率都达到100%,而是让库存、运输和生产之间保持稳定流动。
这也解释了为什么局部优化经常无法带来整体收益。把SerDes速率从200Gbps提升到更高水平,可能只改善链路传输时间,却无法解决阶段之间的负载不均。增加更多交换端口,可能提升理论互联能力,却无法消除某个特定任务的依赖链。优化一个流水阶段的算力,甚至可能让它更快地撞上下游瓶颈。
真正值得优化的是最慢的闭环:从数据生成、传输、缓冲、计算到下一次传输,哪一个环节决定了整个循环周期,就应该优先改善哪一个环节。
找到并行技术的PMF,而不是追逐通用性
工程团队常常希望一种并行方式适用于所有模型、所有输入和所有部署环境。这种愿望可以理解,却容易导致技术长期停留在演示阶段。越通用的方案,往往越需要复杂的调度、更多的边界处理和更高的运行时成本。
Token级流水并行的经验说明,通用性不是技术成熟的唯一标志,找到一个足够匹配的场景同样重要。
一个实用的PMF判断框架,可以从三个维度展开。
第一是依赖密度。任务是否要求严格按照前后顺序执行?依赖越强,流水线越容易产生等待。若任务内部存在较多可并行的Token或块,切分的收益更大。
第二是通信复用率。一次数据传输之后,接收端能否进行足够多的计算?如果每传一次只做极少计算,通信成本会主导性能。理想的切分方式,应当让数据在设备上停留足够长时间,摊薄传输和同步成本。
第三是节奏稳定性。输入长度、阶段耗时和输出规模是否可预测?节奏越稳定,Credit分配和流水调度越容易做得高效。扩散推理在这一点上通常比自回归生成更友好,因为其步骤结构更规整。
对于系统设计者而言,这三个维度可以进一步转化为可测量指标:单位通信字节对应的计算量、阶段耗时的变异系数、流水线启动和排空所占比例,以及缓冲区Credit被耗尽的频率。
对于硬件创业团队而言,真正值得深入研究的也不只是某个链路的峰值速率,而是流控、仲裁、缓冲和调度如何共同工作。一个更快但无法稳定调度的互联方案,可能不如一个峰值略低却能长期保持低等待的方案。
Key Takeaways
-
不要只看峰值带宽,先统一带宽口径。 明确单向、双向、编码前后以及有效载荷的区别,再比较不同互联方案。
-
用“数据粒度”作为并行设计的第一问题。 切分对象越小,调度灵活性越高,但通信和同步开销也越大。最优粒度取决于一次传输后能够完成多少计算。
-
把硬件和软件放进同一个拓扑模型。 GPU端口、交换芯片、显存缓冲、Token分片和流水阶段不应分别优化,而应观察数据完整经过系统时的路径。
-
用Credit思维检查流水线。 对每个阶段追问:它凭什么继续发送?下游有多少承接能力?如果Credit耗尽,等待会出现在哪里?
-
寻找工作负载的PMF,而不是强行追求万能方案。 依赖较弱、计算节奏稳定、通信复用率高的任务,更可能从Token级流水并行中获得真实收益。
结语:未来的算力竞争,是等待管理的竞争
AI基础设施的下一阶段,不会只是芯片数量的竞争,也不会只是SerDes速率的竞争。真正的竞争,是谁能更准确地决定数据何时移动、移动多少、经过哪些节点,以及在哪个阶段允许等待发生。
一颗GPU的峰值算力属于芯片本身,一座系统的有效算力则属于它的协作机制。铜背板、交换芯片、Credit流控、Token切分和流水调度,看起来是不同层次的技术,最终都在回答同一个问题:如何把大量局部能力组织成持续不断的整体产出。
当我们下次看到一个惊人的带宽数字,或一种看似通用的并行方法时,也许应该先问一句:它是否找到了自己的节奏?如果没有,再大的网络也可能只是更宽的等待通道。真正先进的架构,不是让所有部件跑得最快,而是让它们几乎没有理由彼此等待。
Sources
Hatch New Ideas with Glasp AI 🐣
Glasp AI allows you to hatch new ideas based on your curated content. Let's curate and create with Glasp AI :)
Start Hatching 🐣