OVR 指标工具 - 最佳实践(适用于非工程师)
OVR 指标工具用于衡量在 Quest 硬件上运行的任何应用程序的性能表现。您可以使用该工具的基础功能来确定应用的帧率是否符合虚拟现实检查要求。该工具还提供了高级追踪功能,能让开发者更精确地定位和解决应用的性能问题。
在设置选项卡中,选择“启用持续叠加”,以允许性能图表显示在您正在测试的应用之上。
在快速设置启用统计数据下,有三种追踪预设选项:无、基础以及高级。在进行指标追踪时,请避免启用高级功能,而应使用基础功能。高级功能会额增加的性能开销,并可能误导最终的性能结果。该功能可用于识别 GPU 瓶颈。在根据虚拟现实检查要求检查相关性能时,不要使用高级功能。
关键指标包括:
- FPS - 每秒帧数
- 应用 T - 应用 GPU 时间
“应用 T”指标反映了应用处理图形工作以生成帧所需的平均时间戳间隔。
OVR 指标工具可以输出 CSV 文件格式的数据。如果您想保存数据,请在工具中启用将所有收集的指标都记录到 CSV 文件的切换开关,并在完成游戏测试后,将文件传输到您的电脑上。
您还可以将数据一次性记录在多个 CSV 文件中。例如,如果您一次启动了三个游戏,那么在将 Quest 连接到电脑时,您将看到启动的每个游戏对应的三个独立 CSV 文件。如下图所示,您可以使用 Excel 绘制“平均帧率”与“时间戳”之间的散点图。
X 轴是以毫秒为单位的时间戳(将该数字除以 1000 可转换为秒)。上方示例显示了一个略超 10 分钟的会话。每个点代表从上一个时间戳到目标时间戳的平均帧率。
如果应用仍在开发中,建议在刚安装完应用后,先运行一个关卡,再对该部分内容进行性能评估。首次运行应用时,着色器会进行一次编译。因此,这可能会增加一次性开销,可能会造成结果偏差。一旦编译完成,着色器将保存在您的设备上,直到您重新安装应用为止。简而言之,您需要运行同一个关卡两次,其中第二次运行的结果最为准确。
尽量注意关卡初始加载时的情况,因为这通常会在 CSV 文件中显示为帧率较低。
同样,工程师实际上可将工具设置为将自定义开发者数据输出到 CSV 文件中,以标记关键场景切换效果。之后,开发者就能精确追踪与所需事件相关的性能了。更多信息请参阅
使用 OVR 指标工具监控性能的“附加 CSV 调试字符串”。
“应用必须以允许的刷新率运行,并保持至少 60 fps 的渲染率:”
- 应用必须保持至少 60 fps 的渲染率。
- 互动应用程序使用的刷新率至少为 72 Hz、80 Hz、90 Hz、96 Hz、100 Hz 或 120 Hz。(并非所有设备都支持 96 Hz、100 Hz 和 120 Hz)
- Quest 和 Quest 2 上的媒体应用程序可以使用 60 Hz 的刷新率。
应用程序的帧率不应长时间低于显示屏要求的刷新率。异常情况包括出现黑屏或者各种加载场景。”
对于在 Quest 上运行的应用(要求的刷新率为 72 Hz),在正常游戏过程中,性能偶尔出现几秒钟的小幅(> 65 fps)下降然后又很快恢复这种情况是可以接受的。这种情况不应呈周期性/重复性。
屏幕叠加结果与用户实时看到屏幕之间存在大约一秒的延迟。因此,当您在图表上看到用红色表示的性能下降情况时,您应该关注的是前一秒屏幕上的情况,而不是下降发生时的情况。
- 性能通常会在出现黑屏或加载屏幕时下降。游戏在退出过渡屏幕时,可能仍会在图表上显示为红色,但请注意在工具提示可能存在合规问题前会有一秒的延迟。
时间采用以微秒为单位的整数值进行报告,因此如果您看到 6000,则意味着在 6 毫秒内完成工作。在每秒 72 帧(1000/72)的帧率下,一帧需要 13.8 毫秒。如果发现应用 GPU 时间超过 13800,那么您就知道帧中的某部分在图形处理(可能还有 CPU 处理)方面遭遇瓶颈。如果应用 GPU 时间指标低于 13.8 毫秒(低于预算),而帧率仍低于 72 fps,那么您就知道存在 CPU 瓶颈。在某些情况下,记录瓶颈出现的位置可以大有帮助。
简而言之:
- 如果应用 T > 13800 且 FPS < 72,则系统遇到了 GPU 占用率 100% 的瓶颈(CPU 也可能超出预算,但被 GPU 掩盖住了)
- 如果应用 T < 13800 且 FPS < 72,则存在 CPU 占用率 100% 的瓶颈。