当前位置: 首页 > news >正文

超节点应用场景及技术演进 — 阅读笔记

原文:中兴通讯 毛磊《超节点应用场景及技术演进》


一、概览

1.1 一句话

大模型参数越堆越大,单卡算力又撞上了制程墙,于是业界开始把多块 GPU 用超高带宽互联捏成一台"巨型服务器"来用——这就是超节点。说白了,它不是简单多插几张卡,而是要让原本跨机器才能做的分布式并行(TP/EP)退化成机内并行,把通信开销从毫秒级压到纳秒级。

1.2 为什么是现在

芯片制程、先进封装、散热、良率、成本都逼近工程极限了,单点算力提升走不动了,这是大背景。

但更直接的原因是大模型训练对通信的依赖发生了质变。BERT 那会儿(亿级参数),数据并行配 All-Reduce 就够了,单卡显存也装得下;到 GPT/LLaMA 时代(千亿级),张量并行(TP)得把矩阵乘切到多卡上,每一层前向反向都要通信;再到 MoE 时代(万亿级),专家并行(EP)还得做 All-to-All,通信模式更不规则。通信量跟计算量的比值一直在涨,逼着硬件把"机内通信"做到接近"片内通信"的速度。超节点就是冲着这个来的。


二、定义与技术特征

2.1 四大共性特征

业界还没有统一定义,标准也在制定中,但不同厂商的方案有几个共性:

  1. 大量 GPU 互联——至少 8 卡起步(8 卡方案已经很成熟了)
  2. 统一内存地址空间——任一 GPU 能像访问本地 HBM 一样访问任意互联的 HBM
  3. 超高带宽、超低时延互联——除了 PCIe/CXL,还得有专门的 GPU 显存高速互联(英伟达的 NVLink),带宽从数百 GB/s 到数百 TB/s,时延纳秒级
  4. 原生可扩展性——协议层留好扩展位,拓扑上支持一级、二级交换

这四条其实是从下到上的四层:规模基线 → 编程抽象 → 物理通道 → 协议预留。缺了哪层都不行:没规模不叫"超"节点,没快通道互联只是"通"但不"快",没统一地址空间程序员得手写cudaMemcpyPeer很痛苦,没扩展预留以后扩规模要推倒重来。

2.2 统一内存地址空间深挖(拓展补充)

原文第二条特征说"任一 GPU 可以像访问本地 HBM 一样访问任意互联的 HBM",这句话背后的东西比字面看到的要多。

为什么要统一地址空间

传统多 GPU 编程里,每块卡显存是独立岛屿,同一个指针0x7f...在 GPU0 和 GPU1 上可能指完全不同的数据。想跨卡用数据得显式调cudaMemcpyPeer拷一份,还得自己管"谁在什么时候持有哪份数据",又累又容易出地址混淆的 bug。

统一地址空间要做的就是把分布式内存伪装成共享内存。

UVA(CUDA 4.0):统一寻址

UVA 把主机内存和所有 GPU 显存映射到同一个 64 位虚拟地址空间的不同区域,光看指针值就能判断它在哪个物理位置。这带来了一个关键能力:GPU0 拿到的指向 GPU1 内存的指针,在 GPU1 的页表里也有效,于是可以做点对点(P2P)直接访问——如果硬件是 NVLink 或 PCIe 且开了cudaDeviceEnablePeerAccess,GPU0 的 kernel 直接用 load/store 就能读写 GPU1 的 HBM。

但 UVA 只让远程访问的指针变得合法,它不管数据搬移也不管一致性。远程访问的延迟带宽还是比本地 HBM 差(就算走 NVLink 也是),数据频繁跨卡用的话性能会掉,程序员还是得自己管数据驻留。

UM(CUDA 6):加上自动迁移和一致性

UM 用cudaMallocManaged分配,在 UVA 之上加了一层完整的管理。分配出来的指针在 CPU 和所有 GPU 上都有效。当某个 GPU 第一次访问这块数据时如果数据不在本地,会触发缺页异常,UM 驱动自动把需要的页面从远端搬过来,之后访问就是纯本地的了。

在支持硬件一致性互连的系统里(比如 NVLink + 现代 GPU 的 ATS/PASID),UM 还可以不搬数据,直接把远端 GPU 的物理页面映射到本地页表,读写透过 NVLink 直连远端 HBM,指令完全一样,只是物理路径走了互联网络。这比整页拷贝省显存。

一致性方面:数据迁移时驱动会保证源端缓存回写失效、目标端看到最新版本;在 kernel 启动边界和同步点保证所有处理器看到一致数据;硬件 cache 一致性的互连甚至在缓存层直接相干,不用显式 flush。最终效果是程序员只用普通指针和读写,不用手动拷贝和同步。

