CPU和CPU,是如何通信的?

来源: 证券之星 阅读量:12834次 时间:2025-09-29 11:13:11   

公众号记得加星标,第一时间看推送不会错过。

由于人工智能的火热,在一个系统中集成CPU和GPU已经成为了常态。那么CPU和GPU之间是如何通信的?我们来看一下以下科普。

  1. 存储系统到GPU显存的数据流动

名词解释:

  • NVMe SSD: Non-Volatile Memory Express,即非易失性内存主机控制器接口规范 NVMe 是一种存储协议,基于该协议的SSD固态硬盘 ,能大幅提升读写性能。

  • Host Memory:指主机内存,是计算机中用于存储数据和程序,供 CPU 直接访问和处理的硬件组件。

  • System Memory:即系统内存,是计算机系统运行时用于临时存储数据和程序指令的硬件。

  • DMA:Direct Memory Access 即直接内存访问,是一种让外设直接与内存进行数据传输,而无需 CPU 干预的技术。

  • PCIe:Peripheral Component Interconnect Express,是一种高速串行计算机扩展总线标准,采用点对点串行连接,数据传输速率高、带宽大且可扩展性强。

  • PCIe Switch:即 PCIe 交换机,用于扩展接口数量,可让多个设备共享 PCIe 总线带宽,实现数据传输。

  • Bounce buffer:是一种数据缓冲区,用于在不同地址空间或不同设备之间临时存储和传输数据,以解决数据传输不匹配问题。

  • NIC:Network Interface Card 是计算机与网络连接的硬件设备,用于实现数据的发送与接收、网络信号的调制解调等。

  • Shared Pinned Memory :共享固定内存,能在不同应用或进程间共享数据,且固定内存地址减少数据拷贝,提高数据访问效率和系统性能。

  • IB:InfiniBand 是一种高速网络互联技术,用于高性能计算等领域,能提供低延迟、高带宽的数据传输,实现节点间快速通信。

  • HPC:High Performance Computing 高性能计算,通过集群等技术整合计算资源,快速处理大规模复杂计算任务,特点是计算能力强、并行处理能力高、数据传输速度快。

1.1 GPU与存储系统的通信

经过系统内存中转的GPU数据加载流程,涉及两次数据拷贝。

第一次拷贝:存储系统 系统内存(Host Memory)

原因:GPU无法直接访问存储设备,必须通过CPU和系统内存中转。

技术实现:使用 DMA 技术,通过PCl-e总线,由存储控制器直接将数据从NVMe 拷贝到系统内存,无需CPU干预。

第二次拷贝:系统内存 GPU显存

原因:GPU只能访问自己的显存,需通过PCl-e总线从系统内存加载数据。

技术实现:使用 CUDA的cudaMemcpy拷贝函数,通过PCIe总线将系统内存中的数据,拷贝到GPU显存中。

问题:数据经过系统内存中转,明显存在冗余的数据拷贝过程。

1.2 优化版,GPUDirect Storage

GPUDirect Storage 是什么?

Storage 是GPUDirect 系列技术之一,GPUDirect 经过多年的发展,如今已经包含四种技术,分别是: 1)GPUDirect Storage 2)GPUDirect RDMA 3)GPUDirect P2P (peer to peer) 4)GPUDirect for Video

GPUDirect Storage 功能和优势?

GPUDirect Storage 提供本地存储 或者远程存储 (NVMe over Fabric) 与GPU显存的直接通路,减少不必要的系统拷贝。它可应用网卡NIC和存储系统附近的DMA引擎,直接向GPU显存写入/读取数据。这种技术减少了CPU和系统内存的瓶颈,显著提升了数据密集型应用的性能。

2. GPU和GPU之间的数据流动

2.1. 有共享内存参与的GPU-GPU间数据流动:

1)GPU0 通过PCle将显存中的数据,拷贝到系统内存中的固定共享内存。

