【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

相关推荐

  1. <span style='color:red;'>pcie</span>_TLP

    pcie_TLP

    2024-07-09 21:34:05      18 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-09 21:34:05       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-09 21:34:05       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-09 21:34:05       58 阅读
  4. Python语言-面向对象

    2024-07-09 21:34:05       69 阅读

热门阅读

  1. iOS项目怎样进行二进制重排

    2024-07-09 21:34:05       25 阅读
  2. 相机光学(二十八)——感光度(ISO)

    2024-07-09 21:34:05       21 阅读
  3. 【Adobe】Photoshop图层的使用

    2024-07-09 21:34:05       25 阅读
  4. Rust破界:前端革新与Vite重构的深度透视(上)

    2024-07-09 21:34:05       25 阅读
  5. bash终端快捷键

    2024-07-09 21:34:05       24 阅读
  6. ChatGPT 5.0:一年半后的展望与看法

    2024-07-09 21:34:05       22 阅读
  7. python实现excel数据自动统计

    2024-07-09 21:34:05       24 阅读
  8. NIO基础

    NIO基础

    2024-07-09 21:34:05      19 阅读
  9. Hive、SQL Server、MySQL 和 PostgreSQL 之间的对比区别

    2024-07-09 21:34:05       26 阅读
  10. 【Python】找Excel重复行

    2024-07-09 21:34:05       21 阅读
  11. 【Unity】RPG2D龙城纷争(九)战斗系统之角色移动

    2024-07-09 21:34:05       21 阅读
  12. 华为HCIP Datacom H12-821 卷28

    2024-07-09 21:34:05       28 阅读
  13. uniapp开发射击类小游戏

    2024-07-09 21:34:05       24 阅读