PCIe与卡间拓扑(PCIe Topology)
AI TERM术语词条PCIe Topology
术语释义
PCIe与卡间拓扑指服务器内部加速卡、处理器与内存之间的连接方式,它决定数据在芯片之间怎么走、能跑多快,直接影响多卡效率。
PCIe(Peripheral Component Interconnect Express,高速外设互连总线)与卡间拓扑,指服务器主板、处理器与加速卡之间的连接结构。它决定数据从一个芯片到另一个芯片要经过哪些环节、可用带宽有多大,进而影响多卡训练与推理的效率。同样是八卡服务器,内部连接方式不同,实际性能可能相差明显。
需要了解的几个概念
拓扑可以用一张连接图来描述:哪些卡直连、哪些卡需要绕经交换芯片、处理器与内存如何分组。带宽与延迟是评价这张图的两个基本指标,而它们又取决于通道数量与链路代际。通道数量、代际与交换层级共同决定实际可用带宽,纸面参数相同并不代表表现一致。
拓扑由什么决定
- 通道与代际:可用通道数量与总线代际共同决定单卡对外带宽。
- 点对点互连:部分卡之间可直连,绕过总线获得更高带宽与更低延迟。
- 交换芯片:用于扩展互连规模,使任意两卡之间都能保持较高带宽。
- 处理器与内存亲和:卡挂在哪个处理器的分组下,会影响内存访问开销。
- 并行策略匹配:数据并行与模型并行对拓扑的敏感程度并不相同。
怎么核对与调优
- 查连接图:用系统工具导出设备之间的连接关系,确认是否与预期一致
- 测有效带宽:跑点对点与集体通信测试,观察是否接近链路可提供的水平
- 看亲和性:确认进程与显存是否落在同一处理器分组下
- 匹配并行策略:通信密集的并行方式对拓扑更敏感,需要分别测
- 关注争用:多任务共享同一条链路时,可用带宽会被分摊
- 留出余量:为后续扩容预留插槽与链路资源,避免升级时整体重构
实践中为什么要看拓扑
当模型规模上升,通信开销可能超过计算本身,此时拓扑就是决定扩展效率的关键。工程上通常结合拓扑感知的通信库、合理的并行切分与数据放置来规避瓶颈。采购或租用服务器时,先确认拓扑结构与可用带宽,比只数加速卡数量更能预测实际表现。反之,若任务本身通信量很小,为高带宽拓扑支付溢价未必划算。若发现通信占比偏高,优先调整切分方式与数据放置,往往比直接更换硬件更有效;对单卡即可承载的推理任务,拓扑差异带来的影响通常有限。