当带宽不再稀缺,真正的瓶颈变成了“谁来组织数据”
Hatched by Kevin Di
Jul 27, 2026
1 min read
1 views
84%
你以为在买网络,其实是在买协调能力
如果一条链路已经快到让你眼花缭乱,为什么系统反而更慢了?这听起来像个悖论,但在现代 AI 基础设施里,这几乎是默认结局。带宽增长得像火箭,延迟却常常像陷进泥潭,原因不是“数据不够快”,而是组织数据的方式太慢。
过去我们习惯把性能问题理解成“搬运问题”,仿佛只要让更多字节更快地从 A 到 B,系统就会自动变好。但在 GPU 集群、加速器互联、推理服务这些场景里,真正贵的早已不是传输本身,而是传输前后的协调成本:谁来准备请求,谁来维护状态,谁来处理完成事件,谁来决定何时发下一批,谁来避免控制面成为新的瓶颈。
当数据面足够快之后,系统的核心问题会从“传得动”变成“管得住”。
这也是为什么“用 RDMA 不就行了”在很多 ScaleUP 场景里并不是一个答案,而只是把问题往更深处挪了一层。RDMA 擅长的是把网络传输从 CPU 的直接数据拷贝中解放出来,但它并没有消灭控制复杂性,只是把复杂性换成了队列、上下文、Doorbell、CQE、WQE,以及围绕它们的一整套状态管理。对于大规模推理和加速器互联来说,这种复杂性恰恰会反过来吞掉原本赢来的性能。
速度越快,控制面越像一堵墙
理解这个问题,最有效的方式不是从协议出发,而是从单位工作量出发。假设你要发送的只有 128B,理论上看起来微不足道,但在一个成熟网络协议栈里,它并不是“发一笔数据”这么简单。你要先定义 Memory Region,创建连接,构建队列对,维护发送队列、接收队列和完成队列,还要处理状态同步、缓存一致性、完成回收。
这意味着每次消息并不是独立的“字节运输”,而是一次小型事务。当消息数量上升到极高频率,问题会迅速变成:系统到底是在处理数据,还是在处理“如何处理数据”这件事?如果消息规模走向每秒十亿级别,CPU 这种通用处理器就很容易从加速器的助手,变成全链路的节流阀。
这就是 RDMA 在 ScaleUP 场景里最反直觉的地方。它在 ScaleOUT 里非常强,因为它能减少远端访问的 CPU 开销,尤其适合网络相对稀疏、吞吐优先、消息较大的系统。但 ScaleUP 场景里,设备之间的耦合更紧,交互更细碎,消息更碎片化,延迟更敏感。此时,任何需要维护复杂队列状态的机制,都会因为控制路径的密度而暴露出代价。
把它想象成一个餐厅:
- ScaleOUT 像大型宴会,服务员可以批量送餐,少量额外手续可以接受。
- ScaleUP 像后厨内的高频协作,厨师之间每隔几秒就要递一次调料。你真正需要的是“手一伸就到”,而不是一整套点单系统。
RDMA 的问题不是慢,而是它本质上仍然像“点单系统”。在高频、细粒度、强同步的场景里,这个系统太重了。
传输效率只是表面,真正的开销在“状态税”
很多人谈网络优化时,只盯着吞吐和链路利用率,但在加速器互联里,更致命的是一种可以称为状态税的东西。每一笔操作都要求系统记住更多东西,查更多东西,更新更多东西。QP Context 要占资源,缓存要命中,WQE 要准备,CQE 要回收,Doorbell 要敲,轮询要做,完成事件要确认。
这就导致一个很少被认真计算的事实:协议的“聪明”可能只是把数据面上的简单,换成控制面上的复杂。
对于片上常见的 128B 传输,网络头部开销并不只是几字节而已。以太网、IP、UDP,再加上各种业务头、校验、前导帧和间隔,都会让有效载荷占比迅速下降。你为了发送一点点真实数据,却要在协议和状态上付出大量附加成本。这就像用货轮去送一枚硬币,工具本身很强,但单位价值极低。
更微妙的是,状态还不是静态成本,而是动态成本。你发得越快,就要维护越多的在途状态;在途状态越多,对缓存、同步、调度的压力越大;压力越大,抖动越明显;抖动越明显,尾延迟越差。于是系统看上去有了更高峰值吞吐,实际可用性能却未必上升。
高性能系统里的很多失败,不是因为单次操作太慢,而是因为每次操作都要求系统先记住自己是谁。
这也是为什么某些“看起来更先进”的改法,未必适合加速器互联。把更多逻辑塞进通用 CPU,或者塞进一个并不擅长高频控制的 DSA,往往只会让控制税转移位置,而不是消失。你需要的不是更多层的智能,而是更少的协调负担。
推理系统的真正优化,不是把模型跑得更快,而是让系统少做无用功
如果把视角从互联切到大模型推理,会发现同一类矛盾以另一种形式出现。推理系统看起来在追求更高吞吐,但真正决定可用性的,往往是时延约束下的批处理能力。当批大小从 1 增加到 256,吞吐与时延并不是线性关系,而是一个典型的系统折中曲线。批越大,GPU 利用率越高,但用户等待也越长。批越小,交互体验更好,但硬件空转更严重。
这说明推理优化的本质,并不是盲目追求某个单一指标,而是在约束下设计时间组织方式。你不是单纯在跑模型,而是在安排请求、缓存、调度和算子执行之间的节奏。
这里的关键变量之一是 KV Cache。很多人把 KV Cache 理解为“推理加速的副产品”,但它其实是整个时延体系的核心资产。KV Cache 让模型不必重复计算历史上下文,同时也决定了内存占用、批处理弹性和并发上限。进一步说,像 GQA 或 MQA 这样的注意力变体,本质上不是模型层面的“聪明”,而是系统层面的共享策略:通过共享键值来减少缓存体积,提高单卡或多卡推理效率。
这和加速器互联问题惊人地相似。RDMA 试图通过队列和状态管理来交换灵活性,推理系统则试图通过 KV Cache 和批处理来交换吞吐。但二者最后都在问同一个问题:我们究竟该把稀缺资源放在数据上,还是放在组织数据的机制上?
一个有用的判断框架是:
- 如果你的瓶颈主要是算力不足,那么增加算力、提升算子效率是正解。
- 如果你的瓶颈主要是数据重复计算,那么缓存和共享策略是正解。
- 如果你的瓶颈主要是协调开销,那么你需要减少状态、减少控制路径、减少同步点。
大多数工程系统失败,都是因为它同时踩中了三类瓶颈,却试图用同一种方法解决。
统一视角:从“传输效率”转向“协调密度”
真正把这两类问题串起来的,不是网络协议,也不是模型推理,而是一个更深的概念:协调密度。
协调密度,指的是系统为了完成一次有效工作,需要付出多少组织、同步、状态维护和路径切换的成本。这个成本可以表现为 CPU 开销,也可以表现为缓存压力、队列维护、轮询、上下文切换、调度干扰,或者尾延迟抖动。只要系统的单位有效工作需要的协调动作过多,性能就会在规模变大后急剧恶化。
这就解释了为什么某些在宏观上很“高级”的方案,在微观上却不成立。比如:
- 把控制逻辑放在 CPU 上,短期实现简单,长期却会在高消息率下形成瓶颈。
- 把控制逻辑放到 GPU 上,确实能绕开一部分 CPU 问题,但会引入 Warp 调度、指令开销、轮询冲突等新问题。
- 再进一步用专用控制器,虽然能减轻主计算单元负担,却会增加芯片面积、设计复杂度和系统耦合。
这不是“哪个方案最好”的问题,而是一个结构性问题:当工作粒度变小、频率变高、时延约束更严格时,系统就越来越不适合依赖复杂的外部协调。
这也让我们重新理解 GQA、KV Cache、批处理、RDMA、MAC 路由这些原本看似分散的技术选择。它们都在做同一件事,只是层级不同:
- 减少需要记住的状态。
- 减少每次操作要触发的动作数。
- 让更多工作在局部完成。
- 把全局协调压缩到更少的点上。
从这个角度看,最好的系统不是“最会通信”的系统,而是最少需要通信的系统。不是“最快发包”的系统,而是“最少发无谓包”的系统。不是“最聪明地处理每个请求”的系统,而是“让很多请求根本不需要复杂处理”的系统。
高性能架构的本质,不是堆叠更多机制,而是持续消除机制。
设计启示:先问自己,系统到底是在搬运数据,还是在搬运复杂性
这套思路最有价值的地方,在于它不只适用于网络或推理,而是一种通用设计准则。每当你面对一个“性能不够”的系统时,先不要急着问“带宽还差多少”“算力还差多少”,而是问:我们是不是在搬运复杂性?
如果答案是肯定的,优化方向就会完全不同。你要做的不是继续给系统增加更多层的管理,而是把管理从热路径中移走,把状态压缩,把协作局部化,把批次组织得更合理,把缓存变成一等公民,把协议从繁琐事务变成更接近硬件自然行为的直觉路径。
这也是为什么真正好的基础设施改进,常常不是“加一个功能”,而是“去掉一个必须存在的步骤”。少一次队列交互,少一次中断,少一次上下文切换,少一次重复计算,少一次全局锁竞争,性能可能就从“理论上很快”变成“实际上可用”。
在 AI 时代,系统工程最容易犯的错误,是把所有问题都理解成“更多资源”。但很多时候,问题恰恰在于资源已经够多,甚至多到把协调问题放大了。带宽越高,消息越碎;算力越强,调度越难;缓存越大,状态越重。最终决定体验的,不是你拥有多少峰值,而是你能否让这些峰值以低协调密度的方式被稳定使用。
Key Takeaways
-
先区分数据瓶颈和协调瓶颈。 如果慢的是传输本身,优化链路和算子;如果慢的是组织数据的过程,优先减少状态和控制路径。
-
评估任何通信方案时,不只看吞吐,还要看单位消息的状态税。 重点检查队列维护、上下文管理、Doorbell、CQE 处理、轮询和同步带来的总成本。
-
把 KV Cache 和批处理当成系统级资源,而不是模型附属品。 它们直接决定推理吞吐、尾延迟和并发上限。
-
优先选择能减少协调密度的架构。 能局部完成的,不要全局协调;能共享的,不要重复维护;能消除状态的,不要增加状态。
-
优化目标应该从“更快”改写为“更少无用工作”。 这对网络、推理、互联和加速器系统都适用。
结语:未来的性能战争,不是谁传得更快,而是谁更少需要开会
我们总爱把高性能系统想象成一条更宽的路,但在 AI 基础设施里,真正决定速度的,往往是路上有多少收费站、红绿灯、交接班和路政审批。RDMA 的争议、ScaleUP 的困境、推理批处理的权衡、KV Cache 的价值,看似分属不同领域,实则都指向同一件事:当系统规模和速度都上去之后,性能的敌人不再是数据,而是协作本身。
所以,下一次当你听到“我们只需要更高带宽”“我们只需要一个更强的互联协议”“我们只需要更大的批次”时,不妨停一下,问一个更本质的问题:
为了让这些数据发生意义,我们到底要让多少机制先转起来?
如果答案太多,那么你要优化的,从来就不是带宽,而是复杂性。
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 🐣