Jetson 内存审计
用设备实时数据审计 Jetson 内存占用,并验证内存回收是否真正生效。
技能以只读审计为主,明确要求用户授权后才执行 drop_caches,并限定主机、权限和沙箱可见性;但缓存清理仍需 root/sudo,脚本本身不执行交互式确认,缺少回滚机制和更完整的数据流披露,因此扣分。
指令、参数、退出码、异常场景和缺少主机可见性时的反馈较完整;但关键依赖 snapshot.sh、common.sh、detect_jetson.sh 未在所给材料中提供,且没有覆盖关键路径的测试,静态评估不超过10分。
目标用户、触发场景、输入输出、主机/容器边界及不适用情况描述清楚,并能转交其他技能;未说明中文交互支持,环境兼容性仍依赖 Jetson 主机可见性,因此扣分。
文档分层、前置条件、脚本说明、限制、错误处理、版本和评估报告较充分;但缺少 Examples,作者格式不符合验证要求,变更记录和维护责任/更新路径不完整,且许可证元数据存在 NOASSERTION 与文件声明不完全一致的问题。
审计 JSON、缓存清理前后差值和基线流程均可直接支持核心任务,且包含不估算、不虚构数据的约束;但 benchmark 数据集不可用,报告的 effectiveness 仅47%、correctness 仅68%,且静态无法验证脚本实际产出,因此扣分。
提交了脚本、设计说明、评估报告和 evals,提供一定可审计依据;但评估数据集缺失,没有关键路径测试或第三方独立复现证据,结论覆盖有限。
- 执行 drop_caches 前仍应在主机侧再次确认授权、目标环境和业务影响;该操作可能改变全局缓存状态,技能未提供回滚步骤。
- audit.sh 依赖仓库中未提供的 snapshot.sh 及其他辅助脚本;部署前应确认依赖路径和版本一致。
- 不要把 benchmark 的 PASS 或百分比视为独立验证;报告明确说明评估数据集未随材料提供。
- 许可证、作者元数据和维护责任信息应在发布前统一。
这个 Skill 能做什么,适合哪些场景?
这是一个面向 NVIDIA Jetson 设备的只读内存审计技能,适用于检查 DRAM、NvMap 和进程内存使用情况。它运行审计脚本,生成包含内存总量、可用内存、缓存、系统目标、显示管理器、NvMap 客户端和高 PSS 进程的 JSON 快照。对于 JetPack 7.2 以下或 L4T r39.0 以下版本,它说明 CUDA 工作负载退出后内存可能仍由 Thor RM 保留,并提供经用户授权后执行的缓存回收验证流程。它适合需要基线、变更后快照和实际可用内存差值的 Jetson 主机运维场景。
运行 scripts/audit.sh,调用 jetson-diagnostic/scripts/snapshot.sh 并输出 JSON 内存快照;读取实际设备上的内存、进程、系统目标、候选显示服务、tegrastats 和 NvMap 数据。对于明确授权的缓存回收操作,运行 scripts/drop_caches.sh,支持 --mode 1|2|3 和 --quiet,并报告回收前后的 free、available 和 cached 差值。它要求使用 before/after 快照比较 memory_kb.available,不从容器大小、模型大小或单次 RSS 数据估算释放量。
- Jetson 用户想知道当前有多少内存被使用,以及哪个进程或 NvMap 客户端占用最多。
- 用户停止 vLLM、sglang、Ollama 或其他 CUDA 工作负载后,发现 free -h 或 tegrastats 仍显示内存紧张。
- 用户在停用图形界面或其他内存相关变更前后,需要记录基线并计算实际可用内存增量。
- 运维人员需要确认显示管理器和 graphical.target 状态,但希望把停用桌面服务的方案交给其他技能处理。
- 审计需要访问 Jetson 主机的 /proc、tegrastats 或 NvMap 数据,并判断当前沙箱是否具备足够可见性。
这个 Skill 有哪些优点和局限?
- 以实际 Jetson 设备数据为依据,覆盖内存、进程、tegrastats、系统目标和 NvMap 信息。
- 明确区分当前快照与 before/after 回收差值,避免用容器大小或模型大小推算释放量。
- 针对旧版 JetPack/L4T 的 CUDA 内存滞留现象提供具体诊断和验证流程。
- 缓存回收脚本默认先执行 sync,并要求用户授权后再操作。
- 没有 before 快照时,无法从当前状态单独恢复精确的已释放内存量。
- NvMap 统计依赖主机可见的 debugfs 和权限;不可用时只能报告 GPU 内存归因受限。
- 沙箱或容器若无法访问 Jetson 主机数据,审计无法提供真实内存数字。
- 技能本身不负责停用桌面服务、调整模型服务或执行超出其范围的启动参数修改。
如何安装这个 Skill?
使用 NVIDIA 技能集合的 skills CLI 安装:
npx skills add nvidia/skills --skill jetson-memory-audit --yes
README 未说明该技能的独立安装包或额外版本要求。
如何使用这个 Skill?
在已加载该技能的 Agent 中提出“这台 Jetson 当前用了多少内存?”或“我停止 vLLM 后内存为什么没有释放?”之类的问题。运行审计时应在 Jetson 主机,或具备主机可见 /proc、/etc/nv_tegra_release、tegrastats 和进程数据的沙箱中执行 scripts/audit.sh。只有在用户明确授权缓存回收后,才执行 scripts/drop_caches.sh;如果需要测量变更释放量,先保存审计快照,完成用户批准的变更,再执行必要的主机缓存回收并重新审计。
这个 Skill 与同类方案有什么区别?
源材料没有提供可直接比较的竞品或替代技能。它只明确将 jetson-headless-mode 用于无桌面模式规划,将 jetson-inference-mem-tune 用于模型服务器成为主要 NvMap/PSS 消费者时的后续处理。