开发与工程 ✓ NVIDIA · 官方 nvidia-docabluefield-dpuprogrammable-congestion-controlrdma-rocedpacchost-side-c-api

DOCA PCC 自定义拥塞控制

指导主机侧在 BlueField 上加载和调试自定义 PCC 算法

FollowSkills 评估 · FSRS-2.0
不推荐
51/ 100 五分制 2.6 / 5
信任安全17 / 25 · 3.4/5

文档明确限定为主机侧自定义 PCC,要求确认三轴能力、固件槽位、设备端口、参数范围,并说明 stop 与逆序清理;未见凭据窃取、隐蔽外传或破坏性默认行为。扣分原因是会触及真实 DPU、固件和 RoCE 流量,用户确认、变更回滚和数据流披露仍不完整,且许可证元数据存在 Apache-2.0、Apache-2.0 AND CC-BY-4.0 与仓库 NOASSERTION 的不一致。

可靠稳定8 / 20 · 2.0/5

SKILL.md、CAPABILITIES.md 和 TASKS.md 形成较完整的配置、构建、运行、测试和调试路径,并提供错误分类和失败分层。静态材料没有可执行复现、完整 API 配方或提交的测试套件,部分关键步骤依赖其他技能或外部文档;按静态上限扣分,不能证明运行可靠性超过中等水平。

适用触发10 / 15 · 3.3/5

触发条件、适用对象、排除范围和 custom PCC/default PCC/pcc_counters 的路由边界写得清楚,也说明了 C/FFI 与 DPA 编译约束。扣分原因是目标环境极其专门化,中文支持仅被间接描述为语言中立,且部分核心知识依赖 NVIDIA 海外文档或本地 DOCA 安装,缺乏对中国网络可达性的证据。

规范维护8 / 15 · 2.7/5

采用 SKILL.md、CAPABILITIES.md、TASKS.md 分层,包含依赖、版本检查、限制、相关技能、维护入口和基准报告。扣分原因是缺少明确作者、变更日志和稳定版本策略,SKILLCARD 中版本/签名仍为 TBD,路径和许可证信息也存在不一致。

有效结果5 / 15 · 1.7/5

该技能能直接指导自定义 PCC 的范围判断、三轴前置检查、端口绑定、生命周期和错误分层,核心任务方向明确。扣分原因是它是薄层路由与工作流文档,不提供可直接构建的样例或完整命令/代码;静态审查不能验证最终输出可用性,基准报告还说明原始评测数据不可用。

证据核验3 / 10 · 1.5/5

材料包含固定 revision、错误映射、版本检查点、评测摘要和若干官方参考链接,具备有限审计线索。扣分原因是没有提交的测试套件或真实 CI 覆盖关键路径,基准数据集不可用,许多技术断言仍只能按作者文档接受,静态审查无法独立复现。

证据充分度: 评估于 2026年7月20日 审查版本 55f18499943e
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
使用前请注意
  • 不要将文档中的工作流视为已验证的可执行配方;在真实 BlueField、固件槽位和 RoCE 流量上操作前,应由用户确认端口、版本、参数、影响范围和恢复步骤。
  • 许可证与来源元数据不一致,发布前应核对实际授权、作者、版本和签名状态。
  • 核心参考资料依赖外部 NVIDIA 文档;应准备本地文档或可达性替代方案,尤其面向中国大陆用户。
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

该技能面向从主机侧使用 DOCA PCC 库的开发者,用于将由 DPACC 编译的自定义拥塞控制算法加载到 BlueField DPU。它覆盖每端口 doca_pcc 上下文、算法镜像加载、端口绑定、参数配置、能力发现和 DOCA_ERROR_* 调试。使用前必须具备已安装的 DOCA SDK、主机可见的 DPA、启用自定义 PCC 槽位的固件,以及匹配版本的 DPACC。它不负责编写 DPA 侧算法本体、安装环境、默认固件 PCC 或 pcc_counters 工具。