2)从共享内存通过PCIe总线,将数据拷贝到GPU1显存中。

利用此方案将数据从GPU0传送到GPU1,整个过程发生多次数据拷贝,直观上有些是冗余拷贝。

2.2. 优化版GPUDirect P2P

GPUDirect P2P 是什么?

P2P是一种允许GPU 之间直接进行数据传输,绕过 CPU提高数据传输效率,加速大规模数据处理和并行计算的一种技术。使用CUDA Toolkit 和driver 就可以支持原生支持P2P技术,进而实现GPU之间直接通信。

GPUDirect P2P 功能和优势?

P2P支持GPU之间通过memory fabric 直接进行数据拷贝。如果两个GPU连接到同一PCIe总线,P2P允许每个GPU直接访问自己与对方的GPU显存,而不用通过CPU辅助。即将数据从源GPU拷贝到目标GPU不需要系统内存缓存中间数据。此方法相比与之前方案,在执行相同任务时数据拷贝动作减少一半。

可优化问题:

P2P技术虽然实现了GPU到GPU之间的直接数据拷贝,但是多个GPU通过PCIe总线直接与CPU相连,随着AI对HPC要求越来越高,PCIe的通信方式,逐渐成为数据流动的瓶颈。

PCl-e 通信带宽表格:全双工模式下,采用 128b/130b 编码。

PCI - e 版本

传输速率

单通道带宽

双通道带宽

四通道带宽

八通道带宽

十六通道

带宽

3.0

8 GT/s

0.98 GB/s

1.97 GB/s

3.94 GB/s

7.88 GB/s

15.75 GB/s

4.0

16 GT/s

1.97 GB/s

3.94 GB/s

7.88 GB/s

15.75 GB/s

31.51 GB/s

5.0

32 GT/s

3.94 GB/s

7.88 GB/s

15.75 GB/s

31.51 GB/s

63.02 GB/s

6.0

64 GT/s

7.88 GB/s

15.75 GB/s

31.51 GB/s

63.02 GB/s

2.3. 高配版NVLink+NVSwitch

什么是NVLink:

NVLink是一种高速、高带宽的互连技术,用于连接多个GPU 之间或连接 GPU 与其他设备 之间的通信技术。

NVLink 功能和优势:

实现设备间的高速数据传输,支持 GPU 之间点对点直接通信和数据共享,可进行大规模并行计算。优势在于能提供极高的带宽,比如 NVIDIA A100 Tensor Core GPU 通过 NVLink 互联可达到 600GB/s 的双向带宽,远高于传统 PCIe 总线。同时具有极低的延迟,能让多 GPU 协作更紧密,显著提升计算性能。

NVLink 解决了单节点小规模计算设备之间的高效通信,比如8个GPU之间通过混合立方网格拓扑结构相连,保证了每两两个GPU之间的传输效率是一致的。

NVLink版本和带宽:

问题:当GPU个数大于NVLink最大连接数量时,这种的拓扑结构就cover不住了。大规模多GPU或者多节点之间的互联通信,需要NVSwitch上点硬科技。

NVSwitch 是什么?

NVSwitch 是NVIDIA 推出的一种高速互联芯片,专为多GPU系统设计,用以简化多GPU间实现全连接的拓扑设计,实现 GPU 之间的高效通信。它是 NVLink技术的扩展,旨在解决大规模多 GPU 系统中的通信瓶颈问题。

NVSwitch 功能和优势?

类似于PCIe使用PCIe Switch用于拓扑的扩展,Nvidia使用NVSwitch实现了NVLink的全连接。NVSwitch作为节点交换架构,支持单节点中16个GPU全互联,并且支持8对GPU同时通信。

高带宽:每条 NVLink的带宽可达300 GB/s ,远高于PCIe 的带宽(PCIe 4. 0 ×16的带宽为32GB/S)。 全互联拓扑:NVSwitch 支持全互联拓扑,每个 GPU 都可以直接与其他 GPU通信,避免了通信瓶颈。 可扩展性:NVSwitch 可以支持大规模多 GPU系统,并且随着 GPU 数量的增加,通信性能不会显著下降。