四层叠加

"像本地 HBM 一样访问任意互联 HBM"这句话,其实是四层东西叠在一起的结果:

  • 最底下是 UVA,让所有 GPU 的 HBM 都在同一张虚拟地址表上
  • 再上是高速互联(NVLink/NVSwitch),提供物理通道
  • 再上是 UM,做缺页自动迁移/映射
  • 最上面是一致性协议兜底,保证读到的是最新值

打个比方:传统多 GPU 编程像在不同城市间寄信,得先确认地址再通过邮局抄内容。UVA 相当于给所有城市统一编了门牌号,可以直接往门牌号寄信。UM 更进一步,你对着自家信箱喊一句话,邮政系统自动搬到收件人门口,甚至让收件人直接在你纸片上写字,而你感觉像在本地桌面写字。

层级名称版本解决什么不解决什么
寻址UVACUDA 4.0指针跨 CPU/GPU 合法化,支撑 P2P不搬数据,不保证一致
管理UMCUDA 6.0缺页自动迁移/映射,自动一致性性能仍取决于迁移策略和互联带宽
合起来统一内存地址空间全局虚拟地址表 + 自动数据流转 + 一致性视图

三、架构分类

3.1 三类超节点

按操作系统粒度等差异分三类:

类型规模互联
SuperNode至少 16 卡内部全互联,PCIe/CXL
SuperPoD上百卡内部 Scale-Up 网络(NVLink)
SuperCluster更多多级 Scale-Up(NVLink + 二级)

3.2 特征对比

SuperNodeSuperPoDSuperCluster
PCIe/CXL 总线
HBM 高速总线节点内 GPUPoD 内所有 GPUCluster 内所有 GPU
操作系统1 个多个多个
K8S 集群1 个1 个或多个

三者的区别不在卡数多少,在系统耦合粒度:SuperNode 是一台机器(1 个 OS,最紧耦合),SuperPoD 是一组机器(1 个 K8S,逻辑上还是"一台大机器"),SuperCluster 已经像小型数据中心了(跨 K8S)。抽象层级越高,越得靠软硬件协同来弥补物理距离。

不同类型超节点架构:


四、价值场景

4.1 训练

超节点给 TP、EP 这些复杂并行提供硬件支撑,缩短通信时间,提升并行效率,缩短训练周期。后面第六节会展开讲为什么 TP/EP 特别吃这个。

4.2 推理

DeepSeek、GLM 这些千亿级多模态模型推理时,单卡显存不够、通信又是瓶颈。超节点的 Scale-Up 域能缩短响应时间、提升吞吐。特别是长上下文场景(Agentic AI、长文本对话、复杂文档分析),KV 缓存随上下文长度线性增长——100 万 Token 的 KV 缓存按 FP16 算可能几十 GB,单卡放不下,必须切多卡。

这里有个实际意义:传统多机推理里每台机器的 KV 互相隔离,相同前缀的请求要重复算前缀 KV,浪费很大。超节点里统一内存地址空间让不同 GPU 看到的 KV 物理页可能是同一份,前缀缓存复用率能接近 100%。这就是为什么百万 Token 上下文在超节点上才变得真正可行。


五、规模与性能权衡

阿姆达尔定律在这儿照样起作用。Qwen2 235B 在 2000 卡集群上的实测显示:增大超节点规模确实能提升性能(主要受益于 MoE 算子优化),但有边际效应——64 到 128 卡是甜点区,超过 128 卡后增益就平了。

甜点区出现在这个范围有物理原因。NVLink 全互联的广播域有上限(比如 NVL72 最多 72 卡),超过就得走二级交换,延迟和带宽都会劣化。集体通信的算法效率也受限:All-Reduce 的 Ring 算法通信量约 2 倍数据量、跟 GPU 数无关,但单次同步延迟是 O(log n) 或 O(n),n 越大同步越慢。n 超过某个点后,多出来那部分卡的算力就被同步开销吃掉了。所以"超节点越大越好"是个误区,超节点内加超节点间的异构并行才有最优解。


六、并行策略与通信原语

6.1 为什么 TP/EP 特别需要超节点

原文说"超节点为 TP、EP 提供硬件支撑",这句话值得展开。

先看硬件指标(以 H100 为例):

范围互联双向带宽时延
超节点内NVLink 4.0 + NVSwitch900 GB/s纳秒级
超节点外InfiniBand / 以太网400 GB/s 或更低微秒级

