【PCIe】P2P DMA

news/2024/7/8 3:35:33 标签: p2p, pcie, 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


http://www.niftyadmin.cn/n/5536368.html

相关文章

C++之boost智能指针

1、boost智能指针 资源获取即初始化:在构造函数中对资源进行初始化,在析构函数中释放。 智能指针的本质思想是:将堆对象的生存期,用栈对象来管理。这个栈对象就是智能指针。 当new 一个堆对象的时候,立刻用智能指针…

IT项目管理文档体系

IT项目管理文档体系是确保项目顺利进行、有效沟通和合规性的关键组成部分。一个完善的文档体系能够帮助项目团队记录决策过程、明确职责、跟踪进度、管理变更并提供审计痕迹。 项目启动文档: 项目章程:正式授权项目启动,定义项目目标、范围、…

软件设计之Java入门视频(11)

软件设计之Java入门视频(11) 视频教程来自B站尚硅谷: 尚硅谷Java入门视频教程,宋红康java基础视频 相关文件资料(百度网盘) 提取密码:8op3 idea 下载可以关注 软件管家 公众号 学习内容: 该视频共分为1-7…

2024Datawhale-AI夏令营——机器学习挑战赛——学习笔记

#ai夏令营#datawhale#夏令营 Day1:入门级demo运行 这个其实比较简单,按照操作来做就行了,特征工程和调参暂时都没有做,后续的才是重头戏。 Day2:正式比赛开始 赛题:数据挖掘赛道——利用机器学习方法根据给定的特征判断PROTACs…

[NOIP1998 提高组] 车站(代码解释在最后)

[NOIP1998 提高组] 车站 题目描述 火车从始发站(称为第 1 1 1 站)开出,在始发站上车的人数为 a a a,然后到达第 2 2 2 站,在第 2 2 2 站有人上、下车,但上、下车的人数相同,因此在第 2 2…

游戏AI的创造思路-技术基础-自然语言处理

自然语言处理-可以对游戏AI特别是RPG类、语言类游戏进行“附魔”,开发出“随机应变”和你聊天的“女友”、“队友”或者是根据你定义的文本库来用接近自然语言的生成“语言”,推动游戏情景在受控范围内前进 目录 1. 自然语言处理定义 2. 发展历史 3. …

python源码:opencv多视频源同屏拼接播放

一、前言 如标题所示,这个python代码的目的是利用opencv模块实现多视频源同屏拼接播放的,里面包含视频播放尺寸修改、视频播放加序号、视频流存活检测等方案,可做扩展开发使用。 二、代码 import cv2 import time from func_timeout import …

结合Langchain来开发一个能够通过POST请求获取GPT回答的智能体

结合Langchain来开发一个能够通过POST请求获取GPT回答的智能体可以按照以下步骤进行。这个过程包括配置Langchain以利用外部API进行响应、设计流数据处理以及搭建一个简单的智能体来处理请求和回复。下面是一个详细的指南。 步骤 1: 安装必要的库 确保安装了Langchain和相关的…