【PCIe】P2P DMA

PCIe P2P (peer-to-peer communication)是PCIe的一种特性,它使两个PCIe设备之间可以直接传输数据,而不需要使用主机RAM作为临时存储。如下图3的走向

比如EP1要发送和数据给EP2,操作流程如下:

  1. 打开EP1的dma控制器;--client侧

2.src=EP1的内存地址,dst=EP2的BAR地址空间(provider),EP2的BAR地址一般会与自己的某段内存空间有一个映射关系,也就是将EP2的bar暴漏给了EP1去操作。

3.开启dma传输,将EP1的ddr数据搬运到EP2 bar空间

思考:

Why would you want peer to peer DMA?

没有CPU开销或同步的处理管道;

节省数据流行程

附:

Providers -- Expose P2P resources to other drivers

◢ Clients -- Make use of P2P resources via DMA

◢ Orchestrators -- Enables data flow between clients and providers

◢ Memory is allocated on the client side

接口参考:

PCI Peer-to-Peer DMA Support --- The Linux Kernel documentation

相关推荐
YYDataV数据可视化3 天前
【P2P音视频通信系统】信令服务器之TCP与QUIC选型对比
服务器·音视频·p2p
YYDataV数据可视化3 天前
【P2P音视频通信系统】WebRTC 之 ICE 详解
网络协议·音视频·webrtc·p2p·ice·candidate
YYDataV数据可视化3 天前
【P2P音视频通信系统】之信令服务器详解
服务器·音视频·p2p·信令服务器
YYDataV数据可视化3 天前
【P2P音视频通信系统】之STUN服务详解
webrtc·p2p·stun·音视频通信
Remember_9934 天前
一文吃透Java WebSocket:原理、实现与核心特性解析
java·开发语言·网络·websocket·网络协议·http·p2p
wenzhangli75 天前
OoderAgent AI 能力分发与自动化协作框架白皮书(V0.7.3 )
网络·去中心化·p2p
hit_waves8 天前
程序人生-Hello’s P2P 哈尔滨工业大学计算机系统大作业
c语言·程序人生·课程设计·p2p·大作业
2401_876381928 天前
程序人生-Hello’s P2P
数据库·程序人生·p2p
wxgl_xyx8 天前
程序人生-Hello’s P2P(2025)
程序人生·职场和发展·p2p
wenzhangli718 天前
【技术宣言】OoderAgent 支持 OpenWrt:不止于技术升级,更是 AI 驱动 P2P 时代的破局宣言
人工智能·网络协议·p2p