形成"内通外慢"的同心圆。

张量并行(TP)把单层矩阵乘切到多卡上,每次前向反向都要做 All-Reduce 或 All-Gather,通信量和计算量在一个量级。带宽不够、延迟不够低的话,TP 效率会急剧下降,GPU 大把时间在等数据。

专家并行(EP)在 MoE 里把不同专家放不同 GPU 上,每个 token 要路由到对应专家,涉及 All-to-All 通信,模式复杂、瞬间通信量极大。只有超高带宽低延迟的网络才撑得住。

"提供硬件支撑"具体指的就是 NVLink + NVSwitch 全互联:带宽比跨节点网络高几倍,延迟微秒级适合 TP 这种同步严格的细粒度通信,全互联拓扑让任意两卡满速直连、不像树形拓扑会拥塞。

实际训练一般是这样分层的:

超节点内(NVLink/NVSwitch) → TP:每层每步都要通信,必须纳秒级 → EP:All-to-All,全互联优势最大 超节点间(InfiniBand / 以太网) → PP:每个微批次才通信,慢点能忍 → DP:每 N 步同步梯度,可以再慢点

这里有个很自然的匹配原则:通信密度越高的并行模式,越要放在物理上最紧密的硬件上。TP/EP 每层每步都要通信,必须 NVLink;PP 每个微批次才通信,InfiniBand 够用;DP 每 N 步梯度累积才同步,以太网也能接受。所以原文那句"超节点为 TP、EP 提供硬件支撑"说得挺准——不是让一切都变快,而是让最该快的部分真的快起来。

6.2 三大集体通信原语

All-Reduce / All-Gather / All-to-All 是支撑 DP/TP/EP 的原子操作,搞清楚它们就搞清楚了超节点里数据怎么流动。假设 3 个 GPU:

All-Reduce:先归约再广播

所有 GPU 贡献数据做归约(求和、求最大等),每个 GPU 都拿到相同的归约结果。GPU0 有 A、GPU1 有 B、GPU2 有 C,做完 SUM 后每个 GPU 都有 A+B+C。输出大小等于输入大小,Ring 算法通信量约 2 倍数据量。

All-Gather:只收集不归约

每个 GPU 提供一块,收集后每个 GPU 都拿到完整拼接。GPU0 有 A0、GPU1 有 A1、GPU2 有 A2,做完后每个 GPU 都有 [A0, A1, A2]。输出是输入的 n 倍,Ring 通信量约等于数据量。

All-to-All:全员转置式交换

每个 GPU 向所有 GPU 发送不同的数据块,同时接收别人发给自己的。GPU0 持有 [00,01,02](分别发给 0/1/2),GPU1 持有 [10,11,12],GPU2 持有 [20,21,22],做完后 GPU0 收到 [00,10,20],依此类推。相当于一次转置。均匀切分下每个 GPU 收发总量等于输入量,通信量约等于数据量,但对网络拓扑极度敏感——NVSwitch 全互联下可以一步完成,优势最明显。

三者对比

All-ReduceAll-GatherAll-to-All
语义归约+广播收集+拼接转置式交换
单 GPU 输出= 输入输入的 n 倍= 输入(均匀切分)
数据关系大家拿到相同结果大家拿到相同全量各拿不同的子集
通信量(Ring)≈ 2×数据量≈ 数据量≈ 数据量
主要场景DP 梯度平均、TP 反向TP 正向收集权重/激活EP/MoE token 路由
对拓扑敏感度较高较高极高

在并行策略中的角色

  • TP 正向:权重按列切分,输入激活做 All-Gather 让每个 GPU 有完整输入
  • TP 反向:各 GPU 持有部分梯度,做 All-Reduce 求和拿到完整输入梯度
  • DP:各 GPU 算完梯度做 All-Reduce (SUM) 再求平均
  • EP/MoE:token 被路由器分配到不同专家所在的 GPU,每个 GPU 要把自己 token 里属于远端专家的部分发出去——就是 All-to-All 的转置。没有 All-to-All,MoE 的动态路由没法高效做。这也正好解释了为什么 All-to-All 对全互联那么敏感:NVSwitch 让它几乎无阻塞地完成,普通网络会拥塞。

团队类比的话:All-Reduce 是大家各自算一个数然后汇总成同一个总数发回每人(达成共识);All-Gather 是大家把碎片拼成同一张完整拼图人手一份;All-to-All 是每个人按需把不同文件投给不同同事、同时收别人投给自己的(重新洗牌)。


七、演进与产业实践

7.1 国产超节点演进的三个维度

产品架构

