用途:分析 Kit、Isaac Sim、Isaac Lab 等基于 Omniverse 应用的性能剖析数据,定位热点、回归与优化点。
主要能力:
- 解读 Omniverse 专用 NVTX 区域,如 App Update(帧边界)、UsdFileOp(加载)、RtxHydraEngine::render(渲染)、OmniGraph::(计算)等,并排除 Carbonite::、Thread waiting 等噪声。
- 阶段检测:startup → loading → runtime → shutdown;以 App Update 为帧标记,帧时长超过中位数 5 倍视为 loading 尖峰。
- 三条分析路径:A 用 nsys export 导出 SQLite 后以 sqlite3 查询概览、阶段与 Top Zones;B 用 Tracy GUI Statistics 配合 Range Limit 做热点排序与前后对比;C 用 csvexport 生成 CSV 作为自动化回退。
- 双版本对比:分别导出 v1/v2 的 SQLite 或 CSV,比较回归与改进区域,输出含总体指标、阶段对比、帧分析、回归/改进排名与根因的报告。
必要用法:
- 导出:nsys export --type=sqlite -o profile.sqlite profile.nsys-rep --force-overwrite=true
- CSV:csvexport profile.tracy > zones.csv
- 依赖工具:nsys、sqlite3、csvexport;.tracy 主路径需 Tracy GUI。
限制:
- Kit/RTX 应用的 CUPTI_ACTIVITY_KIND_KERNEL 常为空,属正常。
- Tracy CSV 为预聚合数据,无逐次调用时间戳,无法做阶段分离;阶段感知分析应优先用 nsys SQLite。
- csvexport 列名因版本而异(如 total_ns 与 total_time),脚本需归一化。
- 对比需相同硬件、场景、参数与等长稳态区间;单帧对比仅在问题可复现时使用。
- 安装与采集见 profiling、install-profilers 技能,本资料未提供具体安装步骤。