DOCA 硬件遥测计数器读取技能
帮助开发者从 BlueField 或 ConnectX 设备读取分域硬件计数器。
文档明确限定为本地 DOCA 硬件计数器读取,要求能力查询、特定权限、错误分类,并警告 clear-on-read 的破坏性影响;未见恶意行为或隐蔽外传。但权限边界、用户确认、回滚机制和数据流披露仍不完整,且许可证元数据为 NOASSERTION 与文件中的 Apache-2.0 声明不一致,因此扣分。
SKILL.md、CAPABILITIES.md 和 TASKS.md 对六个域、生命周期、错误处理和重试窗口有较一致的静态说明;但没有可执行的关键路径测试,部分内容依赖未提供的外部安装、头文件和关联技能,且 benchmark 数据集不可复核。按静态校准不超过 10,故扣分。
受众、触发语句、非适用场景、读者与导出器边界以及 PCI 特殊能力查询均写得清楚;但没有中文使用指导,也没有针对中国大陆网络可达性的证据。核心功能依赖本地 DOCA/硬件而非海外服务,因此未作网络核心扣分,但边界证据仍有限。
采用 loader、能力说明、任务流程和参考细节的分层结构,包含示例问题、限制、版本路由和 issue 入口;但缺少稳定发布版本、变更记录和明确维护责任,SKILLCARD 中版本与签名仍为 TBD,benchmark 还记录了缺少推荐章节、作者和非标准文件结构等问题,故扣分。
内容能覆盖选择域、能力查询、构建、运行、测试和调试的核心任务,并提供错误到行动的映射;但这是文档型 loader,不提供可直接运行代码,实际结果仍依赖用户本地 SDK、设备和其他技能。静态证据下按上限给 7 分。
正文提供了可追踪的符号、命令、路径和错误语义,且附有 benchmark 报告;但报告没有提供原始数据集或可独立复现的测试材料,未达到多类型独立证据标准,因此仅给有限静态可验证性。
- 许可证元数据为 NOASSERTION,但随附文件声明 Apache-2.0、Apache-2.0 AND CC-BY-4.0,发布前应统一并核验适用许可证。
- benchmark 报告声称通过,但原始 8 个任务数据集不可用,不能替代独立复现。
- 运行建议涉及真实 BlueField/ConnectX 设备和特定权限;用户应先确认设备能力、版本匹配和权限,不应默认使用全局 sudo。
- clear-on-read 会重置底层计数器,启用前必须获得明确确认并评估其他读取者的影响。
这个 Skill 能做什么,适合哪些场景?
该技能面向使用 DOCA Telemetry 读取器库的开发者,从 doca_dev 读取 PCC、DPA、DIAG、ADP_RETX、PHY 或 PCI 硬件计数器。它指导能力检查、分域上下文创建、启动、采样窗口配置和快照读取,并覆盖读取错误处理。技能要求 Linux 主机已安装 DOCA SDK,并连接受支持的 BlueField DPU 或 ConnectX NIC。它不负责发布或导出指标,也不覆盖 DOCA Telemetry Service、NetFlow、IPFIX 或本地套接字采集。
指导应用选择对应的 doca_telemetry_<domain> 头文件和库;通过分域能力查询确认设备支持的计数器;在 doca_dev 上创建并启动分域上下文;配置采样窗口并读取最新硬件计数器快照;解释 DOCA_ERROR_*、NOT_SUPPORTED、AGAIN、权限和驱动相关状态;为 C/C++ 或其他语言的 FFI 封装提供生命周期与错误处理规则。
- 需要从 BlueField 应用读取 PCC 计数器的 C/C++ 开发者,使用该技能选择 PCC 读取接口并完成能力检查。
- 需要采样 DPA 计数器导出的开发者,使用分域上下文和采样窗口读取硬件快照。
- 需要读取 PHY、PCI 或 DIAG 计数器的网络设备开发者,先查询对应能力再执行读取。
- 正在为 Rust、Go 或 Python 封装 DOCA Telemetry C ABI 的开发者,使用该技能保持分域生命周期和错误规则一致。
这个 Skill 有哪些优点和局限?
- 覆盖六类分域硬件计数器读取接口。
- 明确要求先做能力查询,降低访问不受支持计数器域的风险。
- 提供分域生命周期、采样窗口和读取错误分类指导。
- 适用于 C/C++,也能指导其他语言通过 FFI 使用 C ABI。
- 必须预先安装 DOCA SDK,并具备 BlueField DPU 或 ConnectX NIC。
- 只覆盖硬件计数器读取,不负责 Prometheus、OTLP 或其他发布导出。
- 不覆盖 DOCA Telemetry Service、NetFlow、IPFIX 或本地套接字采集。
- 详细工作流位于引用的 TASKS.md 和 CAPABILITIES.md;所给资料未包含这些文件的正文。
如何安装这个 Skill?
使用 NVIDIA skills CLI 安装指定技能:
npx skills add nvidia/skills --skill doca-telemetry --yes
该命令来自仓库 README;安装后,技能会在代理加载相关任务时可用。DOCA SDK 本身的安装不在此技能范围内。
如何使用这个 Skill?
在已安装 DOCA SDK 且连接 BlueField DPU 或 ConnectX NIC 的 Linux 主机上,向代理提出具体的读取请求,例如:“从我的 BlueField 应用读取 PCC 计数器”或“采样 DPA counter exports”。对于配置、构建、修改、运行、测试或调试任务,应继续读取该技能目录中的 TASKS.md;需要确认设备可读计数器域时,应读取 CAPABILITIES.md。
这个 Skill 与同类方案有什么区别?
如果需求是发布或导出计数器,应选择同仓库中明确指向的 doca-telemetry-exporter;只需结构化标准输出时可考虑 doca-log;非 DOCA 计数器来源可使用通用 Prometheus 或 OpenTelemetry 客户端;需要部署式聚合器时可考虑 DOCA Telemetry Service。