NVSwitch版本和带宽:

3.GPU之间的跨机通信

3.1 经典的跨机通信

如果涉及GPU的跨机通信,不支持RDMA的方法需要借助系统内存,才能完成数据传输,具体有5个步骤:

  1. 在源节点中把数据从源GPU拷贝到host-pinned系统内存中。

  2. 在源节点中把数据从host-pinned系统内存拷贝到网卡驱动缓冲区

  3. 通过网络传输把数据从源节点传送到目标节点的网卡驱动缓冲区

  4. 在目标节点将数据从网卡驱动缓冲区传送到host-pinned系统内存

  5. 在目标节点通过PCIe总线将数据从host-pinned系统内存拷贝到目标GPU显存

PS: 直接从主机内存中读取或写入数据,而不需要 CPU的干预。长被用于频繁的 CPU-GPU数据传输)

3.2 GPUDirect RDMA 优化

GPUDirect RDMA 是什么?

GPUDirect 系列技术之一, 该技术可减少在host-pinned系统内存中的中间数据拷贝,可极大提升通信效率。如果有GPUDirect RDMA加持,上述5个步骤可简化至一步完成。

GPUDirect RDMA 功能和优势?

GPUDirect RDMA 支持GPU间快速跨机通信,可使外围PCIe设备直接访问GPU显存。它能减轻CPU负载,同时也能减少不必要的通过系统内存进行的数据拷贝。

实现方式: 1)InfiniBand 是最早实现的RDMA协议,广泛应用于高性能计算中。2)RoCE (RDMA over Converged Ethernet) 是一种允许通过以太网进行 RDMA的网络协议。3)iWARP允许在TCP上执行RDMA的网络协议。

4. 总结

通过 GPUDirect Storage 技术实现了存储设备和GPU显存的直接访问,数据加载效率大大提升。通过GPUDirect P2P技术实现了GPU之间互联互通,可以快速访问。NVLink 用于改善PCIe带宽瓶颈问题,NVSwitch 解决多个GPU设备拓扑扩展问题。GPUDirect RDMA 解决多节点GPU之间通信问题。

Q/A:在GPUDirect 技术中 P2P和 RDMA都是实现GPU之间的高效通信,两者之间的区别和联系?

在实际系统中,两者可结合使用以最大化性能:

  1. 单节点内:通过 NVLink + GPUDirect P2P 实现 GPU 间高速通信。

  1. 跨节点间:通过 InfiniBand + GPUDirect RDMA 实现低延迟数据传输。

例如,在训练千亿参数模型时,节点内8个GPU 使用 NVLink P2P同步梯度;节点间通过 RDMA将聚合后的梯度广播到其他服务器。

所以:GPUDirect P2P 是单节点多 GPU 通信的基石,依赖高速直连硬件优化本地协作。GPUDirect RDMA 是跨节点 GPU 通信的核心,依赖RDMA网络实现超低延迟的远程数据直达。两者共同支撑了从单机到超大规模集群的GPU高效协同,是AI训练、HPC等领域的关键技术。

今天是《半导体行业观察》为您分享的第4179期内容,欢迎关注。

加星标第一时间看推送,小号防走丢

求推荐

声明:以上内容为本网站转自其它媒体,相关信息仅为传递更多企业信息之目的,不代表本网观点,亦不代表本网站赞同其观点或证实其内容的真实性。投资有风险,需谨慎。

猜你喜欢
女性乳房保健的按摩手法是什么?按摩六招式让你乳房坚挺不下垂
女性乳房保健的按摩手法是什么?按摩六招式让你乳房坚挺不下垂