两条路线。一是单柜极致密度(英伟达 NVL576 那种),涉及 800V 高压直流、全液冷、中置正交背板等,优势是单卡算力领先、能匹配模型演进,但国产 AI 芯片有代际差距、先进工艺受限,短期追不上。二是多柜互联扩展,用成熟工艺把高带宽域从"以机柜为单元"扩到"千柜级"。

国产现阶段走的是第二条——不是不想做 NVL576,是单卡和工艺有差距硬追追不上,不如先把扩展性做透。比较务实。

物理连接

趋势是从电互联往光电融合走。电互联低成本、高可靠、低时延,单柜内还是首选;但 Scale-Up 域扩大、跨机柜互联时,光互联(LPO/NPO/CPO)优势就出来了:突破距离限制、更高速、避免电互联干扰。

几个光互联技术的区别:LPO(线性可插拔)去掉 DSP 降功耗和时延但距离受限;NPO(近封装)把光引擎放在交换芯片封装附近,距离比 LPO 更短;CPO(共封装)光引擎跟交换 ASIC 共同封装,距离最短密度最高但封装工艺最难。

预判是国际 CPO 领跑、国内 NPO 优先落地。国产选 NPO 是因为它在性能和工艺难度上折中得比较好,能拿到光互联的好处又不至于被最难的封装卡住。

系统生态

重点是开放解耦和软硬协同。开放解耦指超节点内部计算节点与交换节点解耦、CPU 和 GPU 资源解耦;软硬协同指构建统一的互联协议,规避私有封闭技术带来的供应链和成本风险。

为什么要开放?封闭的私有协议(像英伟达 NVLink+NVSwitch)有两个问题:单一供应商出问题全盘受影响,其他厂商的 GPU/CPU/加速器也接不进来。国产选开放路线,是用生态开放换供应链安全和长期可扩展性,后发者这么选是合理的。

7.2 中兴的做法

OEX 架构

中兴 Nebula 超节点提出了 OEX(Orthogonal Electrical eXchange,正交无背板互联交换架构)。核心是在计算节点和交换节点之间做垂直交叉的物理连接,同时干掉传统线缆托盘(Cable Tray),消除信号损耗和可靠性风险。

传统机柜式 GPU 服务器背板有个根本痛点:信号在背板上要经过多次连接器跳转(板→连接器→背板→连接器→板),每跳一次都有衰减和反射。OEX 的做法是计算节点和交换节点像两块板十字交叉摆放,正交连接器直接对接,信号一跳到底没有绕线,物理上消除了 Cable Tray 这个可靠性薄弱环节。用结构创新换信号完整性。

OEX正交无背板互联交换架构:

细节包括:计算节点(板状,CPU/GPU x8、HBM x16)、正交连接器、交换节点(核心 Scale-Up 交换芯片)。

三个创新方向

方向内容
OEX 架构正交连接器+单级交换拓扑,计算与交换节点垂直交叉互连,摆脱线缆束缚,信号完整性/可靠性/可维护性更好
Matrix 集群扩展Nebula X32 单体→ Matrix X256/800 集群;Nebula X128 单体→ Matrix X8192/16384 超大规模集群
开放生态硬件开放 OEX 机械与电气接口规范;软件打造 Olink 开放高速互联协议,底层兼容以太网,物理层和事务层创新满足 Scale-Up 和 Scale-Out 双重需求

现状和展望

摩尔定律趋缓的背景下,超节点靠架构创新、极致互联和软件优化持续突破算力瓶颈,推动计算体系从芯片级往系统级演进,未来可能成为 AI 基础设施的核心底座单元。

国产超节点的机会窗口在于:单卡算力短期追不上英伟达,但系统级集成+开放生态+场景化优化是另一条路。中兴 OEX 就是用系统级工程能力弥补单卡差距的路子。


八、速查与总结

8.1 要点速查

主题内容
超节点最小规模≥ 8 卡(8 卡方案已成熟)
SuperNode 门槛至少 16 卡
SuperPoD上百卡
互联带宽数百 GB/s ~ 数百 TB/s,纳秒级
性能甜点区64–128 卡(Qwen2 235B,2000 卡集群)
国际标杆NVL72 → NVL576(800V 高压直流、全液冷、中置正交背板)
中兴产品线Nebula X32/X128(单体)→ Matrix X256/800/X8192/16384(集群)
中兴架构OEX(正交无背板互联交换)
中兴协议Olink(兼容以太网)
推理KV 缓存共享复用,支撑 10 万–100 万 Token 上下文
带宽对比NVLink 4.0 双向 900 GB/s;InfiniBand 约 400 GB/s
软件抽象UVA(CUDA 4.0)+ UM(CUDA 6.0)
通信原语All-Reduce / All-Gather / All-to-All

