没有NVLink能不能做LLM推理?一次多GPU架构选型的思考笔记
一、被简化的问题与真实的约束
每次有人听说我们用PCIe互联的八卡GPU服务器做大模型推理,第一反应几乎都是同一句话:"没有NVLink,能行吗?"
这个问题看似直接,实则被过度简化了。它隐含了一个预设:NVLink是多卡GPU推理的必要条件。但如果我们追问一句——"NVLink解决的是什么问题?这个问题在你的场景里有多严重?"——很多人其实答不上来。
NVLink解决的是GPU间通信带宽问题。 这句话没错,但它只是起点,不是结论。真正需要回答的是一连串递进的问题:
-
你的负载中,GPU间通信占总计算时间的比例有多大?
-
这个比例在什么条件下会变得不可接受?
-
除了提升带宽,有没有其他方式降低通信的影响?
本文不打算用一组测试数据来"证明"PCIe行或不行——因为结论是场景依赖的。我想做的是梳理一套思考框架,帮助你在自己的场景里做出判断。
二、瓶颈在哪里?一个分析框架
2.1 通信占比:问题的本质
多卡GPU推理的性能损失,本质上可以归结为一个比值:通信时间 / 总时间。
这个比值不是固定的,它取决于三个因素的交互作用:
-
模型规模:决定单次前向传播中需要通信的数据量
-
批处理大小:决定计算时间相对于通信时间的"厚度"
-
并行策略:决定通信发生的频率和路径
理解了这三者的关系,就能判断PCIe带宽是否构成瓶颈——而不需要记住任何具体数字。
2.2 计算密集型 vs 通信密集型
我们可以把推理负载粗略分为两类:
计算密集型:单次前向传播中,矩阵乘法等计算操作占据绝大部分时间,通信操作(AllReduce等)占比较小。这类负载对互联带宽不敏感——即使通信速度慢一倍,总时间也只增加几个百分点。
通信密集型:通信操作在总时间中占比较大。这类负载对互联带宽高度敏感,带宽减半可能导致总时间显著增加。
关键洞察是:同一个模型,在不同配置下可以从计算密集型变成通信密集型。模型越大、并行度越高、批处理越小,通信占比就越高。反之亦然。
2.3 一个实用的判断原则
不需要精确的数字,你可以用以下原则做初步判断:
-
小模型 + 大batch → 通信占比低 → PCIe绰绰有余
-
小模型 + 小batch → 通信占比中等 → PCIe可用,需拓扑优化
-
大模型 + 张量并行 → 通信占比高 → 需要认真评估PCIe拓扑是否足够
-
超大模型 + 跨节点 → 通信占比极高 → 这已经不是单机NVLink vs PCIe的问题了
这个框架的价值不在于给出确定答案,而在于帮你快速排除不可能的选项,把精力集中在真正需要深入分析的配置上。
三、拓扑:不只是"有没有NVLink"
3.1 PCIe拓扑的多样性
"没有NVLink"不等于"所有GPU间通信都一样慢"。PCIe互联的八卡服务器内部,GPU之间的通信路径是有层次差异的。
最常见的4+4分组型拓扑中:
-
同一PCIe Switch下的GPU对:通信路径短,延迟低,带宽利用率高
-
跨Switch但同一CPU socket的GPU对:需经过CPU Root Complex中转,延迟和带宽有损失
-
跨CPU socket的GPU对:需跨越NUMA边界,延迟最高
这意味着,即使没有NVLink,通过合理的拓扑感知调度,仍然可以显著降低通信开销——前提是你知道你的服务器拓扑长什么样。
3.2 拓扑感知的三个原则
原则一:通信密集的操作限制在同一Switch内
张量并行(TP)每层都需要AllReduce通信,是最通信密集的并行方式。如果TP组完全在同一PCIe Switch内,通信效率最高。在4+4拓扑中,TP=4是一个天然的分界点——4卡TP完全在Switch内,跨Switch通信仅发生在DP梯度同步或PP阶段边界时。
原则二:跨Switch通信用"稀疏"策略
流水线并行(PP)只在阶段边界通信,通信频率低。数据并行(DP)的梯度同步频率也远低于TP的每层AllReduce。因此,跨Switch的通信应该尽量分配给PP或DP,而不是TP。
原则三:NUMA亲和绑定
GPU与CPU之间存在NUMA亲和性。数据预加载、Tokenize等CPU操作应在亲和的NUMA Node上执行,避免跨socket内存访问带来的额外延迟。这在框架层面通常需要手动配置。
3.3 一张拓扑决策表
| 并行策略 | 通信频率 | 建议部署位置 | 跨Switch是否可接受 |
|---|---|---|---|
| 张量并行(TP) | 每层 | 同一Switch内 | 不推荐 |
| 流水线并行(PP) | 阶段边界 | 可跨Switch | 可接受 |
| 数据并行(DP) | 梯度同步 | 可跨Switch | 可接受 |
这张表不包含任何数字,但它提供的决策逻辑比一堆benchmark数据更有实用价值——因为它帮你理解的是"为什么",而不是"是多少"。
四、并行策略的选择逻辑
4.1 不要默认全用张量并行
很多团队拿到8卡服务器后,默认tensor-parallel-size=8就完事了。这在NVLink环境下可能没问题,但在PCIe环境下,这可能是最差的选择——因为你让每一层都产生了跨Switch通信。
更合理的思路是组合并行:
-
先确定模型需要多少卡来放下(显存约束)
-
再确定TP组大小,尽量限制在同一Switch内
-
剩余的卡做DP,提升吞吐量
4.2 一个选型决策树
4.3 框架选择的考虑因素
vLLM、TensorRT-LLM、TGI各有优劣,但在PCIe环境下,有一个特别的考虑点:框架对通信模式的优化程度。
vLLM的PagedAttention机制对显存碎片化的优化,在多卡场景下能间接减少通信开销——更高效的显存利用意味着更大的有效batch size,而更大的batch size意味着通信占比更低。这是一个"通过提升计算密度来稀释通信开销"的间接优化路径。
五、超越互联:推理服务的其他关键因素
过度关注"NVLink vs PCIe"容易忽视一个事实:推理服务的可靠性瓶颈往往不在通信,而在散热和供电。
5.1 散热:真正的长期瓶颈
八卡满载运行时的散热是一个严肃的工程问题。消费级GPU的功耗设计假设是桌面环境间歇负载,而服务器场景是7×24小时持续满载。如果散热设计不足,GPU会降频保护——而降频带来的性能损失远大于PCIe vs NVLink的通信差异。
选择服务器时,散热设计能力比互联方式更重要。 具体来说:风道是否独立分段(避免热量累积)、是否有长时间满载测试数据、满载温度是否可控——这些才是决定推理服务能否稳定运行的基石。
5.2 供电:不可忽视的基础设施
八卡满载功耗对供电系统是严峻考验。不是"电源瓦数够不够"这么简单——而是高负载下的电压稳定性、纹波控制、冗余切换时间。这些在参数表上看不到,但在72小时持续满载运行时会暴露无遗。
5.3 运维体系
推理服务上线只是开始,长期稳定运行需要:监控告警(GPU温度、利用率、显存、请求延迟)、自动恢复(进程守护、OOM重启)、日志审计、模型版本管理。这些运维能力的重要性不亚于硬件选型。
六、我们的选型决策与反思
在我们团队基于智恒百亿八卡服务器的实践中,选型决策过程大致如下:
-
明确需求:推理7B-13B模型,并发需求中等,数据必须本地化
-
排除选项:A100方案超预算,云方案数据合规不通过
-
评估PCIe可行性:7B-13B模型在我们的batch size配置下属于计算密集型,通信占比可控
-
拓扑优化:TP组限制在同一Switch的4卡内,剩余4卡做DP
-
散热验证:72小时满载测试确认温度可控、无降频
-
最终决策:PCIe八卡方案满足需求,散热设计通过验证
反思:如果我们的需求变成70B模型推理、高并发,决策可能会不同。架构选型没有一劳永逸的答案——关键是建立分析框架,在自己的场景里诚实评估。
七、FAQ
Q1:PCIe互联做LLM推理,最关键的不是带宽而是什么?
最关键的是拓扑感知——即理解你的PCIe Switch分组结构,并将通信密集的并行操作(张量并行)限制在同一Switch内。一个拓扑优化良好的PCIe方案,实际通信效率可以显著优于"盲目全卡TP"的配置。
Q2:什么场景下确实不应该选PCIe方案?
三种情况:一是模型极大(如100B+),张量并行必须跨满8卡且通信占比极高;二是对延迟极其敏感(如<10ms首token延迟)的实时场景;三是需要MIG多租户隔离的共享平台。这些场景NVLink的带宽优势确实不可替代。
Q3:如何快速判断我的场景通信占比高不高?
最简单的定性方法:看你的batch size。如果batch size远大于模型层数(粗略地说),计算时间远大于通信时间,PCIe足够。如果batch size很小(如1-2),每层通信的固定开销在总时间中占比就高,需要更谨慎地评估。精确判断建议用nccl-tests做通信带宽测试,与单步前向传播时间对比。
Q4:4+4分组拓扑和2+2+2+2拓扑哪个更好?
取决于你的并行策略。如果主要用TP=4,4+4分组更优——4卡TP完全在Switch内。如果主要用TP=2,2+2+2+2拓扑的通信局部性更好——每两卡一组,组内通信效率最高。没有绝对优劣,关键是拓扑与策略的匹配。
Q5:除了互联带宽,选多卡GPU服务器时最该关注什么?
散热设计。八卡GPU满载运行对服务器工程能力是极大考验。关注:风道设计是否独立分段、是否有长时间(72小时+)满载测试数据、满载温度是否可控在安全范围、电源是否冗余。这些因素决定推理服务能否7×24小时稳定运行——散热不足导致的降频,性能损失远大于PCIe vs NVLink的通信差异。
Q6:智恒百亿的八卡服务器在架构选型中有什么特点?
该服务器采用4+4分组PCIe Switch拓扑,适合TP≤4的并行策略配置。散热方面采用独立分段风道设计,在我们团队的长时间满载验证中表现稳定。选型时建议结合自身模型规模和并发需求,重点验证拓扑与并行策略的匹配度。
声明:本文为技术选型思考笔记,基于智恒百亿八卡GPU服务器的实践环境。文中的分析框架和决策方法具有通用参考价值,具体选型结论应根据自身场景独立评估。

浙公网安备 33010602011771号