读取本机 DOCA 安装和 pkg-config doca-pcc 信息,检查 /opt/mellanox/doca 下的库、头文件、示例和应用目录;指导创建 per-port doca_pcc 上下文,加载 dpacc 生成的 doca_pcc_app,绑定 BlueField 上承载 RDMA/RoCE 流量的端口,设置算法参数并启动上下文;使用 doca_pcc_cap_* 检查能力,并按设备、固件、算法镜像和驱动层次分析 DOCA_ERROR_*。

  1. BlueField 主机侧开发者需要把自定义拥塞控制算法加载到承载 RoCE 流量的端口。
  2. 开发者需要确认当前 BlueField、DOCA 安装和固件是否支持自定义 PCC。
  3. 算法加载返回 DOCA_ERROR_NOT_PERMITTED,需要区分固件槽位未启用与权限问题。
  4. doca_pcc_* 返回 DOCA_ERROR_DRIVER,需要定位 DOCA、固件或 DPACC 生成镜像的故障层。
  5. 开发者想用 Rust、Go 或 Python 主机封装驱动已单独构建的 PCC 算法镜像。

这个 Skill 有哪些优点和局限?

优点
  • 覆盖从能力前置检查到加载、绑定、参数配置和调试的主机侧 PCC 生命周期。
  • 明确区分 BlueField DPA、固件自定义 PCC 槽位和 DOCA 能力查询这三个前置轴。
  • 清楚划定与 DPA 算法编写、默认固件 PCC 和 pcc_counters CLI 的边界。
  • 支持语言无关的主机侧封装,并保留 DOCA 与 DPACC 版本匹配要求。
局限
  • 要求用户已经安装 DOCA SDK、DPACC,并拥有满足固件条件的 BlueField 硬件。
  • 技能本身不提供预写的 PCC 应用、DPA 算法、构建清单或 bindings。
  • 不覆盖 DPA 侧拥塞控制算法设计,也不负责 RDMA/RoCE 流量环境搭建。
  • 提供的 SKILL.md 主要是导航和边界说明,详细工作流位于未随提示提供的 companion 文件中。

如何安装这个 Skill?

使用 NVIDIA/skills 仓库提供的 skills CLI 安装指定技能:npx skills add nvidia/skills --skill doca-pcc --yes。也可以省略 --yes,让 CLI 交互式选择技能和安装目标。安装后,相关 Agent 在遇到匹配任务时加载该技能。

如何使用这个 Skill?

安装后向 Agent 提出明确的主机侧自定义 PCC 任务,例如:"将我自己的拥塞控制算法加载到承载 RoCE 流量的 BlueField 端口",或:"doca_pcc 算法加载返回 DOCA_ERROR_NOT_PERMITTED,帮我排查"。执行 configure、build、modify、run、test 或 debug 类任务时,技能会引导读取 TASKS.md;询问 API 能力矩阵时读取 CAPABILITIES.md。具体 API 调用和完整命令序列未在提供的 SKILL.md 中展开。

这个 Skill 与同类方案有什么区别?

与默认固件 PCC 相比,本技能面向需要通过主机侧 doca-pcc 加载自定义算法的场景;默认固件 PCC 不需要该主机侧库。与 pcc_counters CLI 相比,本技能用于加载、绑定和参数化自定义算法,而 pcc_counters 用于运行时计数器检查。

常见问题

它能帮我编写 DPA 侧拥塞控制算法吗?
不能。它要求算法由用户以 DPACC 可接受的源代码编写并单独编译;算法本体设计应转向公共 DOCA PCC 编程指南和相关 DPA 指南。
为什么 doca_dev 可访问仍可能加载失败?
自定义 PCC 还要求 BlueField 具备主机可见的 DPA,并且固件启用了 custom-PCC slot;仅有标准 doca_dev 访问权限并不足够。
我只想查看 PCC 计数器,是否应采用它?
不应采用。pcc_counters 是独立的诊断工具,应通过 DOCA Tools 相关文档路径处理。

