GPU 间的通信方式

通信路径大梳理

  • 同一 NUMA 节点内的 GPU 间通信走 PCIe/P2P 路径,经由 CPU 片上交换结构,但不经过 CPU 核心,数据直接在显存之间拷贝。
  • 同 NUMA 节点内的 CPU 通信直接通过节点内部的共享内存与高速互连(UPI/Infinity Fabric),不依赖外部网络或总线。
  • 不同numa节点的GPU通信,需要CPU参与,在系统总线中通过QPI/UPI通信
  • 不同numa节点,使用nvlink设备连接的GPU 提供 GPU‑to‑GPU 的高速直连。通信时数据直接在 GPU 之间跳过 CPU,CPU 只负责指挥而不当"邮差"
  • 不同物理节点间的GPU通信,且物理节点间使用ether连接。GPU数据将通过CPU,并最终通过以太网传输。
  • 不同物理节点间的GPU,且物理节点使用RDMA连接,GPU数据绕过CPU,直接通过RMDA进行跨物理节点通信。

通信速率对比

通信类型 典型带宽 说明
同一 NUMA 节点内 GPU‑to‑GPU P2P PCIe 4.0 x16 ≈ 32 GB/s<br>PCIe 5.0 x16 ≈ 64 GB/s 通过 PCIe lanes 直连,取决于 CPU 提供的 lanes 速率。
跨 NUMA 节点 GPU‑to‑GPU ≈ 20‑40 GB/s* 数据须通过另一颗 CPU 的互连(UPI/Infinity Fabric),实际会被分割/共享,略低。
NVLink(GPU‑to‑GPU) NVLink 2.0 ≈ 50 GB/s/链路<br>NVLink 3.0 ≈ 75 GB/s/链路<br>多链路可叠加(例如 A100 6 链路≈ 600 GB/s) 专用点对点互连,直接在 GPU 之间,不经过 CPU。
RDMA(GPU‑to‑GPU 跨节点) Infiniband HDR 200 Gb/s≈ 25 GB/s<br>Infiniband NDR 400 Gb/s≈ 50 GB/s 使用 GPUDirect‑RDMA,通过网络传输,CPU 不参与数据拷贝。
以太网(无 RDMA) 25 GbE≈ 3 GB/s<br>100 GbE≈ 12 GB/s<br>400 GbE≈ 50 GB/s 若采用传统 TCP/IP,数据先过主机内存/CPU,延迟高且带宽受限。
相关推荐
eEKI DAND27 分钟前
对Docker部署的MySQL中的数据进行备份恢复
mysql·docker·容器
阿里云云原生2 小时前
给 OpenClaw 加上企业级 Memory,你的 Agent 终于不用再问第二遍
云原生
平行云3 小时前
虚拟直播混合式2D/3D应用程序实时云渲染推流解决方案
linux·unity·云原生·ue5·图形渲染·实时云渲染·像素流送
longerxin20204 小时前
kubeasz 快速指南:一键部署 Kubernetes-k8s 测试环境
云原生·容器·kubernetes
cyber_两只龙宝4 小时前
【Oracle】 Oracle之SQL的子查询
linux·运维·数据库·sql·云原生·oracle
米高梅狮子5 小时前
03.Kubernetes自动化部署和namespace、pod
容器·kubernetes·自动化
特长腿特长5 小时前
LVS_DR 模式的原理
linux·运维·网络·云原生·centos·lvs
Sirius Wu5 小时前
Docker 镜像的构建、打包、变更、再次打包全流程
运维·docker·容器
Zhu7586 小时前
【软件部署】docker环境部署domino
运维·docker·容器
努力的搬砖人.10 小时前
配置 Docker 镜像加速器
运维·docker·容器