Android GPU 检查器快速入门

本主题介绍了如何执行 系统性能分析帧性能分析 使用 Android GPU 检查器 (AGI) 测试 Android 应用。

本快速入门指南面向熟悉图形的开发者 Android 开发。

计算机要求

运行 AGI 的计算机必须满足以下要求:

下载并安装 AGI

下载并安装适用于您的操作系统的 AGI。

Android 应用要求

本部分介绍了 Android 应用需要满足的要求, 分析:

  • 您的 Android 应用必须可调试;该 可调试属性 必须设为 true。此属性 通过图形驱动程序启用适当的插桩。适用于 Vulkan 使用此属性,AGI 在 应用启动。

    <application [...] android:debuggable="true">
    

如果您的应用以原生方式使用 Vulkan,AGI 还需要满足以下要求:

  • 您的应用必须具有 Vulkan 验证层 。如果未启用,您可以运行以下命令来强制 与 AGI APK 中包含的验证层一起运行的应用 (com.google.android.gapid.<abi>):

    app_package=<YOUR APP PACKAGE NAME HERE>
    abi=arm64v8a # Possible values: arm64v8a, armeabi-v7a, x86
    
    adb shell settings put global enable_gpu_debug_layers 1
    adb shell settings put global gpu_debug_app ${app_package}
    adb shell settings put global gpu_debug_layer_app com.google.android.gapid.${abi}
    adb shell settings put global gpu_debug_layers VK_LAYER_KHRONOS_validation
    

    在完成分析后,您可以使用 以下命令:

    adb shell settings delete global enable_gpu_debug_layers
    adb shell settings delete global gpu_debug_app
    adb shell settings delete global gpu_debug_layers
    adb shell settings delete global gpu_debug_layer_app
    
  • 应用在使用 Vulkan 验证层 。在进行性能分析之前,修正所有 Vulkan 验证错误。

  • 如果您使用的是测试版 GPU 驱动程序,请在 <application> 标记的情况下,对您的应用进行初始化:

    <meta-data
              android:name="com.android.graphics.developerdriver.enable"
              android:value="true" />
    

Android 设备要求

AGI 具有以下 Android 设备要求:

设备验证

AGI 需要兼容的 GPU 驱动程序。为了确保它提供有效的性能分析 AGI 会在您首次连接新设备时运行验证检查, 大约需要十秒钟通过检查后,您就可以使用该设备 来分析 Android 应用。

验证过程中请勿打扰设备。这可能会导致 验证失败。如果设备验证失败,但设置正确, 您可以通过重新选择设备来重新尝试验证。

在设备上只需执行一次验证即可,并将结果缓存起来以供日后使用 使用 AGI。不过,如果设备设置发生变化,AGI 将再次运行验证。 例如 GPU 驱动程序或 Android 版本已更新。

如果设备被列为受支持的设备,您可以 预计 AGI 能通过验证。如果设备未列出,则表明其 GPU 驱动程序 很可能与 AGI 不兼容。

如果您的设备受支持,但验证失败

确保您满足所有 Android 要求并且 计算机要求,以及 表明设备已通过 USB 线正确连接到计算机。

如果满足所有要求 在我们的 GitHub 中提交问题 来描述行为

如果您的设备不受支持

我们正在与 OEM 合作伙伴合作,增加对更多设备的支持。您可以 提交问题,请访问我们的 GitHub 代码库,请求支持设备。

捕获性能分析数据

以下部分介绍了如何捕获性能剖析数据,以及如何打开 生成的跟踪文件,以便您分析结果。

配置 Android 设置

