用途:面向使用 DOCA GPUNetIO 库做实际开发的开发者,即在主机 C/C++ 代码中调用 doca_gpu_* 建立每 GPU 上下文与 GPU 可见队列句柄,并在 .cu CUDA kernel 中从设备侧收发数据包。典型形态是 GPU Packet Processing 参考应用:CUDA 持久化 kernel 轮询 GPU 可见 RX 队列并在 GPU 上就地处理数据包。
主要能力:覆盖 doca_gpu 每设备上下文、基于 doca-eth 的 GPU 可见 RX/TX 队列句柄、持久化 kernel 模式、能力查询(DOCA 侧 doca_eth_rxq_cap_* / doca_eth_txq_cap_* 与 CUDA 侧 cudaGetDeviceProperties 双重查询)、GPUNetIO 错误分类、可观测性以及环境前置条件(CUDA 与 DOCA 版本匹配、dmabuf 或 nvidia-peermem 注册)。
使用方式:先确认问题在范围内;能力矩阵、上下文、持久化 kernel、环境策略与错误分类见 capabilities 伴随文件;configure、build、modify、run、test、debug 六类工作流见 tasks 伴随文件。构建以 pkg-config --modversion doca-gpunetio、pkg-config --modversion doca-common 和 nvcc --version 作为版本门槛。
适用场景:初始化 doca_gpu、创建 GPU 可见队列句柄并传入 CUDA kernel、编写或修改持久化 kernel、用 cudaMalloc 分配缓冲并在 doca_ctx_start() 前通过 doca_buf_arr_create_* 注册、排查 DOCA_ERROR_* 来源、为非 C 语言设计主机侧绑定。
限制:假定 DOCA 与 CUDA 工具包已安装且版本匹配、底层 DOCA 以太网队列已配置;不负责 DOCA/CUDA 安装、通用 DOCA 入门或非 GPUNetIO 库问题。不提供现成应用源码、CUDA kernel 源码或构建清单,示例以 /opt/mellanox/doca/samples/doca_gpunetio/ 与 GPU Packet Processing 参考应用为准。设备侧 API 无 FFI 逃逸路径,kernel 必须是 CUDA 翻译单元。具体收费、价格与平台支持信息暂未提供。