8.2 整体脉络

应用层(训练/推理) ├── 并行策略:DP / PP / TP / EP │ └── 通信原语:All-Reduce / All-Gather / All-to-All │ │ (通信密度匹配物理距离) │ ├── 硬件底座 │ ├── 大量 GPU(8 卡起步) │ ├── NVLink/NVSwitch 超高带宽低时延 │ └── 形态:单柜 → 多柜 → 集群 │ ├── 编程抽象 │ ├── UVA 统一寻址 │ └── UM 自动迁移+一致性 │ └── 演进趋势 ├── 架构:单柜极致密度 vs 多柜扩展 ├── 连接:电 → 光(CPO/NPO/LPO) └── 生态:开放解耦 + 软硬协同

几个值得记住的判断:

  • 超节点不是"更多卡的服务器",是分布式内存的紧耦合化——让跨机并行变成机内并行,把通信开销压到极致。
  • 统一内存地址空间是软件抽象,超节点是物理底座,两者得配合。没 UM/UVA 代码难写,没 NVLink/NVSwitch 性能出不来。
  • 通信密度匹配物理距离:TP/EP 每层每步通信放 NVLink 上,PP 每个微批次通信放 IB 上,DP 每 N 步同步放以太网上。
  • 国产走"系统级创新+开放生态"路线,OEX 是用结构创新换信号完整性,Olink 是用开放换供应链安全。
  • 超节点不是越大越好,64–128 卡是甜点,超了之后同步开销吃掉算力增益。
  • All-to-All 对全互联最敏感,这就是超节点对 MoE 训练关键的根因。
http://www.cnnetsun.cn/news/3121825.html

相关文章:

  • 452. Java 正则表达式 - 文本替换
  • NBTExplorer:5分钟快速上手Minecraft数据编辑的终极免费工具
  • Claude Code CLI 接入 DeepSeek 实战指南:零GUI、低延迟AI编程工作流
  • InvenTree开源库存管理系统终极指南:从零开始构建高效零件管理平台
  • NoFences:开源免费的Windows桌面栅栏工具,终结桌面混乱时代
  • Karukan:基于神经网络的日语输入系统,实现实时、上下文感知的高级日语转换
  • 【HarmonyOS 7开发者前瞻】01 HarmonyOS 7 开发者适配路线图:从 API 26 Beta 到 Skill、Agent 与 AI 工具链
  • AI 搜索工具烹饪查询结果直链原始食谱,却因 AI 生成食谱问题遭部分美食作家不满
  • 佳能G6080报错5b00维修历程,开始把打印机抱到维修店,维修师傅说修好大概180元,我觉得实在太贵了就没有必要维修了,买一台新的算了,准备买新的时候朋友推荐用佳能V6.200佳能清零软件,最终修好
  • 中小音乐团队版权方案,知保链低成本电子存证批量登记音频
  • PostgresSQL服务部署
  • Oura Ring 5:轻薄升级 40%、续航增一天,软件实用亮点多!
  • 保研每周的具体复习计划
  • 多分类逻辑回归特征选择:最优子集与逐步回归实战指南
  • SpringBoot+Vue 西安工商学院课表管理系统平台完整项目源码+SQL脚本+接口文档【Java Web毕设】
  • 微型NLP实践闭环:本地化年度复盘工具设计与实现
  • AI制作:2行3列六格分镜复古手账漫画
  • 柔性制造技术升级:从批量生产到个性化定制,重构制造业生产底层模式
  • 5步掌握Topit:Mac窗口置顶神器,告别窗口遮挡烦恼
  • Three.js 粒子泡泡教程
  • 01-GitHub基础认识
  • ROS 2 的发布/订阅通信验证
  • 二维码批量扫码设备硬件选型与并行解码技术方案研究
  • 未来展望:BiSheng JDK 17路线图与OpenJDK社区贡献计划终极指南
  • 特斯拉Cybercab无方向盘路测曝光!20个月落地,成本优势能否弯道超车?
  • SPI EEPROM与PIC微控制器的嵌入式存储方案设计
  • 项目进度实时监控与资源优化:项目制服务解决方案落地方法论
  • 【沈阳师范大学本科毕业论文】基于Spring boot的青少年 研学网站的设计与实现
  • 超市小程序制作,线上超市小程序开发超市小程序制作
  • 用GPT-5.5重构遗留项目:一套可复用的迁移脚本分享(附避坑指南与教程)