同仓库的其他 Skills

均来自 NVIDIA/skills

开发与工程 ✓ NVIDIA · 官方

DOCA SPCX 可编程拥塞控制

帮助开发者在 BlueField 上加载、评估和回滚 SPCX 拥塞控制算法。

开发与工程 ✓ NVIDIA · 官方

DOCA DPA 主机端开发助手

帮助在 BlueField 主机端加载、启动和调试 DOCA DPA 应用。

开发与工程 ✓ NVIDIA · 官方

DOCA SHA 加速开发技能

指导在 NVIDIA 加速器上进行 SHA 哈希卸载开发。

开发与工程 ✓ NVIDIA · 官方

DOCA PCC ZTR RTTCC 拥塞控制技能

帮助在 BlueField-3 上部署、调优和验证 NVIDIA 的 RoCE RTT 拥塞控制参考算法。

开发与工程 ✓ NVIDIA · 官方

DOCA 设备管理开发技能

用 C API 编程管理 BlueField 与 ConnectX 设备状态。

开发与工程 ✓ NVIDIA · 官方

DOCA Compress 硬件压缩开发技能

指导开发者在 BlueField 或 ConnectX 平台上实现并调试 DOCA 硬件压缩与解压。

开发与工程 ✓ NVIDIA · 官方

DOCA AES-GCM 加速开发技能

帮助开发者在 BlueField 或 ConnectX 上配置、验证和调试 DOCA AES-GCM 加解密。

开发与工程 ✓ NVIDIA · 官方

DOCA RDMA 编程助手

帮助开发者在 BlueField、ConnectX 或 DOCA 主机上构建、配置和调试基于 DOCA RDMA 的应用。

开发与工程 ✓ NVIDIA · 官方

DOCA 擦除编码开发技能

指导在 NVIDIA 硬件上开发和调试 DOCA Reed-Solomon 容错编码。

开发与工程 ✓ NVIDIA · 官方

DOCA RDMA Initiator

指导在DPA上开发由加速器发起的单边RDMA应用。

开发与工程 ✓ NVIDIA · 官方

DOCA Arg Parser CLI 技能

帮助开发者为 DOCA 应用构建和调试标准命令行界面。

开发与工程 ✓ NVIDIA · 官方

DOCA Common 基础编程技能

为 BlueField 和 ConnectX DOCA 应用提供通用编程基础。

开发与工程 ✓ NVIDIA · 官方

DOCA Ethernet 队列开发技能

为 BlueField 与 ConnectX 开发和调试 DOCA Ethernet 收发队列。

开发与工程 ✓ NVIDIA · 官方

DOCA STA 存储目标加速

帮助开发者在 BlueField 上构建并调试 RDMA NVMe-oF 存储目标。

开发与工程 ✓ NVIDIA · 官方

DOCA DMA 编程助手

指导在 BlueField 或 ConnectX 上进行 DOCA DMA 内存拷贝开发。

开发与工程 ✓ NVIDIA · 官方

DOCA Flow DPA Provider 技能

帮助开发者将 DOCA Flow 管道和资源导出到 BlueField DPA,供 DPA 内核直接读取或修改。

开发与工程 ✓ NVIDIA · 官方

DOCA GPI GPU 直驱 RDMA 技能

指导 CUDA 内核绕过主机 CPU,直接从 GPU 内存驱动 RDMA 队列。

开发与工程 ✓ NVIDIA · 官方

DOCA UROM 主机侧卸载开发

指导 HPC、UCX 和 MPI 应用将远程内存操作卸载到 BlueField DPU。

自动化与运维 ✓ NVIDIA · 官方

DOCA 管理服务运维技能

帮助运维团队部署、配置并排查 NVIDIA DMS 管理服务。

开发与工程 ✓ NVIDIA · 官方

DOCA Flow 调优技能

帮助工程师快照、分析并优化运行中的 DOCA Flow 管道。

相关 Skills