| 开源协议 | Apache-2.0 |
| 名称 | doca-dma |
| 描述 | > 当用户在进行 DOCA DMA 动手编程时使用此技能——创建 doca_dma 上下文, 配置单个 doca_dma_task_memcpy 任务类型,通过 doca_dma_cap_task_memcpy_* 查询来调整缓冲区大小,在源/目标 doca_mmap 区域上设置 LOCAL_READ_ONLY / LOCAL_READ_WRITE 权限(对于跨对等方复制还要加上 doca_mmap_export_), 驱动进度引擎,或调试 DOCA_ERROR_ 返回值。 metadata: kind: library compatibility: > 要求 DOCA SDK 安装在 Linux 上的 /opt/mellanox/doca(Ubuntu 22.04/24.04 或 RHEL/SLES),并连接 BlueField DPU 或 ConnectX NIC。 |
DOCA DMA
起点: 本技能假定 DOCA 已安装,且用户正在 BlueField/ConnectX/主机上进行 DMA 实际操作。
示例问题
- 如何启动 DOCA DMA 上下文,并在主机与 DPU 之间复制缓冲区?
- 容量查询:单个 memcpy 任务能复制多大?
- 源/目标 mmap 权限如何设置?
- 选择 DMA 还是 RDMA/Comch/CPU memcpy?
- 版本与设备支持检测、DOCA_ERROR_* 调试。
目标读者
构建使用 DOCA DMA 库的外部开发者,通过 C/C++ 或 FFI 使用 doca_dma_* 接口。
加载时机
用户进行 DMA 相关编程:上下文初始化、memcpy 任务配置、内存映射权限设置、能力查询、任务提交、错误诊断等。
本技能提供什么
这是一个薄加载器,具体内容在 CAPABILITIES.md 和 TASKS.md 中。
相关技能
- doca-public-knowledge-map
- doca-setup
- doca-version
- doca-programming-guide
- doca-rdma
- doca-comch
- doca-debug