乳房对于女人来说非常的重要,可以增强女人的美观,但是很多女性再生育哺乳之后却出现了乳房下垂的现象,那么该如何预防乳房下垂呢?中医介绍,推拿按摩可以帮你有效的预防乳房下垂,下面就为大家介绍一下乳房保健的按摩手法。预防乳房下垂的按摩六招式1.将.....

做什么运动具有补肾功效 夜晚在床上做3个运动能补肾
做什么运动具有补肾功效 夜晚在床上做3个运动能补肾

我们现在的生活压力是很大的,生活中很多的人还没有时间去做做运动,忙碌的生活让很多的人出现了肾虚的现象,人们应该注意了解一些养肾的方法,专家表示在晚上可以一边看电视一边在床上做运动,我们看看这些方法吧。1.腹式呼吸平躺在床上,嘴合上,用鼻慢慢.....

如何按摩才能做到科学的保健养生 常按四大保健穴位强身延年益寿
如何按摩才能做到科学的保健养生 常按四大保健穴位强身延年益寿

我们都想健康长寿,如何才能实现这个目标呢?当然需要加强日常的保健养生了,那么如何才能做到科学的保健养生呢?穴位按摩是一个不错的方法,下面中医就为大家带来了四大保健养生穴位,经常按摩强体养生,延年益寿。涌泉穴动作要领:将左脚放到右膝上,右拇指.....

得了癌症后,一口发物都不能碰?北大肿瘤专家对忌口有不同的看法
得了癌症后,一口发物都不能碰?北大肿瘤专家对忌口有不同的看法

都说“天上龙肉,地上鹅肉”,老刘最近为了吃上一口鹅肉愁死了。老刘,六十三岁,前不久查出了肺结节,医生说要先观察,如果有恶性的倾向就做手术。全家对待这件事都非常上心,对老刘做出了各种限制,尤其是饮食,列出了一长串“发物”的黑名单。老刘心心念念.....

睡姿不对,身体遭罪!分享3种“最佳睡姿”,没准就有适合你的
睡姿不对,身体遭罪!分享3种“最佳睡姿”,没准就有适合你的

“睡觉不能脚朝西头朝东!”阿强和同事出差,订了一个双人间,同事神神叨叨地让他换一个朝向睡觉。“你说的都是迷信,朝哪睡其实都没关系。”“之前我就是脚朝西头朝东睡不着,换了之后马上就好了,其实和地球磁场有关.....”“打住打住,越说越玄乎,我.....

夏季来袭,儿童感冒了该如何区别风寒、风热感冒?抓住1个关键点
夏季来袭,儿童感冒了该如何区别风寒、风热感冒?抓住1个关键点

“我家孩子受了“寒”,为何要吃感冒清“热”冲剂?”王女士看着医生开的药忧心忡忡,迟迟没敢喂给孩子吃。王女士的儿子小亮今年5岁,昨天夜里被子盖不严,一大早就咳嗽,还嚷着浑身疼痛。王女士检查后发现儿子发烧了,一边咳嗽还捂着嗓子喊疼,估计是昨晚受.....

午餐这样吃,你不胖谁胖?
午餐这样吃,你不胖谁胖?

在减肥界,究竟是不吃早餐还是不吃晚餐已经撕了很久了,但无论是早餐党还是晚餐党,大家都很坚定地表示,午餐还是要吃的。既然午餐辣么重要,那么吃错午餐就很麻烦了~所以今天呢,给大家总结了几种常见的错误午餐,可以检查一下自己有没有吃错。1:低热量/.....

JAHA:辅助生殖技术妊娠的院内并发症
JAHA:辅助生殖技术妊娠的院内并发症

辅助生殖技术已成为不孕症常见的治疗手段,不孕症这一问题已影响到全球约4800万对夫妇。随着孕前心血管危险因素(如慢性高血压、肥胖和糖尿病)的增加,孕产妇年龄的增加引起了人们对与辅助生殖技术相关的妊娠并发症的担忧。辅助生殖技术是一组治疗不孕症.....