在开始分析之前,您必须配置这些 Android 应用和设备 设置,用于指定要分析的应用和设备。

  1. 使用 USB 线将 Android 设备连接到计算机。

  2. 在计算机上启动 AGI。

    首次启动 AGI 时,系统会显示 Welcome 屏幕, 提示您提供 adb 可执行文件的路径。AGI 会将这些设置保存到 将 .agic 文件放在 HOME 文件夹中。如果您已经执行了这项操作 可以跳过此步骤

    <ph type="x-smartling-placeholder">
    </ph> 欢迎屏幕
    图 1:欢迎屏幕。
  3. adb 路径字段中输入 adb 可执行文件的路径。通过 此字段后面的复选框是可选的。

  4. 点击 Get Started 以显示启动屏幕。

    <ph type="x-smartling-placeholder">
    </ph> AGI 启动屏幕
    图 2:Android GPU 检查器主启动屏幕。
  5. 在启动屏幕中,点击 Capture a new trace。系统会显示 Capture A New Trace 对话框中显示它。或者,您也可以点击 Capture System Profile trace 按钮。

    <ph type="x-smartling-placeholder">
    </ph> “Capture A New Trace”对话框
    图 3:Capture A New Trace 对话框。
  6. 设备和类型部分,选择您要更改的 Android 设备 个人资料。如果设备列表中未显示该应用,请点击重新加载 箭头可刷新列表。

  7. 应用部分,选择要分析的应用。如果 软件包中只有一个活动,您可以选择软件包 而不是 activity。

    AGI 包含一个示例 Vulkan 应用。要使用示例应用而不是您自己的应用,请执行以下操作: 请按以下步骤操作:

    1. 点击 Application 字段旁边的 ... 按钮。

      这会显示 Select an Application to Trace 对话框,其中 ,用于显示所选设备上可跟踪应用的列表。

    2. 过滤条件文本框中,输入 gapid 以仅显示应用 软件包名称包含 gapid

    3. 展开软件包并选择 com.google.android.gapid.VkSampleActivity,然后点击 OK

      此时您会返回到 Capture A New Trace 对话框,其中 应用字段。

  8. Application(应用)部分,将其他字段留空。

  9. 点击确定

现在,您可以使用 AGI 对系统和帧进行性能分析了。

对系统进行性能分析

如需分析系统性能,请执行以下步骤:

  1. 在 AGI 启动屏幕中,点击 Capture a new trace 以显示 Capture System Profile 对话框。

  2. 类型列表中,选择系统配置文件

  3. 开始时间和时长部分中,将开始时间设置为手动。 并将时长设为 2

  4. Trace Options 部分中,点击 Configure。系统会显示一个列表 各种性能分析选项

    <ph type="x-smartling-placeholder">
    </ph> “Capture Config”对话框
    图 4 Capture System Profile 对话框。
  5. 选择要捕获的分析数据。

  6. GPU 部分中,点击选择

    此时系统会显示可供选择的计数器列表。

    <ph type="x-smartling-placeholder">
    </ph> 计数器配置
    图 5 :选择计数器。
  7. 点击默认以选择一组默认计数器,然后点击确定。 返回性能分析选项

  8. 点击 OK 以返回到 Capture System Profile 主对话框。

  9. Output(输出)部分,选择 Output Directory(输出目录)来存储 分析期间生成的跟踪文件。File Name(文件名)字段 但您也可以进行修改

  10. 点击 OK。这将在 Android 设备上启动所选应用,并且 系统会显示带有开始按钮的弹出式窗口。

  11. 点击 Start 按钮以开始捕获性能剖析数据,然后等待 等待该过程完成

  12. 点击 Open Trace。显示的初始视图为 类似于 systrace

    <ph type="x-smartling-placeholder">
    </ph> 系统配置文件轨迹
    图 6 :System Profiler 界面。

    除了 Systrace 中提供的数据外,AGI 还显示 GPU 性能信息如需详细了解如何查看系统性能分析结果 数据,请参阅查看 AGI 系统配置文件

如需了解其他设置,请参阅 系统性能分析选项

分析帧性能

如需对应用中的单个帧进行性能分析,请执行以下步骤:

  1. 在 AGI 启动屏幕中,点击 Capture a new trace 以显示 Capture A New Trace 对话框。或者,您也可以点击 Capture Frame Profile trace 按钮。

  2. Type(类型)列表中,选择 VulkanOpenGL on ANGLE,具体取决于 您的应用使用的图形 API。确保您选择了正确的 否则 AGI 将无法捕获任何图形命令。

  3. 开始时间和时长部分,将开始时间设置为手动。如果 您点击 Capture Frame Profile trace 按钮后,此步骤已经 已完成。

  4. Output(输出)部分,选择 Output Directory(输出目录)来存储 跟踪文件。File Name(文件名)字段应自动填充,但您也可以 也可以进行修改

  5. 可选:某些应用会派生出一个单独的进程,用来处理所有图形 处理。如需捕获该进程,请指定其名称。

  6. 点击 OK。这会在 Android 设备上启动您的应用,并显示 弹出式窗口,其中包含开始按钮。

  7. 点击 Start 按钮并等待几秒钟,直到完成性能剖析 。

  8. 点击 Open Trace 以查看性能分析数据。如需详细了解 窗格,请参阅 帧性能分析概览

如需了解其他设置,请参阅 帧性能分析选项