帧分析概述

使用 Android GPU 检查器 (AGI),您可以分析 Android 应用的特定帧,并使用它对应用的 GPU 使用情况进行深入分析。与仅使用 系统分析 相比,此分析数据可以帮助您更深入地了解应用的 GPU 使用情况。

使用 AGI 进行帧分析首先要收集跟踪和其他性能数据,然后对其进行测量并显示以进行分析。

可用的帧分析数据包括以下内容

  • Vulkan API 调用

  • 帧缓冲区内容

  • 渲染的网格绘制调用

  • 命令的 RAM 和 GPU 内存值

  • 渲染事件的 GPU 性能数据

  • 管道数据

  • 渲染状态数据

  • 纹理和着色器资源

入门

AGI 快速入门 中介绍了如何设置 AGI、捕获帧分析数据,然后打开生成的跟踪文件。下一节将详细介绍配置选项。

分析选项

本节介绍捕获帧分析时可用的主要选项。

图形 API 选项

图形 API 选项指示应用使用的图形 API。这些选项在 **捕获系统分析** 对话框的 **类型** 列表中可用。以下是可用的选项

  • **Vulkan**: 适用于直接使用 Vulkan API 的应用。
  • **ANGLE 上的 OpenGL**: 适用于使用 OpenGL ES 的应用。

AGI 直接跟踪 Vulkan 命令。但是,如果您的应用使用 OpenGL ES,AGI 会使用自定义的 ANGLE 构建将命令转换为 Vulkan 命令,然后在跟踪应用之前进行转换。

其他参数

**其他参数** 字段用于将其他标志传递给 adb am start-activity 命令,该命令在分析期间发送到您的设备以启动您的应用。有关更多信息,请参阅 adb 命令

开始和持续时间选项

在 **开始和持续时间** 部分,您可以指定 AGI 如何捕获要分析的帧。以下选项可用

  • **开始**: AGI 从应用启动开始捕获所有命令,直到第一个渲染帧结束。

  • **手动**: 在跟踪对话框中按一个按钮以手动捕获帧。

  • **时间**: 经过指定秒数后,AGI 会自动捕获帧。

  • **帧**: AGI 会自动捕获指定的帧。

跟踪选项

**跟踪选项** 部分包含用于配置跟踪标志的设置。以下是可用的设置

  • **禁用缓冲**: 在捕获数据时禁用设备上的内存缓冲。此选项在调试应用崩溃时很有用,因为它可以确保所有跟踪数据都序列化到崩溃为止。但是,这会略微增加 AGI 在分析过程中的开销。

  • **包含不支持的扩展**: 包含设备上 AGI 不支持的扩展。如果您的应用使用 AGI 不支持的扩展,您可能会遇到不良行为,包括细微的错误或崩溃,尤其是在重播跟踪时。浏览 支持的扩展列表

  • **清除包数据**: 使用 pm clear adb 命令 请求设备在启动之前清除应用的用户数据。

输出设置

**输出** 部分包含跟踪文件存储的设置,例如

  • 指定存储跟踪文件的目录。

  • 修改为跟踪文件自动生成的名称。

查看结果

打开包含帧分析数据的跟踪文件时,AGI 会在帧分析器 UI 中显示数据以进行分析。

帧分析器是 AGI 的一个组件,用于管理分析单个帧的 UI 和检测。帧分析器在以下 UI 元素中显示数据

分析结果

以下主题介绍了如何使用 AGI 分析帧分析数据